/maubot

A plugin-based Matrix bot system.

Primary LanguagePythonGNU Affero General Public License v3.0AGPL-3.0

maubot

Languages License Release GitLab CI Code style Imports

A plugin-based Matrix bot system written in Python.

Documentation

All setup and usage instructions are located on docs.mau.fi. Some quick links:

Discussion

Matrix room: #maubot:maunium.net

Plugins

Open a pull request or join the Matrix room linked above to get your plugin listed here.

The plugin wishlist lives at https://github.com/maubot/plugin-wishlist/issues.

Official plugins

  • sed - A bot to do sed-like replacements.
  • factorial - A bot to calculate unexpected factorials.
  • media - A bot that replies with the MXC URI of images you send it.
  • dice - A combined dice rolling and calculator bot.
  • karma - A user karma tracker bot.
  • xkcd - A bot to view xkcd comics.
  • echo - A bot that echoes pings and other stuff.
  • rss - A bot that posts RSS feed updates to Matrix.
  • reminder - A bot to remind you about things.
  • translate - A bot to translate words.
  • reactbot - A bot that responds to messages that match predefined rules.
  • exec - A bot that executes code.
  • commitstrip - A bot to view CommitStrips.
  • supportportal - A bot to manage customer support on Matrix.
  • gitlab - A GitLab client and webhook receiver.
  • github - A GitHub client and webhook receiver.
  • tex - A bot that renders LaTeX.
  • altalias - A bot that lets users publish alternate aliases in rooms.
  • satwcomic - A bot to view SatWComics.
  • songwhip - A bot to post Songwhip links.
  • manhole - A plugin that lets you access a Python shell inside maubot.

3rd party plugins

  • subreddit linkifier - A bot that condescendingly corrects a user when they enter an r/subreddit without providing a link to that subreddit
  • giphy - A bot that generates a gif (from giphy) given search terms
  • trump - A bot that generates a Trump tweet with the given content
  • poll - A bot that will create a simple poll for users in a room
  • urban - A bot that fetches definitions from Urban Dictionary.
  • twilio - Maubot-based SMS bridge
  • tmdb - A bot that posts information about movies fetched from TheMovieDB.org.
  • invite - A bot to generate invitation tokens from matrix-registration
  • wolframalpha - A bot that allows requesting information from WolframAlpha.
  • pingcheck - A bot to ping the echo bot and send rtt to Icinga passive check
  • ticker - A bot to return financial data about a stock or cryptocurrency.
  • weather - A bot to get the weather from wttr.in and return a single line of text for the location specified
  • youtube previewer - A bot that responds to a YouTube link with the video title and thumbnail.
  • reddit previewer - A bot that responds to a link of a reddit post with the sub name and title. If available, uploads the image or video.
  • pocket - A bot integrating with Pocket to fetch articles and archive them.
  • alternatingcaps - A bot repeating last message using aLtErNaTiNg cApS.
  • metric - A bot that will reply to a message that contains imperial units and replace them with metric units.
  • urlpreview - A bot that responds to links with a link preview embed, using Matrix API to fetch meta tags.
  • autoreply - A bot that sends automated replies when you're away, and shows you a summary of missed messages when you come back.
  • alertbot - A bot that recives monitoring alerts via alertmanager and forwards them to a matrix room.
  • hasswebhookbot - A bot receiving webhooks from Home Assistant.
  • ovgumensabot - A bot that automatically sends meals from OvGU canteen every day.
  • token - A maubot to create and manage your synapse user registration tokens.
  • redactbot - A bot that immediately redacts any posted file (except for whitelisted types).
  • join - A plugin that restricts who can convince your bot to join new rooms to certain users.
  • create-room - A plugin that creates new rooms and automatically sets them to be part of a private Matrix Space.
  • welcome - A plugin that greets new people with a configurable message when they join a room.
  • activity tracker - A plugin that minimally tracks user activity within a space. Useful for kicking inactive users from a private community.
  • random subreddit post - A plugin that returns a random post from a given subreddit.

† Uses a synchronous library which can block the whole maubot process (e.g. requests instead of aiohttp)

Deprecated/unmaintained plugins

  • jesaribot - A simple bot that replies with an image when you say "jesari".
    • Superseded by reactbot
  • gitea - A Gitea client and webhook receiver.