Telegram is the quickest channel to set up: one bot token, no plugins, and it works from behind a firewall — Crew reaches out to Telegram, so there's nothing to expose. Replies stream back live with tappable option buttons.
/newbot, follow the prompts to get a tokenThe status badge turns green when connected.
# Save token to ~/.kiro/crew/.env echo "TELEGRAM_BOT_TOKEN=123456789:AA…" >> ~/.kiro/crew/.env
In ~/.kiro/crew/config.json:
{ "telegram": { "enabled": true, "allowed_user_ids": [123456789] } }
Then: kirocrew restart
Crew only talks to people you name — and only in private chats.
allowed_user_ids; an empty list means nobody| Command | Effect |
|---|---|
/new (or /start) | Start a fresh conversation |
/compact | Free up context when it fills |
/steer <msg> | While a reply is generating, fold this message into the current turn |
/queue <msg> | While a reply is generating, hold this message for after the current turn |
/help | List commands |
| Key | Default | Purpose |
|---|---|---|
telegram.enabled | false | Turns the channel on |
telegram.allowed_user_ids | [] | Numeric IDs allowed to chat (empty = nobody) |
telegram.soft_threshold_pct | 80 | Context % where the bot suggests /compact |
telegram.bot_token | "" | Token fallback if TELEGRAM_BOT_TOKEN isn't set |
Prefer the TELEGRAM_BOT_TOKEN env var over bot_token — it keeps your secret out of config.json.
| Problem | Fix |
|---|---|
| No reply | Your ID isn't in allowed_user_ids or enabled is false |
No Telegram channel started in logs | Token isn't set or is invalid |
| Slow replies behind a proxy | Set HTTPS_PROXY for the gateway process |
Telegram