H-17Steering a Running Agent

/harnesses/steering

A correction arrives mid-task, queues to the next step boundary, and is applied without discarding accumulated state.

Step-by-step walkthrough7 steps
  1. The agent is six steps into a long task and holding a lot of context.
  2. It issues a tool call and waits on it.
  3. The user changes their mind while it is still running.
  4. The message queues rather than landing immediately — a half-applied tool call is worse than a late correction.
  5. The call settles. That gap between steps is where an interrupt is safe.
  6. Six steps of work are kept. Steering is a redirect, not a restart.
  7. The agent resumes carrying both the accumulated state and the new instruction.
Key insight

Steering is the difference between an agent you supervise and one you submit to. It needs a defined interruption point and state that survives the interruption — both are harness properties, not model ones.

Failure mode

Applying a correction mid-tool-call, or treating it as a new task: the first corrupts state, the second throws away every step already paid for.

Elsewhere in the atlas