         msg.send "#{msg.envelope.user}: you do not have #{rundeck.adminRole} role."
 
   # hubot rundeck run <name>
-  robot.respond /rundeck run ([\w -_]+)/i, (msg) ->
+  robot.respond /(?:rd|rundeck) run ([\w -_]+)/i, (msg) ->
     name = msg.match[1]
 
     if robot.auth.hasRole(msg.envelope.user, rundeck.adminRole)


  # takes all but last word as the name of our job
  # hubot rundeck ad-hoc <name> <nodename>
  robot.respond /rundeck (?:ad[ -]?hoc) ([\w -_]+) ([\w-]+)/i, (msg) ->
    name = msg.match[1]
    params = { argString: "-nodename #{msg.match[2].trim().toLowerCase()}" }
    query = "?#{querystring.stringify(params)}"

  rundeck = new Rundeck(robot)

  # hubot rundeck list
  robot.respond /(?:rd|rundeck) (?:list|jobs)$/i, (msg) ->
    if robot.auth.hasRole(msg.envelope.user, rundeck.adminRole)
      rundeck.jobs().list (jobs) ->
        if jobs.length > 0
