AI mini box
Системное ядро для автоматизации малого бизнеса. Управление контактами, продуктами, заказами, сообщениями через единый CLI и плагинную систему сервисов.
Установка
pip install ai-mini-box-core
Для разработки — с тестовыми зависимостями:
git clone https://github.com/Kibertum/ai-mini-box
cd ai-mini-box
pip install -e packages/core[dev]
pip install -e packages/demo[dev] # пример сервиса
Быстрый старт
# Инициализация проекта
ai-mini-box init
# Проверка БД
ai-mini-box check-db
# Настройка
ai-mini-box config show
ai-mini-box config set telegram_bot_token "your_token"
ai-mini-box config set poll_interval 15
ai-mini-box config unset poll_interval
Команды CLI
| Команда | Описание |
|---|---|
init |
Создать config.json, БД, директории data/ |
check-db |
Проверить подключение к БД и схему |
config show |
Показать конфигурацию (с группировкой по секциям) |
config set <key> <value> |
Установить значение (чувствительные поля шифруются) |
config unset <key> |
Сбросить на значение по умолчанию |
Плагины (сервисы) регистрируют свои команды через entry points:
| Команда (из demo) | Описание |
|---|---|
demo-list |
Список контактов |
demo-get <id> |
Контакт по ID |
demo-add <name> <phone> |
Добавить контакт |
Опции: --verbose, --help доступны для всех команд.
Архитектура
ai_mini_box/
├── core/ # Слой домена
│ ├── models.py # Pydantic-модели (Contact, Product, Message, Order)
│ ├── repositories.py # ABC репозиториев + QueryBuilder
│ ├── container.py # RepoContainer + AppContext (DI)
│ └── exceptions.py # Кастомные исключения
├── infrastructure/ # Слой инфраструктуры
│ ├── database.py # SQLAlchemy engine, session, get_db()
│ ├── config.py # JsonConfigManager с шифрованием
│ ├── logger.py # Loguru-логгер
│ ├── orm_models.py # SQLAlchemy ORM-модели
│ ├── mapping.py # Мапперы Pydantic ↔ ORM
│ └── repositories/ # SQLAlchemy-реализации репозиториев
└── cli.py # Typer CLI + плагинная загрузка
Слои: core/ (Pydantic + ABC) → infrastructure/ (SQLAlchemy + файлы) → tools/ (CLI-сервисы через entry points).
Разработка сервиса
Сервисы (инструменты)
Проект включает 30 спецификаций сервисов в tool-*.md — от телеграм-бота и email до CRM-синхронизации и юристов. Каждый сервис — отдельный Python-пакет, подключаемый через entry point ai_mini_box.tools.
Тестирование
pytest packages/core/tests/ packages/demo/tests/ -v
Текущий статус: 72 теста, все зелёные (63 core + 9 demo).
Лицензия
MIT
Release files for ai-mini-box-core 5.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ai_mini_box_core-5.0.1.tar.gz | 14.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ai_mini_box_core-5.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 38.3 kB
Release files / ai_mini_box_core-5.0.1.tar.gz
| Download URL | ai_mini_box_core-5.0.1.tar.gz |
|---|---|
| Size | 14.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
74547e5c009b540985cfe97917d93bcb0a272438afe1382098c59fa52e6620df
|
|
BLAKE2b-256 checksum How to use checksums |
c53edb9315f5f8b4cbf15812c40541eabc0f5b70fbd0eb986794e5952960302c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / ai_mini_box_core-5.0.1-py3-none-any.whl
| Download URL | ai_mini_box_core-5.0.1-py3-none-any.whl |
|---|---|
| Size | 23.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
05e797c33cd8350575e7422f48d947cb4927ddb9bbe21c432c32bdb7d2603aeb
|
|
BLAKE2b-256 checksum How to use checksums |
61a11ee6b6f45b483124fc45650eb1faf8472f539627bd1e9e30d09149a1c416
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|