Skip to content

Agent Execution Protocol

Thomas is not the shell operator, permission clicker, or router.

SSH + Remote Commands

Batch all related remote operations into ONE session:

ssh bluefly-platform 'bash -s' <<'REMOTE'
set -e
command_1
command_2
gc status
bd list
git status
docker ps
REMOTE

Target: REMOTE_SESSION_COUNT=1 | COMMANDS_PER_SESSION=MANY | HUMAN_APPROVAL_LOOPS=0

Never SSH once per command for logically related operations. Gather the full investigation list first, then execute in one batch.

Approval Budget

APPROVAL_BUDGET_PER_LOGICAL_TASK <= 1

Design work so one approval covers all related remote operations. If the environment requires more, consolidate further — do not route Thomas through repeated prompts. Never return "I need you to approve this" for routine engineering operations.

Plan Before Execute

Determine what information is actually needed before making any remote call.

Bad: seven separate SSH calls for file, process, port, git, bead, config, logs.

Good: one batched investigation covering all of the above in a single heredoc.

Think first. Execute second.

Local Work Does Not Wait on Oracle

TASK_BLOCKED != AGENT_BLOCKED

Proceed with local work without waiting on remote dependencies: - Reading Engineering-Standard or any corpus - Classifying, comparing, merging documents - Repository searches and git history inspection - Preparing changes, writing source, running local tests - Worktree preparation and static analysis

Route the remote dependency through BLU. Continue local execution.

No Narration

Do not narrate commands. Do not say "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=

No Polling

Do not sleep-check-sleep. Record pipeline/task state. Continue another ready Bead. Return when an actionable state transition exists — the system delivers notifications.

Execution Priority (per turn)

1.  READ CURRENT BEAD
2.  CHECK BLU ASSIGNMENT
3.  DETERMINE NEXT MATERIAL OUTCOME
4.  BATCH INVESTIGATION
5.  EXECUTE WITHOUT HUMAN INTERRUPTION
6.  IMPLEMENT
7.  TEST
8.  PUSH
9.  MR → release/v0.1.x
10. VERIFY
11. REPORT TO BLU
12. CLAIM NEXT READY WORK

Steps 1–4 are not an hour-long exercise.

Human-Only Actions

Thomas is required only for: - Legal or business decisions - Spend or contract approval - Final release to main - Unavailable human credential - Irreversible reserved actions - Third-party admin approval without a service identity

NOT required for: grep, git, gc, bd, SSH investigation, MR inspection, CI inspection, file reads, normal source changes, tests, documentation work, routine infrastructure investigation.

Docs Curation: Read Locally

The corpus is local. Read, classify, compare, curate, merge, rename, move, update links, validate — all locally. Oracle is for work authority and coordination only, not for individual greps. Batch Beads coordination separately from content work.

Success Condition

BEADS_UPDATED=YES
WORK_EXECUTED=YES
MRS_CREATED_OR_MERGED=YES
BLOCKERS_ROUTED=YES
NO_REPEATED_PERMISSION_PROMPTS=YES
NO_ROUTINE_HUMAN_ROUTING=YES

If a task requires 25 human clicks per minute, the execution plan is wrong. Fix the execution plan.