Telegram setup
Telegram is Bestie’s first real chat channel after terminal chat. It runs locally with long polling and owner-only access.
Run the helper:
bestie telegram setupOr configure .bestie/config.json manually:
{ "channels": { "telegram": { "enabled": true, "botTokenEnv": "BESTIE_TELEGRAM_BOT_TOKEN", "ownerUserId": "123456789" } }}Add the bot token to .bestie/.env:
BESTIE_TELEGRAM_BOT_TOKEN=123456:bot-token-hereNever commit .bestie/.env.
Run the bot
Section titled “Run the bot”bestie telegramFor one update cycle during smoke/debug work:
bestie telegram --onceSupported commands
Section titled “Supported commands”/start- owner-only readiness reply./help- supported commands./status- short local status summary without secrets./doctor- concise Doctor summary./memoryor/memory list- memory status or recent-memory summary./memory pending- pending-memory review queue./memory pending inspect <id>- inspect one pending memory./memory pauseand/memory resume- pause or resume local memory./approvals- list pending action approval requests./approve <id>and/deny <id>- record owner decisions. The current foundation records decisions without executing approved actions.
Unknown slash commands return a short fallback instead of going to the LLM.
Attachments
Section titled “Attachments”Telegram can download supported files into .bestie/workspace/telegram/..., forward caption and metadata, and include bounded previews for text-like files.
Important defaults:
downloadPolicy:allowmaxBytes:20971520parseMaxBytes:5242880visionPolicy:denytranscriptionPolicy:deny
Uploaded content is untrusted. Full saved files can be read later through local read tools when permitted.
Tool progress
Section titled “Tool progress”When a Telegram turn uses tools, Bestie should edit one progress message instead of spamming the chat. The final answer replaces the progress message when possible.
Progress text should be user-facing, for example:
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ừ srcRaw internal tool names should not leak into the Telegram chat.
Verification checklist
Section titled “Verification checklist”npm run buildnpm run smokenpm run smoke:doctor:exit-codebestie telegram --oncebestie telegramThen send /start, /help, /status, /doctor, /memory, /memory pending, approval commands when pending approvals exist, and a normal owner text message.
Messages from any other Telegram user should be ignored.