#trilema bot spec

Wednesday, 14 September, Year 8 d.Tr. | Author: Mircea Popescu

So you want to add a bot to #trilema ? Good for you - bots are welcome. You don't even have to ask for permission, with the exception that if you want the bot to also speak in channel then it must :

  1. Respond to a two character control code - see the bot directory for the next available one (scroll down). It may not answer to anything else, with the sole exception that if your bot is connected to a web-based log of the channel and someone (humans or deedbot, but not other logger bots) posts a link to a certain line in that log then it may read out the line corresponding to the link.
  2. Not speak of its own accord, but only in response to in-channel commands ; and generally limit its responses to one line at a time.
  3. Answer to "help" sent in PM with a list of supported commands in plain text or html format, either directly or via a link to webpage.
  4. Answer to "help json" sent in PM with a list of supported commands in json format, either directly or via a link to webpage.
  5. Answer to "help sexpr" sent in PM with a list of supported commands in sexpr format, either directly or via a link to webpage.
  6. Not join/part excessively. As a general rule please code your bot so it joins no more than once a day. Netsplits do not count towards this.
  7. Not send unsolicited PMs to the people in the channel. Opt-in services such as deedbot's RSS reader are fine - but make sure they're opt-in and that there's a way to opt out.

The bot should implement self voicing via authenticating itself with deedbot. You may receive a derrogation from this rule if you need it, with the understanding that you will eventually implement the proper authentication mechanism.

Bots are also encouraged to submit all links they encounter in the channel to the web archival service of your choice.

In general failure to comply with this spec will result in a warning if/when someone notices. If your bot is enough of a pain in the ass it will be devoiced until compliant. That's about it, have fun!

Category: Bitcoin
Comments feed : RSS 2.0. Leave your own comment below, or send a trackback.

7 Responses

  1. Framedragger`s avatar
    Wednesday, 14 September 2016

    > Answer to "help" sent in PM

    Presumably it'd be OK if it responded in PM with "CONTROLSEQUENCE help" sent to the channel, too? (*Not* just "help" in channel or "$help" in channel, note.)

  2. Mircea Popescu`s avatar
    Mircea Popescu 
    Wednesday, 14 September 2016

    Sure, no problem with that. However you have to consider the user seeking help may not be voiced (for example because that's what he's trying to achieve in the first place) - so it has to handle pms. Whether it handles in-channel or not is unspecified deliberately.

  3. Mircea Popescu`s avatar
    Mircea Popescu 
    Wednesday, 14 September 2016


  1. [...] the strengths and weaknesses of your preferred stack, as well as your other assumptions. See the spec ; and remember that this task has a strange mirror quality to it, in that the less of your own [...]

  2. [...] excludes socialism. [↩]As carried in the TMSR forum, or for that matter as transparent from the bot spec for instance. [↩]In the example given, wedge #1 ("but mp, in order to use item x you have to [...]

  3. [...] bot should be printed in paranthesis after their name. [↩]Including it in the response to !P help works for the purpose of satisfying this criteria. [↩]This system makes it impractical for [...]

  4. [...] In an ideal, purely platonic world, trilemabot represents a perfect cut of the points in the #trilema bot spec that are common to all #trilema bots, past, present and future. In practice, basing his or her bot [...]

Add your cents! »
    If this is your first comment, it will wait to be approved. This usually takes a few hours. Subsequent comments are not delayed.