Files
Hop/wiki/Agent-Workflow.md
T
Hop e887c8476d Reconcile concise README with current accepted product
Hop-State: A_06FN5JYYR5XPBJ8HDHSNJG8
Hop-Proposal: R_06FN5JXX64P7BMT8Q98HHE8
Hop-Task: T_06FN3MBF98GWD4NA5PA1RWG
Hop-Attempt: AT_06FN5J8NBKM5ES4ZMD5Y1CR
2026-07-11 13:08:40 -07:00

2.2 KiB

Codex Desktop and agent workflow

Codex Desktop

Users type into Codex normally. The installed skill makes prompt capture the agent's first repository action:

hop begin --agent codex --heredoc <<'HOP_PROMPT_EOF'
<exact visible user message>
HOP_PROMPT_EOF

The agent adopts the returned HOP_STATE_ID, HOP_TASK_ID, HOP_ATTEMPT_ID, and HOP_WORKSPACE, then confines reads, commands, edits, and tests to that workspace.

The normal lifecycle is:

hop check P_... -- go test ./...
hop propose --summary "Implemented the requested behavior" P_...
hop land R_... -- go test ./...

No second landing authorization is requested unless the user explicitly asks for review-first behavior.

Desktop capture stores the agent's verbatim transcription of the visible message and its attachment references. Because the skill runs after Codex receives the message, it cannot prove byte-for-byte fidelity with the raw submission. A trusted prompt-submission hook or controller is the deterministic capture boundary.

Follow-up messages

A later hop begin with the same Codex task session checkpoints existing workspace effects, appends a new prompt state, and continues the same attempt. The user does not carry state IDs between messages.

Controller-grade capture

A harness that can persist before delivering a prompt to the model can use:

hop init
hop start --agent my-agent --heredoc <<'HOP_PROMPT_EOF'
Add password reset emails
HOP_PROMPT_EOF
eval "$(hop env P_...)"

Only deliver the prompt after hop start exits successfully. Controller-managed follow-ups use:

hop prompt --from P_... --heredoc

This provides a stronger pre-delivery boundary than a Desktop skill, which can only guarantee capture before project effects.

Agent rules

  • Never edit the canonical project root directly.
  • Never mutate a frozen proposal.
  • Do not bypass hop land with Git reset, checkout, worktree, or manual copying.
  • Run validation against immutable checkpoints and the final integrated tree.
  • Let Hop merge compatible concurrent work.
  • Resolve genuine reconciliation workspaces without asking the user to perform source-control mechanics, unless the underlying product intents are ambiguous.