Telegram-бот для удобного взаимодействия с базой знаний Obsidian через AI-ассистента.
Этот бот работает как интерфейс между пользователем и AI-ассистентом (Cursor CLI) для взаимодействия с базой знаний. Пользователь отправляет запрос в Telegram бота, бот передает запрос в Cursor CLI с контекстом базы знаний, AI обрабатывает запрос и может читать, искать и изменять файлы базы знаний.
- ✅ Обработка текстовых запросов с контекстом базы знаний
- ✅ Интуитивный интерфейс с кнопками (главное меню, контекстные клавиатуры)
- ✅ Автоматическая синхронизация с NextCloud с прогресс-баром и оптимизацией скорости
- ✅ Транскрибация голосовых сообщений (Whisper API)
- ✅ Обработка фото и файлов
- ✅ Отслеживание изменений с возможностью отката через интерфейс
- ✅ Управление сессиями через удобный интерфейс
- ✅ Режим "пустого чата" и режим работы с базой знаний
- ✅ Режим сбора сообщений для группировки нескольких сообщений в один запрос
- ✅ Система ограничения доступа (whitelist) для защиты личной базы знаний
- ✅ Административные команды для управления доступом
- ✅ Универсальность: можно развернуть на любую базу знаний
- Python 3.11+
- PostgreSQL (или SQLite для локальной разработки)
- Cursor CLI (или OpenAI API ключ)
- NextCloud (опционально, для синхронизации)
- Клонируйте репозиторий:
git clone https://github.com/DanilKorotaev/knowledge-base-bot.git
cd knowledge-base-bot- Установите зависимости:
pip install -r requirements.txt- Настройте переменные окружения:
cp .env.example .env
# Отредактируйте .env файл- Запустите бота:
python bot.py- Создайте
.envфайл (см..env.example) - Настройте NextCloud (см. docs/SETUP_NEXTCLOUD.md)
- Запустите скрипт настройки:
./scripts/setup_local_testing.sh- Запустите бота:
docker-compose up -d- Проверьте логи:
docker-compose logs -f botПодробные инструкции по установке и настройке см. в docs/SETUP.md и docs/SETUP_NEXTCLOUD.md.
- SETUP.md - Инструкции по установке и настройке
- SETUP_NEXTCLOUD.md - Настройка NextCloud для бота
- SETUP_NEXTCLOUD_SCENARIO.md - Сценарий с расшариванием папки
- SYNC_AUTOMATIC.md - Автоматическая синхронизация
- DEVELOPMENT.md - Руководство для разработчиков
- DEPLOYMENT.md - Инструкции по развертыванию
- ARCHITECTURE.md - Описание архитектуры
- GIT_FLOW.md - Процесс разработки и релизов
- TODO.md - Активные задачи
- COMPLETED.md - Выполненные задачи
knowledge-base-bot/
├── bot.py # Точка входа
├── config.py # Конфигурация
├── database/ # Работа с БД
├── services/ # Бизнес-логика
├── handlers/ # Обработчики Telegram
├── utils/ # Утилиты
├── docs/ # Документация
├── .cursor/ # Системные промпты для Cursor
└── docker-compose.yml # Docker конфигурация
MIT License
DanilKorotaev