Skip to content


Subversion checkout URL

You can clone with
Download ZIP
An IRC bot with a RESTful HTTP interface, built on Ruby and EventMachine.
Ruby HTML CSS Shell
Branch: master
Pull request Compare This branch is 426 commits ahead, 6 commits behind pda:master.

DecisionMaker: eliminate duplicates from choices.

`one or one or one or one or two` now equivalent to `one or two`.
latest commit bf933a60c9
@pda pda authored
Failed to load latest commit information.
babushka-deps Add development deps
bin Provides a daemon for running irc_machine (irc_machined)
lib DecisionMaker: eliminate duplicates from choices.
script Use bash in CI because lolrbenv
spec Revert "Revert "Revert "Increase scope of thought/word police."""
Gemfile Integrate with
Gemfile.lock Integrate with Add contributor, simplify example
Rakefile Create spec framework
irc_machine.gemspec Remove UTF8 that makes bundler so angry


99designs helpful IRC bot, built on top of IRC Machine, in turn on Ruby and EventMachine.


Plugins are objects which respond to #receive_line, and would will receive a reference to the IrcMachine::Session when instantiated. It should use that reference to send IRC commands.

Plugins may also implement the RESTful HTTP API by creating routes. The pattern for this would look something like:

def initialize(*args)
  route(:get, "/endpoint", :endpoint)

def endpoint(request, match)


You should copy example.json to irc_machine.json, or set IRC_MACHINE_CONF to the name of the config file.

Plugins are enabled by their class name specified in the plugins array, everything under irc_machine/plugin will be loaded at boot time, however.

Default Plugins

We ship agent99 with a small collection of useful plugins for integrating with the services with use- Github, JuiCI, Jenkins and the like.

We also ship a collection of totally unuseful plugins, for generating memes, using Google's images search or yelling Yarr


irc_machine originally by:


agent99 is: © 99designs, 2012, MIT license

All source code from irc_machine is: © Paul Annesley, 2011, MIT license

Something went wrong with that request. Please try again.