JSPM

  • Created
  • Published
  • Downloads 791
  • Score
    100M100P100Q120037F
  • License MIT

Telegram bot client for OpenCode to run and monitor coding tasks from chat.

Package Exports

  • @grinev/opencode-telegram-bot
  • @grinev/opencode-telegram-bot/cli

Readme

OpenCode Telegram Client

Мобильный клиент для OpenCode в Telegram, позволяющий управлять задачами разработки на локальном компьютере.

Требования

  • Node.js 20+
  • Установленный OpenCode CLI (opencode)

Установка

  1. Клонируйте репозиторий.
  2. Установите зависимости:
    npm install
  3. Скопируйте файл с переменными окружения:
    cp .env.example .env
  4. Заполните .env файл (токен бота, ваш ID и путь к проекту).
  5. Настройте избранные модели в OpenCode (Desktop/TUI). Бот автоматически читает их из локального state файла OpenCode (model.json).
  6. Если избранные модели недоступны или файл не читается, бот использует fallback из .env:
    • OPENCODE_MODEL_PROVIDER
    • OPENCODE_MODEL_ID

Переменные окружения

Основные переменные в .env:

  • TELEGRAM_BOT_TOKEN — токен бота (обязательно).
  • TELEGRAM_ALLOWED_USER_ID — ваш Telegram user ID (обязательно).
  • OPENCODE_MODEL_PROVIDER — провайдер модели по умолчанию (обязательно).
  • OPENCODE_MODEL_ID — ID модели по умолчанию (обязательно).
  • SESSIONS_LIST_LIMIT — сколько последних сессий показывать в /sessions (опционально, по умолчанию 10).

Сборка и запуск

Режим разработки

Запуск без автоматической перезагрузки процесса:

В этом проекте auto-restart (watch/restart) намеренно не используется для runtime-бота, чтобы не ломать активные SSE/polling соединения.

npm run dev

Продакшн

  1. Соберите проект:
    npm run build
  2. Запустите собранный код:
    npm start

Команды

  • npm run lint — проверка кода линтером.
  • npm run format — форматирование кода через Prettier.
  • npm run test — запуск тестов через Vitest.
  • npm run test:coverage — запуск тестов с coverage-отчётом.

Функционал

Подробное описание функционала и плана разработки находится в PRODUCT.md. План технических улучшений (архитектура + тесты) — в TECHNICAL_IMPROVEMENTS.md. Инструкции для разработчиков и описание архитектуры — в AGENTS.md.