Metadata-Version: 2.4
Name: minibot
Version: 0.3.0
Summary: Self-hosted Telegram-first AI assistant with async tooling, memory, and scheduling.
License: MIT
License-File: LICENSE.md
Keywords: telegram,assistant,llm,bot,automation,self-hosted
Author: sonic182
Author-email: johander1822@gmail.com
Requires-Python: >=3.12,<3.15
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Communications :: Chat
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Provides-Extra: mcp
Provides-Extra: rabbitmq
Provides-Extra: stt
Requires-Dist: aio-pika (>=9.6.2) ; extra == "rabbitmq"
Requires-Dist: aiogram (>=3.24.0,<4.0.0)
Requires-Dist: aiopipe (>=0.2.2) ; extra == "rabbitmq"
Requires-Dist: aiosonic (>=0.31.0,<0.32.0)
Requires-Dist: aiosqlite (>=0.22.1,<0.23.0)
Requires-Dist: faster-whisper (>=1.0.0,<2.0.0) ; extra == "stt"
Requires-Dist: llm-async (==0.5.1)
Requires-Dist: logfmter (>=0.0.11,<0.0.12)
Requires-Dist: mcp (>=1.0.0,<2.0.0) ; extra == "mcp"
Requires-Dist: pydantic (>=2.12.5,<3.0.0)
Requires-Dist: pydantic-settings (>=2.12.0,<3.0.0)
Requires-Dist: rich (>=14.2.0,<15.0.0)
Requires-Dist: sqlalchemy[asyncio] (>=2.0.46,<3.0.0)
Requires-Dist: telegramify-markdown (>=0.5.4,<0.6.0)
Project-URL: Documentation, https://sonic182.github.io/minibot
Project-URL: Homepage, https://github.com/sonic182/minibot
Project-URL: Repository, https://github.com/sonic182/minibot
Description-Content-Type: text/markdown

MiniBot 🤖
=======

[![PyPI version](https://img.shields.io/pypi/v/minibot)](https://pypi.org/project/minibot/)

Your personal AI assistant for Telegram - self-hosted, auditable, and intentionally opinionated.

📖 **[Full documentation](https://sonic182.github.io/minibot)**

Top features
------------

- 🤖 Personal assistant, not SaaS: your chats, memory, and scheduled prompts stay in your instance.
- 🎯 Opinionated by design: Telegram-centric flow, small tool surface, and explicit config over hidden magic.
- 🏠 Self-hostable: Dockerfile + docker-compose provided for easy local deployment.
- 💻 Local console channel for development/testing without Telegram.
- 💬 Telegram channel with chat/user allowlists, long-polling or webhook modes, and multimodal inputs.
- 🧠 Provider support via [llm-async]: `openai`, `openai_responses`, `openrouter`, and more.
- 🧰 Configurable tools: chat memory, KV notes, HTTP fetch, calculator, datetime, Python execution, Bash, file storage, grep, speech-to-text, and MCP server bridges.
- ⏰ Scheduled prompts (one-shot and interval recurrence) persisted in SQLite.
- 🤝 Multi-agent orchestration with specialist agent definitions and skill packs.
- 📊 Structured logfmt logs and a focused async test suite.

Demo
----

Example: generate images with the `python_execute` tool and receive them in Telegram.

![Generate image with python_execute (1)](demo_pics/gen_image_with_python_1.jpeg)
![Generate image with python_execute (2)](demo_pics/gen_image_with_python_2.jpeg)

[llm-async]: https://github.com/sonic182/llm-async

