Cấu hình Telegram
Telegram là kênh chat thật đầu tiên sau terminal chat. Bot chạy local bằng long polling và mặc định chỉ cho owner sử dụng.
Thiết lập
Phần tiêu đề “Thiết lập”Chạy helper:
bestie channels telegram setupHelper sẽ hỏi owner id hoặc username và bot token. Nếu bạn để trống prompt owner, Bestie sẽ thử phát hiện owner từ tin nhắn mới nhất không phải bot gửi tới bot Telegram. Hãy gửi một tin nhắn cho bot trước, rồi chạy setup.
Bạn cũng có thể phát hiện owner sau khi setup:
bestie channels telegram whoamiwhoami đọc các update gần đây của bot và in numeric id, username nếu có, cùng giá trị channels.telegram.ownerUserId có thể dùng trong config.
Hoặc cấu hình thủ công trong .bestie/config.json:
{ "channels": { "telegram": { "enabled": true, "botTokenEnv": "BESTIE_TELEGRAM_BOT_TOKEN", "ownerUserId": "123456789" } }}Thêm token vào .bestie/.env:
BESTIE_TELEGRAM_BOT_TOKEN=123456:bot-token-hereKhông commit .bestie/.env.
Chạy bot
Phần tiêu đề “Chạy bot”bestie channels telegramChạy một vòng update để smoke/debug:
bestie channels telegram --onceĐể chạy nền, dùng daemon manager:
bestie daemon start --channel telegrambestie daemon status --channel telegramXem Chạy Bestie trong nền để biết cách restart, stop, xử lý stale state và hành vi systemd service.
Transcript logging
Phần tiêu đề “Transcript logging”Để smoke test và debug integration, ghi transcript JSONL local:
bestie channels telegram --once --transcript .bestie/logs/telegram-smoke.jsonlTranscript logging ghi lại polling, outbound messages, chat actions, metadata file đính kèm, lượt tải attachment, chỉnh sửa progress message, và gửi voice/audio khi các flow đó chạy.
Các định danh như chat id, file id và Telegram file path được hash trong transcript entry. Dù vậy, vẫn hãy xem transcript là dữ liệu chẩn đoán local: chúng có thể tiết lộ timing, message flow, kích thước file và chi tiết vận hành.
Slash commands
Phần tiêu đề “Slash commands”/start- phản hồi readiness cho owner./help- danh sách lệnh./status- tóm tắt trạng thái local, không lộ secrets./doctor- tóm tắt Doctor./memoryhoặc/memory list- trạng thái hoặc tóm tắt memory gần đây./memory pending- hàng chờ memory cần duyệt./memory pending inspect <id>- xem chi tiết một pending memory./memory pausevà/memory resume- tạm dừng hoặc bật lại memory./approvals- xem action approvals đang chờ./approve <id>và/deny <id>- ghi nhận quyết định owner. Nền tảng hiện tại ghi nhận quyết định nhưng chưa thực thi action đã được approve.
Slash command không được hỗ trợ sẽ trả về fallback ngắn thay vì chuyển vào LLM.
Attachments
Phần tiêu đề “Attachments”Telegram có thể tải file vào .bestie/workspace/telegram/..., kèm caption, metadata và preview giới hạn cho file text-like.
Mặc định quan trọng:
downloadPolicy:allowmaxBytes:20971520parseMaxBytes:5242880visionPolicy:denytranscriptionPolicy:deny
Nội dung upload luôn là untrusted. Bestie chỉ đọc sâu hơn qua local read tools khi policy cho phép.
Tool progress
Phần tiêu đề “Tool progress”Khi một lượt Telegram dùng tools, Bestie nên chỉnh sửa một progress message thay vì spam chat. Final answer sẽ thay thế progress message khi có thể.
Progress text nên hướng tới người dùng, ví dụ:
Miu đang xem danh sách tệp trong src/cliMiu đang tìm tệp khớp *.md trong docsMiu đang gom tài liệu Markdown từ srcTên tool nội bộ không nên lộ ra chat Telegram.
Verification checklist
Phần tiêu đề “Verification checklist”npm run buildnpm run smokenpm run smoke:doctor:exit-codebestie channels telegram whoamibestie channels telegram --oncebestie channels telegramSau đó gửi /start, /help, /status, /doctor, /memory, /memory pending, approval commands khi có pending approvals, và một tin nhắn bình thường từ owner.
Tin nhắn từ Telegram user khác phải bị bỏ qua.
Voice không còn chỉ thuộc Telegram
Phần tiêu đề “Voice không còn chỉ thuộc Telegram”Telegram vẫn là channel adapter cho chat và bot interactions. Tuy nhiên voice hiện là capability riêng của Bestie. Nếu Telegram bot hỗ trợ voice messages, hãy xem đó là Telegram chuyển audio vào voice pipeline, không phải Telegram sở hữu toàn bộ voice system.
Docs Telegram nên tập trung vào bot setup, webhook/polling, commands và quyền riêng của channel. Behavior voice dùng lại nên nằm trong voice guide.
