http://www.mauvesoft.co.uk/plum/
Plum is an automation host for the network chat protocol IRC. Written in Java, Plum takes advantage of Java's dynamic class loading to insert functionality into the client on-the-fly. Coupled with the selection of available modules, Plum is a quick way to provide channel services for your channel. Plum grew out of a desire to combine several existing simple channel service bots in a way that was easily extensible by all channel participants (assuming they can develop in Java, which most could) Key Features of Plum:
* On-the-fly pluggable/unpluggable modules. * in-IRC authentication and control * Several modules available: o Help system o Channel voting o News Viewer o Suggestions box o IRC Rock-Paper-Scissors adjudication o Link "Vernie"ing (retrieves and parses URLs for relevant information, such as title and content length) * Portable * Responds to most CTCP requests * Reconnects quickly * Camps its name (will rename as soon as desired name is available) * Well documented module API