Integracja Telegram — konfiguracja i użycie
Jeden bot na projekt. Każdy worker AI dostaje własny topik w Telegram Supergroup — wiadomości są automatycznie routowane do właściwego workera, a odpowiedź wraca do tego samego topiku.
Jak to wygląda w praktyce
Supergroup "My Project"
├── 📌 General ← czat ogólny (bez powiązania)
├── 🔵 Developer ← wiadomości → worker Developer
└── 🟢 Consultant ← wiadomości → worker Consultant
Piszesz w topiku Developer → Arc OS przetwarza przez Claude → odpowiedź pojawia się w tym samym topiku.
Telegram i CRM Dashboard to dwa kanały do tego samego workera. Możesz zacząć rozmowę w Telegramie, kontynuować w CRM — kontekst jest zachowywany.
Konfiguracja
Krok 1 — Utwórz bota w BotFather
- Otwórz @BotFather w Telegramie
- Wyślij
/newbot - Wpisz nazwę bota (np.:
My Project) - Wpisz username — musi kończyć się na
bot(np.:my_project_arc_bot) - BotFather zwróci token w formacie
123456789:AABBccDDee...
⚠️ Zachowaj token — będzie potrzebny przy konfiguracji w CRM.
Krok 2 — Utwórz Supergroup z Topics
2.1 Utwórz grupę
Telegram Desktop / Mobile:
- Kliknij ikonę ołówka → New Group
- Dodaj dowolnego uczestnika (można go potem usunąć)
- Nadaj grupie nazwę → Create
2.2 Włącz Topics
- Otwórz ustawienia grupy (kliknij nazwę u góry)
- Edit → znajdź sekcję Topics
- Włącz przełącznik — Telegram automatycznie skonwertuje grupę na Supergroup
2.3 Ustal Supergroup ID
Supergroup ID zawsze zaczyna się od -100.
Wariant A — przez @userinfobot:
- Prześlij dowolną wiadomość z grupy do bota @userinfobot
- Bot zwróci ID w formacie
-1001234567890
Wariant B — przez Telegram Web:
- Otwórz grupę na web.telegram.org
- W pasku adresu będzie URL postaci
#-1001234567890 - Skopiuj liczbę razem z minusem
Krok 3 — Dodaj bota jako administratora
- Otwórz ustawienia grupy → Administrators
- Add Admin → w wyszukiwarce wpisz
@username_twojego_bota(pełny username z@) - Wybierz bota z listy → OK
- Domyślne uprawnienia wystarczą — zostaw jak są
⚠️ Bot nie pojawi się w wyszukiwarce, jeśli wpiszesz niepełny username albo bez
@. Wpisz dokładny@username.
Krok 4 — Utwórz topiki dla workerów
W grupie kliknij + → New Topic:
- Nazwij topiki według workerów:
Developer,Consultant, albo własne nazwy - Możesz wybrać kolory/ikony dla wygody
Krok 5 — Podłącz w CRM
- Otwórz arc-os.co → wybierz projekt → Project Settings
- Znajdź sekcję Channels → kliknij Connect Telegram
5.1 Wprowadź dane bota
| Pole | Co wpisać |
|---|---|
| Bot Token | Token z BotFather (123456789:AABBcc...) |
| Supergroup ID | ID grupy (-1001234567890) |
Kliknij Verify & get topics.
5.2 Weryfikacja
CRM sprawdzi:
- ✅ Token jest poprawny
- ✅ Bot jest administratorem grupy
- ✅ Lista topików załadowana
5.3 Powiąż topiki z workerami
Dla każdego topiku wybierz workera z dropdownu:
Developer → [developer ▾]
Consultant → [consultant ▾]
General → [(niepowiązany)]
Kliknij Save bindings.
Krok 6 — Test
- Napisz dowolną wiadomość w topiku Developer
- Bot odpowie w tym samym topiku jako worker Developer
- Powtórz dla Consultanta
Codzienne użycie
Praca przez topiki (zalecane)
Po prostu pisz treść zadania w odpowiednim topiku — żadne prefiksy nie są potrzebne:
[topik Developer]
Napraw bug w formularzu logowania — pole email nie jest walidowane
[topik Consultant]
Przeanalizuj architekturę modułu auth, co można poprawić?
Jeśli topik nie jest powiązany z workerem — odpowiada worker domyślny.
Komendy w prywatnym czacie z botem
W prywatnym czacie z botem dostępne jest ręczne przełączanie workerów przez prefiksy:
| Prefiks | Worker | Przeznaczenie |
|---|---|---|
/c <tekst> |
Consultant | Analiza, strategia, read-only |
/d <tekst> |
Developer | Kod, pliki, terminal |
/w:<worker_id> <tekst> |
Niestandardowy | Dowolny worker z rejestru |
| (bez prefiksu) | Aktywny | Ostatnio używany |
Przykłady:
/c Przeanalizuj architekturę modułu auth
/d Napraw bug w formularzu logowania
/w:sentinel Przeprowadź security audit ostatnich zmian
Wiadomość bez prefiksu trafia do bieżącego aktywnego workera — po /d Napraw bug kolejne wiadomości bez prefiksu też pójdą do Developera.
Przyciski inline pod odpowiedzią
Po każdej odpowiedzi workera AI pojawiają się przyciski sterujące:
Sterowanie procesem:
| Przycisk | Działanie |
|---|---|
| 🛑 STOP | Zatrzymaj Claude (jeśli poszedł w złą stronę albo zawiesił się) |
| ⏸️ PAUSE | Wstrzymaj — przydatne, żeby na coś poczekać przed kontynuacją |
| ▶️ RESUME | Wznów wstrzymany proces |
Kontekst i feedback:
| Przycisk | Działanie |
|---|---|
| 💡 BTW | Dodaj kontekst — następna wiadomość zostanie dołączona jako kontekst do kolejnego zapytania |
| 🛠️ Fix It | Powtórz zadanie z automatycznymi poprawkami |
| 👍 | Pozytywny feedback — zapisywany w metrykach |
| 👎 | Negatywny feedback — automatycznie tworzy regułę korekty uwzględnianą w kolejnych zapytaniach |
Nawigacja:
| Przycisk | Działanie |
|---|---|
| 🏷️ Skills | Pokaż skille użyte do odpowiedzi |
| 📊 View Log | Otwórz log sesji w CRM |
Kontekst i pamięć
- Każdy worker ma osobną pamięć (do 50 wiadomości)
- Reply na wiadomość → jej tekst jest dodawany jako kontekst do zapytania
- Context Router automatycznie dobiera top-5 skilli relewantnych do Twojej wiadomości
- Feedback 👎 → system zapamiętuje błąd i uwzględnia go w kolejnych zapytaniach
Komendy sterujące bota
| Komenda | Opis |
|---|---|
/ping |
Sprawdź, czy bot żyje + uptime |
/thread |
Rozmiar bieżącego kontekstu (liczba wiadomości) |
/quality |
Metryki jakości: wywołania, feedback, średni czas odpowiedzi |
/issue list |
Lista otwartych zgłoszeń projektu |
/issue create <nazwa> |
Utwórz nowe zgłoszenie |
/issue switch <id> |
Przełącz aktywne zgłoszenie |
/continue |
Kontynuuj sesję w kontenerze Cloud |
/specs |
Lista specyfikacji (draft / review / approved) |
/approve <id> |
Zatwierdź specyfikację |
/reject <id> [powód] |
Odrzuć specyfikację |
Powiązanie z CRM Dashboard
Topik Telegram ──┐
├──► Child Bot ──► Claude ──► Odpowiedź
CRM Dashboard ──┘ │
▼
Telegram + CRM (jednocześnie)
- Wiadomości z CRM są przetwarzane co 500ms
- Odpowiedzi pojawiają się jednocześnie w Telegramie i w CRM
- Załączniki (obrazy, PDF) obsługiwane przez CRM Dashboard
- Możesz zacząć rozmowę w Telegramie, kontynuować w CRM — kontekst jest zachowywany
Odłączenie bota
CRM → Project Settings → Channels → Disconnect.
To usunie token i wszystkie powiązania topików. Bot pozostanie w grupie — usuń go z administratorów ręcznie, jeśli trzeba.
Rozwiązywanie problemów
| Problem | Rozwiązanie |
|---|---|
| Bot nie odpowiada w topiku | Sprawdź, czy bot jest administratorem grupy. Sprawdź powiązanie topiku w CRM → Channels. W prywatnym czacie → /ping |
| Długi czas odpowiedzi | Developer (Opus) jest wolniejszy niż Consultant (Sonnet). Do analiz i pytań używaj Consultanta |
| Odpowiedź jest ucinana | Limit Telegrama 4096 znaków — bot automatycznie dzieli na [1/3], [2/3] itd. |
| Bota nie da się znaleźć przy dodawaniu do grupy | Wpisuj pełny username z @: @arc_os_project_bot |
| "Invalid bot token" przy weryfikacji | Sprawdź token — format digits:letters, bez spacji |
| "Bot is not admin" przy weryfikacji | Dodaj bota przez Administrators → Add Admin → @username_bota |
| "supergroup_id must start with -100" | ID musi być postaci -1001234567890. Włącz Topics, aby skonwertować grupę na Supergroup |
| 👎 nie tworzy reguły korekty | Klikaj 👎 dokładnie pod odpowiedzią workera, a nie pod wiadomością systemową |