The job
Most platforms answer “how do I change this?” with “open the dashboard.” That is a fine answer when you are at a desk. It is a poor one at 11pm, on a phone, when the only thing you want is to push tomorrow’s run back a day.
The interesting property of an autonomous system is that it mostly runs without you. The moments you do need it are short, sharp, and rarely at your desk — approve this, retry that, change the cadence, tell me what happened. Making those moments require a browser tab is what turns “autonomous” back into “attended.”
What it does
Message the bot the way you would message a colleague:
“for Forge Control: reconfigure the Daily Engineering Digest workflow to run once every three days instead of daily”
The bot resolves the instruction, shows you what it understood, and waits for a confirm press. Then it reports what it changed — and what it deliberately did not:
| |
That last line is the part that matters. A control surface you cannot see the boundaries of is not one you will trust with anything important.
What you can do from chat
| Ask | What’s running · why did that run fail · what does this character’s prompt say · what changed recently |
| Create | Agents (generated from a description, then reviewed) · workflows · schedules |
| Change | Amend a character’s prompt · edit a workflow · change a cadence · enable, disable or run a schedule now |
| Reverse | Undo the last config change · redo it · list recent changes with their author and timestamp |
Safety is the whole design
A chat message that can delete an agent is a privileged action, so the control plane is built as gates rather than good intentions:
- A control grant per person. A Telegram identity is bound to an organisation with explicit scopes. Without a grant you get read-only. With a partial grant, an unauthorised write is rejected and the bot tells you which scope was missing instead of pretending it worked.
- Confirmation before every write. The classifier’s guess never fires on its own. You see the interpretation and press a button.
- Destructive operations show their blast radius behind that confirm, rather than executing quietly.
- Everything mutating is audited, and a rate guard bounds bursts.
- Pre-write snapshots make changes reversible — this is what
undo_lastrestores.
Under the hood
- Actionable Notifications — the other half: escalations arrive with buttons
- Autonomous & Scheduled Workflows — what the schedules you are editing actually drive
- Character Agents — what “create an agent” creates
- Git-Backed Audit — the record behind every run you ask about