Skip to content
Select themeSelect language

Telegram commands

The SupaCloud Telegram bot accepts the following commands. Link your account first with /link before using task or workspace commands.

Ids: every listing shows the first 8 characters of an id, and every command that takes an id (/task, /logs, /cancel, /follow, /intervene, /schedule pause|resume|delete, …) accepts exactly that short form — a unique prefix resolves, an ambiguous one lists the candidates with a longer prefix each (for /cancel and /logs as a button picker). Detail replies print the full id and carry a Copy ID button.

Command Description
/status Active tasks — sends an inline-button list of recent tasks; tap a task for Logs / Cancel / Follow (+ Back / Close).
/task <id> Task details.
/run <project> <agent> <prompt> Launch a task.
/issues [project] Issue-to-task wizard: inline buttons step through Project → Issue → Agent → Launch.
/backlog [project] Auto-developer backlog board.
/follow <id> / /f <id> Enter live mode and stream task events.
/unfollow Exit live mode.
/logs <id> Recent task or run events. Takes a task id or a run id from /runs (short ids work for both); a workflow run’s log is its recorded step timeline, each step named by its display title. Run ids resolve against the recent runs /runs lists.
/intervene <id> <msg> Send a message to a running task.
/cancel <id> Cancel a task.
/approvals List EVERY pending human decision gate in one inbox — the interactive tool/question/visual/model-class gates and the workflow human-gates together (ADR 0045; #1197). There is no filter argument: tool, workflow and all were retired and are now refused by name, not silently ignored. Each workflow gate carries inline Approve/Reject buttons.
/skills [approve|reject <id>] List the open induced-skill proposals, or approve/reject one by id. Deciding is workspace-admin only (ADR 0045).
/workflows List workflows.
/runs Recent runs.
/runners Runner status.
/resources Resource list.
/usage Per-provider subscription-saturation windows for the active workspace (admin/owner only) (ADR 0045).
/budget The $-budget status (cap, spend, remaining) — a member read (ADR 0045).
/workspace [name] / /ws Show the active workspace, or switch to name.
/workspaces List all workspaces.
/org Show the active organization (name, kind, plan, member count) — read-only.
/autonomy [0-100] Show the resolved effective autonomy (level, named stop, policy preview). Setting from chat is not yet available — use the web settings or the Management API to change the level (ADR 0045).
/approval_mode <project> [none|pr_draft] Show or set a project’s PR-review approval mode. Setting is workspace-admin only (ADR 0045). human_gate is retired for this command and is refused by name — a merge-side gate now lives on the automation’s per-stage gate flags.
/schedule list|add|pause|resume|delete Manage schedules.
/debug on|off Toggle debug mode for your current live/follow session to reveal internal operations in the stream (#583). Available only while a workspace admin has opened the debug ceiling.
/density reduced|chatty Set the persistent live-feed verbosity (reduced = lean, chatty = full thinking and tool detail).
/language de|en Set the language.
/link <token> Link your Telegram identity to a SupaCloud account using a one-time token.

After /follow (or /f), the bot enters live mode: each task step updates a single in-place message (coalesced streaming, tool-line deduplication, thinking shown). Any plain text you send while in live mode is forwarded to the task as an intervention. Live mode stops automatically when the task completes. Send /unfollow to exit early.

Launching a task with /run or the /issues wizard enters live mode automatically on that chat, with an Unfollow button under the confirmation so you can leave the stream in one tap. Following is per-chat: a task you start from Telegram streams in Telegram only.

/debug on turns on debug mode for your current live/follow session only, revealing internal operations in the stream — MCP tool calls, scope resolution, gate auto-resolves and danger escalations. /debug off turns it back off.

Debug output is gated by an allow-debug ceiling that a workspace admin opens (it is off by default). With the ceiling closed, /debug on has no effect. The setting is per session and ephemeral: it covers only the session you are following, is never persisted, and is enforced server-side.

/link <token> binds your Telegram identity to an existing SupaCloud account using a one-time link token generated in Settings. You need to run this once before workspace or task commands are available to you.

When a task finishes, the task owner’s linked Telegram chat gets one terminal report — a status glyph, the task title, a one-line result and a direct link to the task. It is written in the language you set with /language:

  • a task that succeeded reports what it produced — its result summary, or the agent’s last message when the summary has not been written yet;
  • a task that failed leads with the failure class — provider overloaded, usage limit reached, context window exceeded, auth / configuration error, or a plain error — followed by the error text itself, never a bare “failed”.

Both outcomes close with a narrow operational footer naming the model that ran, what it cost and the token counts — gpt-5.6-luna · $0.42 · 12.3k→4.1k tok. A value the server does not know simply drops its segment; a missing figure is never shown as $0.00.

The result line is clamped to about two sentences and passes the secret-redaction wall first, so nothing an agent printed can leak a key or token into chat. With no linked Telegram account there is nothing to push.

You get exactly one message per finished task. If your chat is following the task in live mode, the live message already carries the final block and no separate report is sent on top of it.

The per-account toggle in the chat-account settings turns these post-task messages off. It covers the terminal report above; on Discord the same toggle also covers the memory note described in the Discord reference, because both are messages sent because a task ended.