Cici Matrix Bot is highly customizable Matrix chat bot that lets users interact with LLMs directly within a Matrix room.
Find a file
2026-06-30 01:09:50 +02:00
config restructure configs, separate matrix, llm api, llm model and message configs, add optional settings for llm model 2026-05-10 23:37:05 +02:00
src fix forcing final response after exhausting max tool use 2026-06-30 01:09:50 +02:00
bot.py fix an issue where for the bot to start listening to fresly joined rooms a restart would have to be issued 2026-06-20 23:28:27 +02:00
README.md update features 2026-06-19 01:18:34 +02:00
requirements.txt add ddgs to requirements 2026-05-19 00:42:06 +02:00

Cici Matrix Bot

Cici Matrix Bot is an AI chat interface bot for the Matrix chat platform that lets users interact with LLMs directly within a Matrix room.

Features

  • Supports all LLM providers with OpenAI compatible API endpoints (e.g.: Google Gemini, Alibaba Cloud, OpenRouter, Ollama, ChatGPT, etc.)
  • Real-time chat with the LLM of your choice in unencrypted Matrix rooms
  • Prompt settings to customize LLM personality and behavior
  • Optional granular control over model settings: temperature, max_tokens, top_p, reasoning_effort, etc.
  • Supports image input in case a vision capable model is used. Image output is not supported.
  • Fetch message context from the reply chain

Prerequisites

  • Python 3.10+
  • Matrix user account dedicated for the bot
  • API key provided by your choice of LLM provider

Installation

  1. Clone the repository https://git.blackruby.hu/blackruby/cici-matrix-bot.git
  2. Install dependencies using pip install -r requirements.txt
  3. Configure the bot by editing config/settings.yaml

Usage

Run the bot with python bot.py

Interacting with the bot

  • Invite the bot to your room, it will join automatically
  • To chat with the bot, tag it in your message
  • To continue the conversation, keep replying to the bot's message
  • To ask the bot to analyze an image, upload it or reply to the message containing the image while tagging the bot

Using tools

When mentioning the bot, in your message you can provide a set of supported instructions to have the bot execute them.

  • Ping: ask the bot to ping a specific IP address or domain
  • Traceroute: ask the bot to perform a traceroute to a specific IP address or domain
  • Time: ask the current time in any timezone, the bot will look it up and tell you
  • Matrix last mentioned: ask the bot to find who mentioned you last and provide you with a link to that message.
  • Web search: when asking about specific topics, the bot will automatically search for them on the web and provide you an answer based on the search results.