You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug]: ACP provider: message sent while agent is still processing fails with "Agent is already processing. Use steer() or followUp()" #22660
I searched existing issues and did not find a duplicate.
I included enough detail to reproduce or investigate the problem.
Area
apps/server
Steps to reproduce
Use an ACP-registry provider (here: oh-my-pi / OMP agent, pi-agent-core based) in a T3 thread.
Ask the agent to do something that ends its visible turn while work keeps running on the agent side. In this case the agent started a background job that waited up to 4 minutes for a key press and asked: "Press the key once more, waiting up to 4 minutes."
While that background work is still running, send a normal message in the composer (here: "нажал" / "pressed").
Expected behavior
T3 sees that the agent is still busy and delivers the message as a steer or follow-up, or queues it until the agent is idle. The thread keeps working.
Actual behavior
The message is sent as a plain new prompt, the agent rejects it, and the thread shows:
Provider error
Agent is already processing. Use steer() or followUp() to queue messages, or wait for completion.
The user's message is effectively lost, and the turn ends in an error.
This looks like the ACP version of #15221, which was the Pi RPC adapter sending a turn-start prompt without streamingBehavior. The error text here is the pi-agent-core Agent.prompt() one ("Use steer() or followUp()…"), not the AgentSession one, so it comes through the ACP adapter path rather than PiAdapterV2.
Impact
Major degradation or frequent failure
Version or commit
T3 Code desktop (current build as of 2026-10-21)
Environment
Windows 11 (win32 10.0.26200, x64), T3 Code desktop, provider: ACP registry harness running OMP (oh-my-pi), model anthropic/claude-opus-5-5.
Logs or stack traces
Provider error
Agent is already processing. Use steer() or followUp() to queue messages, or waitfor completion.
Workaround
Wait until the agent's background work has finished (or stop the run) before sending the next message.
Verified before 6a6c84f990 and after eb303fe4b6 through real isolated T3 servers with a synthetic ACP v1 provider. The baseline failed with the reported error; the fix queued and delivered the confirmation, including after four minutes. Cancellation scenarios passed. Fix PR: #22697. Real oh-my-pi and Windows remain unverified.
Activity
juliusmarminge commentedon Oct 21, 2026
Verified before 6a6c84f990 and after eb303fe4b6 through real isolated T3 servers with a synthetic ACP v1 provider. The baseline failed with the reported error; the fix queued and delivered the confirmation, including after four minutes. Cancellation scenarios passed. Fix PR: #22697. Real oh-my-pi and Windows remain unverified.
fix(server): ACP follow-ups sent while the agent is still busy are de…