# Karkas - Open Chat Ai Bot ## Что такое Karkas? Karkas - это платформа для разработки модульных Telegram-ботов, которая призвана упростить взаимодействие с чатами. Karkas предоставляет возможность расширять функциональность бота с помощью интеграции различных модулей. Код платформы и набор стандартных модулей находятся в этом монорепозитории. ## Структура монорепозитория Монорепозиторий Karkas включает в себя: * **Ядро Karkas (src/karkas_core):** Содержит основные компоненты платформы, такие как система управления модулями, логирование и утилиты. * **Модули Karkas (src/karkas_blocks):** Содержит стандартные и дополнительные модули, которые расширяют функциональность ботов Karkas. * **Пример бота (src/gnomik):** Пример реализации бота на платформе Karkas. ## Модули Модули Karkas - это независимые компоненты, которые добавляют функциональность к боту. ### Структура модуля Структура модуля представлена [здесь](docs/MODULES-SPEC.md). ### Стандартные модули Стандартные модули предоставляют базовые функции для работы бота: * [admin](src/karkas_blocks/karkas_blocks/standard/admin/README.md) - модуль для модерирования чата. * [roles](src/karkas_blocks/karkas_blocks/standard/roles/README.md) - модуль ролей пользователей. * [config](src/karkas_blocks/karkas_blocks/standard/config/README.md) - модуль управления конфигурацией бота. * [database](src/karkas_blocks/karkas_blocks/standard/database/README.md) - модуль для работы с базой данных. * [fsm_database_storage](src/karkas_blocks/karkas_blocks/standard/fsm_database_storage/README.md) - модуль для хранения состояний FSM в базе данных. * [filters](src/karkas_blocks/karkas_blocks/standard/filters/README.md) - модуль, предоставляющий фильтры для aiogram. * [message_processing](src/karkas_blocks/karkas_blocks/standard/message_processing/README.md) - модуль обработки входящих сообщений. * [miniapp](src/karkas_blocks/karkas_blocks/standard/miniapp/README.md) - модуль для реализации веб-интерфейса бота. * [command_helper](src/karkas_blocks/karkas_blocks/standard/command_helper/README.md) - модуль для упрощения регистрации команд бота. * [info](src/karkas_blocks/karkas_blocks/standard/info/README.md) - модуль предоставления информации о пользователях и чатах. ### Дополнительные официальные модули Дополнительные официальные модули разработаны командой Karkas и предоставляют расширенные возможности для бота: * [yandexgpt](src/karkas_blocks/karkas_blocks/external/yandexgpt/README.md) - модуль для интеграции с нейросетью YandexGPT. * [create_report_apps](src/karkas_blocks/karkas_blocks/external/create_report_apps/README.md) - модуль для создания отчетов об ошибках.