Agent Atlas / Chapter 8

The Human Control Loop

A useful interface exposes active work, gives intervention a defined runtime effect, preserves evidence during correction, and resumes the intended session.

Learning objective

Use public evidence to answer: Can a person see, stop, correct, and resume agent work without guessing?

Working question

Can a person see, stop, correct, and resume agent work without guessing?

Control exists only when the human can observe state, intervene, verify the effect, revise intent, and resume the right work.
A closed supervisory loop moves from runtime state to evidence, human judgment, and a control action that changes the runtime.
The human control loop Every intervention must return evidence showing what changed before work resumes. Open full-size diagram
Case file 08 / Stop was only visual

A cancelled shell command could leave sandbox bookkeeping behind

Codex commit 9152ebd2 fixes a race where an interrupted shell command could lose its runtime future before SIGTERM cleanup ran. In one Linux sandbox path, that could leave synthetic protected-path registrations behind after the interface appeared to stop.

The fix keeps dispatch alive through cancellation, routes cancellation through execution expiry, sends SIGTERM, waits briefly for cleanup, then hard-kills remaining descendants. A visible stop action must produce a verifiable runtime result.

Latest newsroom receipts

What changed since the first Atlas draft

Mechanism trace

What actually happens

  1. Runtime state

    active sessions and work

  2. Evidence surface

    status, trace, diff, prompt

  3. Human judgment

    compare progress with intent

  4. Control action

    steer, stop, switch, rewind

Observation starts with naming the active work

Hermes commit 0a83247e adds a process-local TUI session orchestrator that can list, activate, close, and launch sessions. It records live status, previews committed or in-flight output, exposes session count, and hydrates output when the user switches.

Those fields answer questions a transcript cannot: which session is current, which is working or waiting, what output is in flight, and where an approval prompt belongs. Without that state, intervention is guesswork.

Interruption needs an explicit boundary

Codex commit c0ea566b changes early cancellation into an editing action. If the turn produced no substantive visible output, interruption restores the prompt, images, and collaboration mode to the composer and requests a one-turn rollback.

Restoration is suppressed after assistant output, tool work, hooks, or patches become visible. That boundary matters because cancellation cannot safely pretend nothing happened after externally meaningful work begins.

Correction must preserve evidence

Hermes commit 0622a70e extends undo across multiple turns. It soft-deletes rewound rows, keeps them for audit, hides them from re-prompts and search, evicts cached state, and rebuilds the next turn from the active transcript.

This separates correction from erasure: active context changes, but the system retains a record of what was removed. It still does not undo files, commands, messages, or other external effects.

Resume must return to the right work

Recovery fails if the interface resumes the wrong thread. Parent thread and fork source are different facts; hidden workers and copied histories can coexist.

The control loop closes only when the resumed surface identifies lineage, active permissions, retained evidence, pending work, and the effect of the previous intervention. A session name or latest timestamp is insufficient.

Failure modes

Where the contract breaks

Visual cancellation

The interface reports stopped while child processes or cleanup tasks remain active.

Failure signalDescendants, locks, or tool events continue after the visible turn ends.

Wrong-session intervention

The interface hides thread identity or pending state and acts on the wrong worker.

Failure signalSwitching or resuming changes the transcript or permissions unexpectedly.

Correction without consequence accounting

Undo removes visible history but leaves cached context or effects unexplained.

Failure signalRemoved turns return, or files remain changed without a recovery summary.
Release tests

What the product must prove

  1. Interrupt a command with cleanup and descendants; verify cleanup ran and every descendant exited.
  2. Switch among working, waiting, and idle sessions; verify output, prompt ownership, and status remain attached.
  3. Undo multiple turns; verify audit rows remain, cached context rebuilds, and external effects are disclosed.

Projects In This Lesson

19 projects

Recent Reporting For This Lesson

6 articles