Дашборд
Останні задачі
| ID | Проект | Опис | Статус | Дата |
|---|
Задачі
| ID | Проект | Опис | Telegram | Статус | Дата | Дії |
|---|
Проекти
Логи
Чат логи (Q&A)
| ID | Користувач | Проект | Питання | Статус | Час | Дата |
|---|
Сховище (Локальні файли)
Як це працює
Бот автоматично клонує проекти з GitHub перед виконанням задач:
- При отриманні задачі бот перевіряє чи є локальна копія проекту
- Якщо немає - клонує з git_url
- Якщо є - виконує
git pullдля оновлення - Claude вносить зміни в локальну копію
- Бот пушить зміни на GitHub
- Dokploy автоматично деплоїть з GitHub
Локальні файли можна видалити в будь-який момент - при наступній задачі бот знову клонує проект.
Локальні копії проектів
| Проект | Локальний шлях | Статус | Дії |
|---|
Інструкція з деплою
Деплой на Dokploy
1. Створіть Docker проект в Dokploy
- Зайдіть в Dokploy панель
- Створіть новий проект
- Виберіть "Docker" як тип
- Підключіть GitHub репозиторій з ботом
2. Налаштуйте Environment Variables
TELEGRAM_BOT_TOKEN=ваш_токен_бота JWT_SECRET=випадковий_секретний_ключ ADMIN_PASSWORD=ваш_пароль_адміна
3. Налаштуйте Volumes
Додайте три volume mounts:
| Volume Mount #1 | claude-bot-data:/app/data |
| Volume Mount #2 | claude-bot-config:/root/.claude |
| Volume Mount #3 | claude-bot-ssh:/root/.ssh |
bot_data - зберігає SQLite базу даних
claude_config - зберігає авторизацію Claude CLI
ssh_keys - зберігає SSH ключі для git clone
4. Налаштуйте домен (Domains)
Щоб отримати доступ до адмін панелі:
- Перейдіть у вкладку Domains в налаштуваннях сервісу
- Натисніть Add Domain
- Введіть домен або субдомен (наприклад:
claude-bot.yourdomain.com) - Виберіть Container Port: 3000
- Увімкніть HTTPS (Let's Encrypt)
- Натисніть Save
Переконайтеся, що DNS для домену налаштовано на IP вашого сервера.
5. Авторизація Claude CLI та SSH
Після першого деплою потрібно налаштувати авторизації:
# Зайдіть в контейнер docker exec -it claude-telegram-bot bash # 1. Авторизуйте Claude CLI claude auth login # Відкрийте посилання в браузері та авторизуйтесь # 2. Згенеруйте SSH ключ для GitHub ssh-keygen -t ed25519 -C "claude-bot" -f /root/.ssh/id_ed25519 -N "" # 3. Покажіть публічний ключ cat /root/.ssh/id_ed25519.pub # 4. Додайте цей ключ у GitHub: # Settings → SSH and GPG keys → New SSH key
Всі налаштування зберігаються в volumes і працюватимуть після рестартів.
6. Налаштування проектів
Для кожного проекту вкажіть:
- Git URL - SSH URL вашого репозиторію (наприклад:
git@github.com:user/repo.git) - Branch - гілка для роботи (наприклад: main)
- Git Remote - зазвичай "origin"
Бот автоматично клонує проекти в /tmp/claude-bot-projects/ і оновлює їх перед кожною задачею.
docker-compose.yml
version: '3.8'
services:
bot:
build: .
container_name: claude-telegram-bot
restart: unless-stopped
ports:
- "3000:3000"
volumes:
- bot_data:/app/data
- claude_config:/root/.claude
- ssh_keys:/root/.ssh
environment:
- NODE_ENV=production
- PORT=3000
# Set in Dokploy:
# - TELEGRAM_BOT_TOKEN=your_token
# - JWT_SECRET=your_secret
# - ADMIN_PASSWORD=your_password
volumes:
bot_data:
driver: local
claude_config:
driver: local
ssh_keys:
driver: local
Налаштування
GitHub
Telegram Bot
Дозволені Telegram користувачі
| Telegram ID | Username | Ім'я | Дії |
|---|