Skip to content
Fetching contributors…
Cannot retrieve contributors at this time
204 lines (158 sloc) 6.59 KB


  • New route /hubot/help to display command help - tombell

  • Role script fix - ferlores

  • Store connect server - tombell


  • Extracted remaining classes into their own files - tombell

Note this is a breaking change for adapters. Adapters are going to want to use the following code snippet for requiring classes from hubot.

{Adapter,Robot} = require 'hubot'
  • Update the formatting of documentation comments at the top of scripts - technicalpickles

  • Update the parsing of the documentation comments - tombell


  • Fixed keep alive ping, requires HEROKU_URL - tombell and jimeh

  • Updated dependency versions - tombell and jimeh


  • Hubot now keeps himself alive due to Heroku's web processes shutting down when idle - tombell

  • Hubot's image search is now defaulted to safe search - kylev

  • Hubot now emits a 'connected' event when he connects to the chosen adapter - sbryant

  • Fix the not to respond to empty names - christierney

v2.1.3 - The Heat Stroke Release

  • Hubot now has a web interface and supports connect middleware, examples in - atmos / tombell

    module.exports = (robot) -> robot.router.get "/hubot/version", (req, res) -> res.end robot.version

  • Add a catchAll callback that handles responses that match nothing else - titanous / ejfinnerman

    module.exports = (robot) -> robot.catchAll (msg) -> router.get "/hubot/version", (req, res) ->


  • Update behaviour of finishing further execution of listeners
  • Scripts are now loaded in the following order
    • Scripts defined in ./hubot-scripts.json are loaded in order
    • Scripts are loaded alphabetically from /scripts


  • The hwhoops release, finish/done behavior is handled elsewhere


  • Introduce Response.finish() to indicate that a message should not be passed on to any other listeners
  • Scripts are evaluated in the following order

    • ./scripts is loaded alphabetically
    • The contents of ./hubot-scripts.json is loaded in order

      module.exports = (robot) -> robot.respond /\syo\s\?/i, (msg) -> msg.reply "Yo!" msg.finish()


  • Update topic and logger scoping fixups - Horace Ko
  • Don't exit the process if listening to a room is denied


  • Don't kill all username looks if some users don't have name attribute


  • All adapters have been removed except for shell and campfire
  • Better win32 compatability
  • Campfire reconnects on streaming errors on a per-room basis


  • Major adapter overhaul, they're now external - Tom Bell
  • Shell adapter now functions like a REPL - Tom Bell
  • Improved logging using log.js - Tom Bell
  • Search help commands - Gabriel Horner
  • Improvements to - Daniel Schauenberg


If you are not using the Campfire or Shell adapters please be aware before upgrading that adapters have been moved out of the code of hubot and you should install the hubot adapters from npm when people make them available. Until your adapter is available you may wish to remain on v1.1.11.





  • Fix a bug in robot.respond that allowed regexes to be constructed that could be triggered without prefixing with the robot's name - atmos
  • Fixup rarely triggered response stuff that uses an undefined variable




  • Fix the optparse npm install anomaly


  • Fix campfire adapter getting duplicate messages - atmos



If you're using the redis persistence you're going to need to enable '' in your hubot-scripts.json file. It was moved there and the brain now supports events allowing you to use any persistence backend you want.


  • Remove infinite loop script to keep things alive - atmos



Something went wrong with that request. Please try again.