The team wrote a charter. Three pages of what the agent does. Nothing says what it must refuse. At 03:00 it sends the customer the draft, because the draft was ready and no line told it to stop. The usual diagnosis is “we need better HITL.” Often the human was never given a written refuse-list.
The charter is not the doctrine
A charter says what the worker does. Purpose, inputs, outputs, a ceiling, a review. That page already exists.
Override doctrine is the other half. It is the written list of decisions an agent may never take. If you only wrote the does-list, you wrote half. The half that fails at 03:00 is the missing half.
This is not a personality test for the model. Models do not have temperament. They have tools. The doctrine is about the tools.
Four refusals, already public
The live capsule names four. I am not adding a fifth to make a framework.
Spending above a ceiling. Draft the invoice. Do not send the money.
Speaking as the company. Draft the reply. Do not put the company’s name on a channel the human has not opened.
Changing production data. Propose the patch. Do not write production.
Closing a judgment you still own. Assemble the brief. Do not decide the hire, the price, or the kill.
Those four are irreversible or identity-bearing. An agent can work up to the line. A human crosses it. The Multi-Agent Organization puts the same cut in the charter field it calls the authority ceiling: keep the agent on the reversible side. Default to deny. That book is live. This page is the list, not the seven-field template.
Write it before the tool
The glossary is specific about when. Write the doctrine before the agent gets a tool that can send, spend, or delete. MCP is how a step touches the building. The doctrine is who may not turn the key.
If the refuse-list lives in a Slack thread from March, it is not a doctrine. It is folklore. Folklore does not bind a tool call.
HITL is not a substitute
A human in the loop is a named person with a ceiling and a gate. A glance at a dashboard is not a loop.
HITL without a doctrine arrives after the spend. The human is then downstream of a decision that already happened. That is not a loop. That is an autopsy.
The doctrine has to hold when no one is watching. If the only control is a person who sleeps, you did not write a refuse-list. You wrote a hope.
Review is the gate, not the list
CHORUS is the coordination protocol for teams of two to fifteen. Review is one of six skills. It is how the team fails an output against written criteria.
This page is not a second CHORUS article. The protocol is the gate. The doctrine is the criteria the gate reads. If Review has nothing written to fail against, Review is a vibe.
A fifteen-minute audit
Pick the agent that can send, spend, or delete.
- Paste the written refuse-list. If you have to remember it, it is not written.
- Check the four public refusals. Circle the ones that are missing.
- Name the last irreversible action this agent took. Whose name did it carry?
- Write the file the doctrine lives in. Not the chat.
- Write the action you will take off the agent today if step 1 is blank.
If step 1 or 4 is empty, take the tool away. A charter without a doctrine is a permission slip. Write the refusals. Then the 03:00 call has something to hit.