How a command is judged
When enabled, every command the agent runs passes through a layered check, in order:- Catastrophic floor — irreversible operations (deleting a namespace, wiping a disk, force-pushing) always require your approval. Nothing can auto-allow them — not a rule, not the judge, not a prior “always”. This floor is fixed.
- Read-only fast-path — commands that only read (
kubectl get,ls,cat, a plaincurlGET) run immediately. - Your standing rules — an LLM judge checks the command against the rules you’ve set (see below). A match runs it.
- Ask you — anything else pauses for a human decision.
Approving a command
When a command needs your yes, the turn pauses at that step — the agent stops and the command card shows four choices:Approve once
Run this one command, this once.
Approve for session
Auto-allow this exact command for the rest of this conversation.
Always allow
Create a standing rule so this class of command auto-runs from now on, in
every conversation.
Deny
Don’t run it — the agent stands down and suggests another approach.
Standing rules
Rules are how you move the line permanently. A rule is a plain-language description of a class of operations you trust the agent to run without asking — for example “restart deployments in the staging namespace”. They are per-user and apply across all your conversations. You can create rules two ways:- In Settings → Auto-authorization — add, review, and delete your rules in one list.
- From chat — tell the agent “from now on you don’t need to ask before restarting staging deployments” and it will propose a matching rule. A proposed rule does nothing until you confirm it in Settings — the agent can never weaken its own authorization. Rules covering deletes, production, or other irreversible operations are refused.