telegram.send
Schema
Input = { text: string, // max 4096 chars (Telegram's own limit) chatId?: string, // defaults to the chat linked in the Telegram connection parseMode?: 'Markdown' | 'HTML',}
Output = { messageId: string, chatId: string, provider: string, // 'twin' | 'telegram'}requiresConnection: 'telegram'. Prefers ctx.integrations.telegram when the Twin has wired it;
otherwise calls the Telegram Bot API’s sendMessage directly with the connection’s own bot token (or
TELEGRAM_BOT_TOKEN from .env) and the chat id learned when you paired — see
Connecting Telegram. If no chat has ever paired, the skill fails with
a clear instruction rather than a raw API error: “No Telegram chat linked yet. Message the bot once
so the Twin can learn your chat id, or pass chatId.”
telegram.send is one of the six world-acting skills
— including when Muse reaches for it as one of its ten tools. An agent or
Muse calling it directly is refused and a decision Signal goes to your desktop instead; it only sends
once you tap “Do it”.
Example
curl -s -X POST http://localhost:4000/api/studio/skills/invoke \ -H 'content-type: application/json' -b cookies.txt \ -d '{"name":"telegram.send","input":{"text":"Your report is ready — check the Studio."}}'{ "ok": true, "output": { "messageId": "482", "chatId": "6819234501", "provider": "telegram" } }