# fix\(server\): Claude takes agent updates at tool boundaries · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commit/2418c1cdee4b349ed20cc0ba4e38e251a00eec8d)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: 2418c1cdee4b349ed20cc0ba4e38e251a00eec8d

Requested commit: 2418c1cdee4b349ed20cc0ba4e38e251a00eec8d

Commit: 2418c1cdee4b349ed20cc0ba4e38e251a00eec8d

Tree: 3fc8a8f0c6d19cacfacd613ff34ee4a80a549c6b

Author: Alb11747

Committer: Alb11747

## Message

```
fix(server): Claude takes agent updates at tool boundaries

Agent updates to a Claude turn wait in the durable queue instead of steering,
which would cancel running tools that Claude reads as a user refusal. The
running turn now takes them at its next root PostToolBatch or Stop hook as
additional context, so an update arrives right after the current tool call
instead of after the whole turn.

The hook claims queued updates through ProviderContinuationRequests; the
worker promotes each into the running run with the existing
promote-to-steer command (no steer effect, the run's own model selection,
delegated completions accepted in the same commit). Held queues and stopped
runs refuse the claim, so Stop wins. Unclaimed updates start the next turn as
before. Updates with attachments, which hooks cannot carry, still steer
natively with a note that they came from another agent.

Related-PR: https://github.com/pingdotgg/t3code/pull/21158
Co-Authored-By: Claude Opus 5.5 at high effort <noreply@anthropic.com>
Co-Authored-By: GPT-6.1 Sol at xhigh effort, review subagent <noreply@openai.com>

```

## Parents

- [4e1a46fdcdb36819fa3db3b6ab6faa19a831ca29](https://git.cafe/pingdotgg/t3code/commit/4e1a46fdcdb36819fa3db3b6ab6faa19a831ca29?format=markdown)

[Source at this commit](https://git.cafe/pingdotgg/t3code/tree/2418c1cdee4b349ed20cc0ba4e38e251a00eec8d?format=markdown)
