operator is a reserved agent ID auto-created at startup. In managed hosting it is your primary chat partner — the agent you talk to when you say “spin up a new researcher”, “what’s my fleet doing today”, or “apply the sales template”.
What makes the operator different
Operator-only tools
fleet_tool
list_templates— see the 13 fleet templates.apply_template— materialize a template (per-slot, not atomic — mid-loop failures leave partial fleets).
operator_tools
A broad control-plane surface:
- Inspection:
inspect_agents,inspect_projects,list_pending,list_agent_queue,get_team_outputs,summarize_project_progress. - Project management:
manage_project,create_project,add_agents_to_project,remove_agents_from_project,update_project_context,set_project_goal. - Agent management:
manage_agent,create_agent,edit_agent(soft/hard split with 5 min / 30 min TTL),manage_task. - Edit lifecycle (legacy):
propose_edit,confirm_edit,undo_change,cancel_pending_action,archive_audit_before. - Observation:
save_observations(operator-ownedOBSERVATIONS.md).
Soft vs hard edits
Operator edits to other agents split by risk:
Both soft and hard edits go through the Pending actions surface — visible in the dashboard’s Needs-You panel and via
openlegion pending on the CLI.
Operator ceiling
The operator can do a lot, but cannot:- Grant
can_spawn=trueto any agent (subagent/agent spawning requires explicit human approval outside chat). - Grant
can_use_wallet=trueto any agent (wallet access requires the same).
Where you’ll see the operator
- CLI:
openlegion startopens the REPL with the operator selected by default./use operatorswitches back. - Channels: Once paired, the operator is the default agent for new conversations.
- Dashboard: The Chat tab targets the operator by default. Settings → Operator lets you edit its system prompts and instruction overrides.
Reserved IDs
operator is one of three reserved agent IDs (RESERVED_AGENT_IDS = {"mesh", "operator", "canary-probe"}). You can’t create a worker agent named operator, and the operator can’t be deleted.