--- author: ~cmccabe published: true title: irc bots on tilde.chat description: information about irc bots on tilde.chat category: - main --- you might have seen some bots lurking about in chat. this page is intended to be a common place for documentation. bots should be well-behaved and efficient with system resources. if you see a bot that is not, please remind the botmaster about this and/or notify an admin. naughty bots can make the system less enjoyable for everyone, and we all have to work together to police them. ## rules and etiquette for tilde.chat irc bots please set usermode +B on your bot on connect to identify it as a bot. this is also documented in [rfc-2](https://rfc.tildeverse.org/rfcs/2#usermode--b). your bot must respond to !botlist with the following information: - your system username (as creator/botmaster) - so we can contact you if the bot misbehaves - one line description of the bot's functionality - list of the bots public commands be conservative about automatically re-connecting to the server or channel. if your bot's code is not yet stable, keep it in the #bots channel and do testing there. don't join #chaos or unless you want your bot to be spammed to hell and back. all bots should also adhere to the following RFC specification: [RFC 2: Standardising IRC Bot Behavior](https://rfc.tildeverse.org/rfcs/2). ## tilde.team bot starter kit [khuxkm](https://khuxkm.tilde.team) is hard at work developing a starter kit framework in python that you can use to build your own irc bot. find the [source here](https://tildegit.org/team/teambot). it's installed globally on ~team, so get coding! ## add your bot to the list below follow the example of sedbot when you add your bot in a PR to the wiki * sedbot - botmaster: [~ben](https://ben.tilde.team) - short description: sent a typo in chat? fix it up with a sed expression and sedbot will try to correct it - list of functions: + s/needle/replace/flags + most regex character classes match here + flags include `g` and `i` - [source](https://tildegit.org/ben/sedbot) * tildebot - botmaster: [~ben](https://ben.tilde.team) - short description: an instance of BitBot for the tildeverse. - list of functions: + `sed`-like corrections like `sedbot` + weather/time per user (`,weather`/`,w`/`,time`) + user pronouns: `,pronouns` + wolfram alpha integration: `,wa` + translation services: `,translate le pain est sale` + some per-user configuration available via `,config` + git hooks (including gitea) - notifications on push/etc + write your own functionality with a plugin! + tilderadio notifications and other tilderadio functionality + ducc frens (when a duck appears: `,bef`/`,trap`, see stats with `,friends`/`,enemies`/`,duckstats`) - [BitBot source](https://github.com/jesopo/bitbot), [tildebot-specific modules repo](https://tildegit.org/ben/bitbot-modules) * tracer - botmaster: [~ben](https://ben.tilde.team) - short description: generate tracery output from grammars in you ~/.tracery (on ~team) - forked and ported from [selfsame/tracer](https://notabug.org/selfsame/tracer) for py3 support - list of functions: + !!list + !! + !!fuse + | at the end of commands will echo the output in a new message eg: !!drink | !toot - [source](https://tildegit.org/ben/tracer) * tooter - botmaster: [~ben](https://ben.tilde.team) - short description: toots from @tildeverse@tilde.zone (@tildeteam@tilde.zone in #team) - list of functions: + !toot - [source](https://tildegit.org/ben/tooter) * Babili - botmaster: [~aewens](https://aewens.tilde.team) - short description: A data aggregating bot for the IRC server, can as an API for other bots for handling historical data from the network - list of functions: + View aggregated data at https://babili.xyz - [source](https://tildegit.org/babili) * circles - botmaster: [~lickthecheese](https://lickthecheese.fuckup.club) - short description: a nice bot to solve geometry problems - list of functions: + do ?help to list commands - [source](https://tildegit.org/lickthecheese/circles) * [badger](./badger) - botmaster: [~khuxkm](https://khuxkm.tilde.team) - short description: the Twitch Plays Pokémon badge system, ported to tildeverse IRC? - list of functions: - `+listbadges` - List the badges in your possession. - `+transmute [badge...]` - Transmute 3 or more badges into one, hopefully rarer badge. - just be active in #meta and you should get badges. you'll get a message when you get your first! - [source](https://tildegit.org/khuxkm/badger) * pink_dragon - botmaster: [~absalom](https://tildegit.org/baruchel) - short description: idle hack'n slash game on the `#legend` channel - list of functions: see the rules at [Legend of the Pink Dragon](https://pink-dragon.surge.sh) - [source](https://gitlab.com/baruchel/pink-dragon) * k - botmaster: [~kiedtl](https://kiedtl.tilde.team) - short description: a small bot with a bunch of miscellaneous functions - list of functions: + `:dc`: `/bin/dc` expression evaluator. + `:fortune`: print a random fortune. + `:usrstats`: print statistics about users. + `:chanstats`: print statistics about channels. + `:owo`, `:pig`, `:rot13`, `:rev13`: random text manipulation functions. + and many more in the making! - [source](https://github.com/kiedtl/ircbot)