Skip to content

DanilKorotaev/knowledge-base-bot

Repository files navigation

Telegram Knowledge Base Bot

Telegram-бот для удобного взаимодействия с базой знаний Obsidian через AI-ассистента.

Описание

Этот бот работает как интерфейс между пользователем и AI-ассистентом (Cursor CLI) для взаимодействия с базой знаний. Пользователь отправляет запрос в Telegram бота, бот передает запрос в Cursor CLI с контекстом базы знаний, AI обрабатывает запрос и может читать, искать и изменять файлы базы знаний.

Основные возможности

  • ✅ Обработка текстовых запросов с контекстом базы знаний
  • ✅ Интуитивный интерфейс с кнопками (главное меню, контекстные клавиатуры)
  • ✅ Автоматическая синхронизация с NextCloud с прогресс-баром и оптимизацией скорости
  • ✅ Транскрибация голосовых сообщений (Whisper API)
  • ✅ Обработка фото и файлов
  • ✅ Отслеживание изменений с возможностью отката через интерфейс
  • ✅ Управление сессиями через удобный интерфейс
  • ✅ Режим "пустого чата" и режим работы с базой знаний
  • ✅ Режим сбора сообщений для группировки нескольких сообщений в один запрос
  • ✅ Система ограничения доступа (whitelist) для защиты личной базы знаний
  • ✅ Административные команды для управления доступом
  • ✅ Универсальность: можно развернуть на любую базу знаний

Быстрый старт

Требования

  • Python 3.11+
  • PostgreSQL (или SQLite для локальной разработки)
  • Cursor CLI (или OpenAI API ключ)
  • NextCloud (опционально, для синхронизации)

Установка

  1. Клонируйте репозиторий:
git clone https://github.com/DanilKorotaev/knowledge-base-bot.git
cd knowledge-base-bot
  1. Установите зависимости:
pip install -r requirements.txt
  1. Настройте переменные окружения:
cp .env.example .env
# Отредактируйте .env файл
  1. Запустите бота:
python bot.py

Локальное тестирование с Docker

  1. Создайте .env файл (см. .env.example)
  2. Настройте NextCloud (см. docs/SETUP_NEXTCLOUD.md)
  3. Запустите скрипт настройки:
./scripts/setup_local_testing.sh
  1. Запустите бота:
docker-compose up -d
  1. Проверьте логи:
docker-compose logs -f bot

Подробные инструкции по установке и настройке см. в docs/SETUP.md и docs/SETUP_NEXTCLOUD.md.

Документация

Структура проекта

knowledge-base-bot/
├── bot.py                      # Точка входа
├── config.py                   # Конфигурация
├── database/                   # Работа с БД
├── services/                   # Бизнес-логика
├── handlers/                   # Обработчики Telegram
├── utils/                      # Утилиты
├── docs/                       # Документация
├── .cursor/                    # Системные промпты для Cursor
└── docker-compose.yml          # Docker конфигурация

Лицензия

MIT License

Автор

DanilKorotaev

Ссылки

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published