Joi Ito's #jibot
Ruby Python
Latest commit 85e5256 Sep 14, 2009 @imajes less noisy, more use?


JIBOT: A Ruby IRC Bot For #joiito

Version 2.0 (Today, 2008)

Authors James Cox (…
Copyright Copyright © 2008 + The #joiito IRC Channel + James Cox
License Distributed under the same terms as Ruby. The system heavily relies on Autumn, an irc framework:
Portions of this code are copyright ©2004 David Heinemeier Hansson; please see libs/inheritable_attributes.rb for more information.

About Autumn

Autumn is a full-featured framework on top of which IRC bots (called “leaves”)
can be quickly and easily built. It features a very Ruby-like approach to
bot-writing, a complete framework for loading and daemonizing your bots,
multiple environment contexts, a database-backed model, and painless logging


Autumn requires RubyGems and the Daemons and Facets*
gems. Install RubyGems then run sudo gem install daemons facets in a command
line in order to run Autumn.

Jibot requires the ruby-sqlite3: sudo port install rb-sqlite3 the sqlite gem:
sudo gem install -v 0.9.2 do_sqlite3 and the Datamapper
gem: sudo gem install -v 0.9.2 install dm-core dm-ar-finders .

One person’s install notes on OS/X Leopard:

On a fairly stock leopard system it was also necessary to add a few steps… this which in which ssh-keygen creates the .ssl folder and public key to provide the github website.

Then to make logging in easier by adding the login to the keychain:
$ /usr/bin/ssh-add -K

To install git follow

Or just use the precompiled one from

Configured git:
Macintosh:~ myhomedir$ git config —global ‘Firstname Lastname’
Macintosh:~ myhomedir$ git config —global ‘’

Created a spot and got a clone:
Macintosh:~ myhomedir$ cd src
Macintosh:src myhomedir$ git clone git://

RubyGems was already installed on Leopard so I ran the sudo gem install daemons facets above.
Before I could run the sudo port install rb-sqlite3 however it was necessary to install macports

Then continue by running Macintosh:~ myhomedir$ sudo /opt/local/bin/port install rb-sqlite3
and it took awhile to come back… updated a lot of packages.

Extlib was missing so this was necessary: Macintosh:~ myhomedir$ sudo gem install -v 0.9.2 extlib
Successfully installed extlib-0.9.2
1 gem installed

Then following the advice in README.autumn – had to modify jibot/config/global.yml to point to testing season instead of production.

Modify jibot/config/seasons/testing/stems.yml to point to a different nick and channel to avoid stepping on the other jibots.

Had to manually create a log file in the jibot directory before rake would work.

Macintosh:jibot myhomedir$ mkdir log
Macintosh:jibot myhomedir$ rake db:migrate
(in /Users/myhomedir/src/jibot)
rake aborted!
Usage: DB=[Database config name] rake db:migrate
(See full trace by running task with —trace)
Macintosh:jibot myhomedir$ script/server
Loading Autumn 3.0 (7-4-08)
Freenode (Stem): Connecting to…

Hacking JIBOT

You should peruse README.autumn first, to get a feel for how it’s structured.
Then, feel free to hack on a leaf (or create your own) to add or augment bot