Telegram-інтеграція — налаштування та використання
Один бот на проєкт. Кожен AI-воркер отримує власний топік у Telegram Supergroup — повідомлення автоматично маршрутизуються до потрібного воркера і відповідь повертається у той самий топік.
Як це виглядає в роботі
Supergroup "My Project"
├── 📌 General ← загальний чат (без прив'язки)
├── 🔵 Developer ← повідомлення → Developer воркер
└── 🟢 Consultant ← повідомлення → Consultant воркер
Ти пишеш у топік Developer → Arc OS обробляє через Claude → відповідь з'являється в тому ж топіку.
Telegram і CRM Dashboard — це два канали до одного воркера. Можна почати діалог у Telegram, продовжити в CRM — контекст зберігається.
Налаштування
Крок 1 — Створити бота у BotFather
- Відкрий @BotFather у Telegram
- Надішли
/newbot - Введи ім'я бота (наприклад:
My Project) - Введи username — має закінчуватись на
bot(наприклад:my_project_arc_bot) - BotFather поверне токен у форматі
123456789:AABBccDDee...
⚠️ Збережи токен — він потрібен при налаштуванні в CRM.
Крок 2 — Створити Supergroup з Topics
2.1 Створити групу
Telegram Desktop / Mobile:
- Натисни іконку олівця → New Group
- Додай будь-якого учасника (можна потім видалити)
- Дай назву групі → Create
2.2 Увімкнути Topics
- Відкрий налаштування групи (натисни на назву вгорі)
- Edit → знайди розділ Topics
- Увімкни перемикач — Telegram автоматично конвертує групу у Supergroup
2.3 Дізнатись Supergroup ID
Supergroup ID завжди починається з -100.
Варіант А — через @userinfobot:
- Перешли будь-яке повідомлення з групи боту @userinfobot
- Бот поверне ID у форматі
-1001234567890
Варіант Б — через Telegram Web:
- Відкрий групу на web.telegram.org
- У адресному рядку буде URL виду
#-1001234567890 - Скопіюй число разом з мінусом
Крок 3 — Додати бота як адміністратора
- Відкрий налаштування групи → Administrators
- Add Admin → у пошуку введи
@username_твого_бота(повний username з@) - Вибери бота зі списку → OK
- Права за замовчуванням підходять — залиш як є
⚠️ Бот не з'явиться у пошуку якщо вводити неповний username або без
@. Введи точний@username.
Крок 4 — Створити топіки для воркерів
У групі натисни + → New Topic:
- Назви топіки за воркерами:
Developer,Consultant, або кастомні імена - Можеш обрати кольори/іконки для зручності
Крок 5 — Підключити у CRM
- Відкрий arc-os.co → вибери проєкт → Project Settings
- Знайди розділ Channels → натисни Connect Telegram
5.1 Ввести дані бота
| Поле | Що вводити |
|---|---|
| Bot Token | Токен від BotFather (123456789:AABBcc...) |
| Supergroup ID | ID групи (-1001234567890) |
Натисни Verify & get topics.
5.2 Верифікація
CRM перевірить:
- ✅ Токен валідний
- ✅ Бот є адміністратором групи
- ✅ Список топіків завантажений
5.3 Прив'язати топіки до воркерів
Для кожного топіку вибери воркера з дропдауну:
Developer → [developer ▾]
Consultant → [consultant ▾]
General → [(не прив'язано)]
Натисни Save bindings.
Крок 6 — Тест
- Напиши будь-яке повідомлення у топік Developer
- Бот відповість у тому ж топіку від Developer воркера
- Повтори для Consultant
Щоденне використання
Робота через топіки (рекомендовано)
Просто пиши текст завдання у потрібний топік — ніяких префіксів не потрібно:
[Developer топік]
Виправи баг у формі логіну — поле email не валідується
[Consultant топік]
Проаналізуй архітектуру auth модуля, що можна покращити?
Якщо топік не прив'язаний до воркера — відповідає воркер за замовчуванням.
Команди в особистому чаті з ботом
В особистому чаті з ботом доступне ручне переключення воркерів через префікси:
| Префікс | Воркер | Призначення |
|---|---|---|
/c <текст> |
Consultant | Аналіз, стратегія, read-only |
/d <текст> |
Developer | Код, файли, термінал |
/w:<worker_id> <текст> |
Кастомний | Будь-який воркер з реєстру |
| (без префіксу) | Активний | Останній використаний |
Приклади:
/c Проаналізуй архітектуру auth модуля
/d Виправи баг у login формі
/w:sentinel Проведи security audit останніх змін
Повідомлення без префіксу йде до поточного активного воркера — після /d Виправ баг наступні повідомлення без префіксу теж підуть до Developer.
Inline кнопки під відповіддю
Після кожної відповіді AI-воркера з'являються кнопки керування:
Керування процесом:
| Кнопка | Дія |
|---|---|
| 🛑 STOP | Зупинити Claude (якщо пішов не туди або завис) |
| ⏸️ PAUSE | Призупинити — корисно щоб дочекатись чогось перед продовженням |
| ▶️ RESUME | Відновити призупинений процес |
Контекст та фідбек:
| Кнопка | Дія |
|---|---|
| 💡 BTW | Додати контекст — наступне повідомлення буде додано як контекст до наступного запиту |
| 🛠️ Fix It | Повторити задачу з автоматичними виправленнями |
| 👍 | Позитивний фідбек — фіксується в метриках |
| 👎 | Негативний фідбек — автоматично створює правило корекції, яке буде враховано в наступних запитах |
Навігація:
| Кнопка | Дія |
|---|---|
| 🏷️ Skills | Показати навички, які були використані для відповіді |
| 📊 View Log | Відкрити лог сесії в CRM |
Контекст та пам'ять
- Кожен воркер має окрему пам'ять (до 50 повідомлень)
- Reply на повідомлення → його текст додається як контекст до запиту
- Context Router автоматично підбирає top-5 навичок, релевантних до твого повідомлення
- 👎 фідбек → система запам'ятовує помилку і враховує її в наступних запитах
Управляючі команди бота
| Команда | Опис |
|---|---|
/ping |
Перевірити чи бот живий + uptime |
/thread |
Розмір поточного контексту (кількість повідомлень) |
/quality |
Метрики якості: виклики, фідбек, середній час відповіді |
/issue list |
Список відкритих issues проєкту |
/issue create <назва> |
Створити нову задачу |
/issue switch <id> |
Переключити активну задачу |
/continue |
Продовжити сесію у Cloud-контейнері |
/specs |
Список специфікацій (draft / review / approved) |
/approve <id> |
Схвалити специфікацію |
/reject <id> [причина] |
Відхилити специфікацію |
Зв'язок з CRM Dashboard
Telegram топік ──┐
├──► Child Bot ──► Claude ──► Відповідь
CRM Dashboard ──┘ │
▼
Telegram + CRM (одночасно)
- Повідомлення з CRM обробляються кожні 500ms
- Відповіді з'являються і в Telegram, і в CRM одночасно
- Attachments (зображення, PDF) підтримуються через CRM Dashboard
- Можна почати діалог у Telegram, продовжити в CRM — контекст зберігається
Відключення бота
CRM → Project Settings → Channels → Disconnect.
Це видалить токен і всі прив'язки топіків. Бот залишиться у групі — видали його з адміністраторів вручну якщо потрібно.
Усунення проблем
| Проблема | Рішення |
|---|---|
| Бот не відповідає у топіку | Перевір що бот — адміністратор групи. Перевір прив'язку топіку у CRM → Channels. В особистому чаті → /ping |
| Довгий час відповіді | Developer (Opus) повільніший за Consultant (Sonnet). Для аналізу і питань використовуй Consultant |
| Відповідь обрізається | Telegram ліміт 4096 символів — бот автоматично ділить на [1/3], [2/3] тощо |
| Бот не знаходиться при додаванні в групу | Вводь повний username з @: @arc_os_project_bot |
| "Invalid bot token" при верифікації | Перевір токен — формат digits:letters, без пробілів |
| "Bot is not admin" при верифікації | Додай бота через Administrators → Add Admin → @username_бота |
| "supergroup_id must start with -100" | ID повинен бути -1001234567890. Увімкни Topics щоб конвертувати групу у Supergroup |
| 👎 не створює правило корекції | Натискай 👎 саме під відповіддю воркера, а не під системним повідомленням |