1 Components Bots
vvvomit edited this page 2026-10-29 17:47:13 +03:30
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

فارسی · Components · Home

Bots

Accounts on your server that do things: answer with AI, remind you, run a helpdesk, keep spammers out.

How to add any of these: Components.

The Bots tab

Their settings

Bots live on your base domain like bridges: @baibot:example.org, not …:matrix.example.org. Bot passwords are made up for you; ctrl+r on Settings shows them.

Getting a bot's access token, which some ask for: make the account with Manage › Add a user (a) (after the first deploy), sign in as it in Element (a private browser window helps), copy the token from Settings › Help & About › Advanced › Access Token, then close the window without signing out: signing out ends the token. Draupnir is the exception; see below.

baibot (AI bot)

Chat with AI models (OpenAI, Anthropic, Groq, Mistral, a local Ollama and more) in any room: text, images, speech to text and back.

Bot: @baibot:example.org

Settings: a bot password, recovery passphrase and two encryption keys, all made up for you; keep them, the bot's encrypted data needs them.

Use: invite the bot to a room; it introduces itself. Send !bai help. Before it can answer, its administrator (your admin account) adds an agent: an AI provider with your API key for it. Send !bai agent and follow the bot; the agents guide lists the providers. Everyone on your server may use it by default. Doc · baibot docs

matrix-reminder-bot

Bot: @bot.matrix-reminder-bot:example.org

Settings: a bot password (made up for you) and your timezone, e.g. Asia/Tehran.

Use: start a chat with it, or invite it to a room, and send !remindme in 2 hours; call mum. !help reminders lists the rest, with repeating reminders and alarms. Doc

maubot

A home for plugin bots: dice, polls, RSS, translations, GitHub, karma and many more.

Settings:

  • Bot password: for its account @bot.maubot:example.org, made up for you.
  • Management UI admins: who can sign in to the web interface, as - username: password. Change CHANGE_ME to a real password.

Use: open https://matrix.example.org/_matrix/maubot/ and sign in with that username and password. Then:

  1. Clients, +: the Matrix account a bot speaks as. @bot.maubot with its access token (see above) is ready to use.
  2. Plugins, +: upload a plugin's .mbp file.
  3. Instances, +: put a client and a plugin together. That's the bot. Doc · maubot docs

Honoroit (helpdesk)

People message the bot; each conversation becomes a thread in your team's room, and your team's answers go back to them.

Settings:

  • Bot password: made up for you.
  • Helpdesk room ID: make the team's room first, then copy its ID from Room settings › Advanced (it looks like !abc123:example.org).

Use: invite @honoroit:example.org to that room. Anyone who messages the bot opens a thread there. !ho help lists the commands. Doc

Draupnir

A moderation bot: bans spammers across all your rooms at once, follows community ban lists, and has protections such as locking a room when a flood of accounts joins.

It needs an account and an access token, so add it after the first deploy:

  1. Manage › Add a user (a): bot.draupnir, not an admin.

  2. Get its access token with curl, not from Element (Draupnir rejects a token that has touched encryption). On your computer:

    curl -X POST https://matrix.example.org/_matrix/client/v3/login \
      -d '{"type":"m.login.password","identifier":{"type":"m.id.user","user":"bot.draupnir"},"password":"THE_PASSWORD"}'
    

    Copy access_token from the answer.

  3. Tick Draupnir and fill in Initial manager MXID (you, @admin:example.org) and Bot access token. Deploy.

Use: the bot creates a management room and invites you; you command it from there. For each room to protect: invite the bot, make it Administrator, and send !draupnir rooms add !ROOMID:example.org in the management room. Follow a community ban list with !draupnir watch #community-moderation-effort-bl:neko.dev; ban with !draupnir ban @spammer:example.com my-bans spam (after !draupnir list create my-bans my-bans-bl). !draupnir help has the rest. Doc · Draupnir docs

Draupnir for all (D4A)

Draupnir as a service: one installation gives a separate Draupnir to each community that asks. Alpha quality; for one community, plain Draupnir is simpler.

Settings: Initial manager MXID: you.

Use: the bot invites you to its admin room. Allow someone with /plain !admin allow @alice:example.org (or @*:example.org for all your users), then give them a bot with !admin provision @alice:example.org. Doc

Mjolnir

The older moderation bot Draupnir grew out of. Choose Draupnir for a new server.

Settings:

  • Bot access token: make bot.mjolnir with Add a user and get its token as above.
  • Management room ID: make a private room, invite the bot, and copy the room's ID from Room settings › Advanced.

Use: in the management room, !mjolnir help. Make the bot Administrator in rooms it protects. Doc · Mjolnir quickstart

Meowlnir

A moderation bot from the mautrix developers that reads the same ban lists as Draupnir and Mjolnir, and lets your own list overrule a community one.

Settings: Bots: the example makes one bot, @meowlnir_bot, and its management room, and invites your admin account there; it can stay as it is.

Use: accept the invite. In the management room, !lists subscribe #community-moderation-effort-bl:neko.dev cme follows a ban list. To protect a room, invite the bot, give it power level 100, then send !rooms protect !ROOMID:example.org. Doc · Meowlnir docs

Buscarron

Posts what people send through a form on your website into a Matrix room.

DNS: buscarron.example.org.

Settings:

  • Bot password: made up for you.
  • Forms: one block per form. name is the form's address (https://buscarron.example.org/contact), room the ID of the room it posts to, redirect where the visitor goes afterwards.

Use: invite @bot.buscarron:example.org to the room, and point your form at it: <form method="POST" action="https://buscarron.example.org/contact">. It bans anyone who opens its home page or posts to a wrong form, to keep spam out; don't test it that way. Doc