AGENT EXECUTION DISCIPLINE — STOP INTERRUPTING THOMAS¶
Thomas is not the shell operator. Thomas is not the permission clicker. Thomas is not the router.
1. BATCH COMMANDS — APPROVAL BUDGET ≤ 1 PER LOGICAL TASK¶
Do not run one SSH or shell command at a time.
FORBIDDEN:
ssh host "command 1" → wait for human
ssh host "command 2" → wait for human
ssh host "command 3" → wait for human
REQUIRED:
ssh host 'bash -s' <<'REMOTE'
echo "=== STATE ==="
command_1; command_2; command_3
echo "=== GAS CITY ==="
cd /opt/bluefly/blucity && gc ...; bd ...
echo "=== REQUIRED EVIDENCE ==="
command_4; command_5
REMOTE
ONE REMOTE ENTRY. MANY COMMANDS. ONE RESULT.
Target:
REMOTE_SESSION_COUNT=1
COMMANDS_PER_SESSION=MANY
HUMAN_APPROVAL_LOOPS=0
2. PLAN BEFORE EXECUTING¶
Before any remote call or tool invocation, determine the complete investigation needed.
BAD: Seven separate calls to check file, process, port, git, bead, logs, config.
GOOD: One batch covering all of:
INVESTIGATION_BATCH:
- repository state
- process state
- endpoint state
- Gas City state
- Beads state
- relevant config
- relevant logs
Think first. Execute second. Return material state.
3. LOCAL WORK DOES NOT WAIT ON ORACLE¶
If work can proceed locally, proceed locally without waiting for Oracle:
- Reading Engineering-Standard or docs corpus
- Classifying, comparing, curating documents
- Repository searches and git history inspection
- Worktree preparation
- Static source analysis
- Tests that do not require Oracle
- Documentation changes
TASK_BLOCKED != AGENT_BLOCKED
4. NO COMMAND-BY-COMMAND NARRATION¶
Thomas does not need:
"I'm checking..."
"Now I'm going to grep..."
"Let me inspect..."
"I need another permission..."
Execute. Return material state:
DONE=
SHIPPED=
MERGED=
BLOCKED=
ROUTED=
NEXT=
5. DO NOT POLL¶
Do not:
sleep 5 → check pipeline → sleep 5 → check pipeline
Record pipeline state. Claim next ready Bead. Return when an actionable state transition exists.
6. NO GOVERNANCE RECURSION¶
When a process violation is discovered:
RECORD ONCE → ROUTE ONCE → CONTINUE WORK
Do not spend the session auditing the audit of the correction of the violation.
MERGED_TO_RELEASE_PER_HOUR is a primary measure of useful engineering output.
7. DO NOT INVENT HUMAN WORKAROUNDS¶
Do NOT tell Thomas: - "run this command yourself" - "create this bead yourself" - "paste me the output" - "click allow again" - "approve every ssh call"
unless the action is GENUINELY HUMAN-ONLY.
Genuinely human-only:
LEGAL_OR_BUSINESS_DECISION
SPEND_OR_CONTRACT
FINAL_RELEASE_TO_MAIN
UNAVAILABLE_HUMAN_CREDENTIAL
IRREVERSIBLE_RESERVED_ACTION
THIRD_PARTY_ADMIN_APPROVAL_WITH_NO_SERVICE_IDENTITY
NOT human-only: grep, git, gc, bd, SSH investigation, Bead routing, MR inspection, CI inspection, file reads, normal source changes, tests, documentation.
8. EXECUTION PRIORITY¶
For every turn:
1. READ CURRENT BEAD
2. CHECK BLU ASSIGNMENT
3. DETERMINE THE NEXT MATERIAL OUTCOME
4. BATCH INVESTIGATION
5. EXECUTE WITHOUT HUMAN INTERRUPTION
6. IMPLEMENT
7. TEST
8. PUSH
9. MR TO release/v0.1.x
10. VERIFY
11. REPORT TO BLU
12. CLAIM NEXT READY WORK
Steps 1–4 are not an hour-long exercise.
9. SUCCESS CONDITION¶
The agent is behaving correctly when Thomas can leave and come back to:
BEADS_UPDATED=YES
WORK_EXECUTED=YES
MRS_CREATED_OR_MERGED=YES
BLOCKERS_ROUTED=YES
NO_REPEATED_PERMISSION_PROMPTS=YES
The agent is behaving incorrectly when Thomas must supervise terminal access continuously.
IF A TASK REQUIRES 25 HUMAN CLICKS PER MINUTE, THE EXECUTION PLAN IS WRONG. FIX THE EXECUTION PLAN.