CIA style irc commit bot in common lisp
Common Lisp
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This is the engine for Notify, in case you want to help out or make your own.


cl-cia is written for SBCL and uses ASDF to install dependancies, all of which are available in quicklisp. Simply check out to ~/quicklisp/local-projects/cl-cia and do "(ql:quickload :cl-cia)".


XML-RPC requests are handle using #'xmlrpc with the passed argument being the string holding the XML. The format of the package is the same as's. The modified UCW at has a patch to handle xml requests, .

Mail processing

The maildir.lisp file has some fairly crude mail parsing capabilities, including custom Google Code-In handling, xml email, and sourceforge commit email. Mail parsing frequently breaks due to unicode packing and formatting twitchiness. Try to avoid it.

IRC bot

This is all contained in irc.lisp and is very basic. A simple command handler is added in to report statistics to channel.


  • add xmlrpc scripts
  • add help for integrating with github
  • send email on new notice? should it be a selectable flag?
  • fix unicode parsing in multipart emails (have a test file, file->strings fails)
  • remove the unhandled privmsg event stuff
  • kill the (contents, props changed) coming through in file listings
  • make bot reconnect on disconnect
  • investigate sms messaging?
  • investigate ios push type thing?
  • add public/private markings
  • fix delete last notification in message queue issue
  • allow change of email address, maybe some profile info?
  • add create and completed times to todo items?
  • fix utf8 parse issue in email
  • add support for xmlrpc email
  • add mail send capability
  • fix mail spool for fbsd
  • 12:13 @brlcad ``Erik: how about truncating on a word boundary? and something to indicate it was truncated...
  • fix irc add todo message logic