Problem
ACP hosts can observe Codex execute-tool cards that remain active after the foreground turn, but cannot stop one specific background task. The standard session/cancel request targets the current session turn, while terminal/kill is a reverse request from agent to client and does not apply to Codex-owned processes.
This leaves clients with only a read-only task display or the much broader option of cancelling the foreground turn/session.
Observed with @agentclientprotocol/codex-acp 1.8.0 and @openai/codex 0.153.4. The adapter exposes session/cancel, _session/steering, and _session/goal, but no task-targeted stop method or per-task stop capability.
Request
Please expose a host-callable way to stop one Codex-owned background task without cancelling unrelated foreground work. Either JetBrains AIR asyncTasks compatibility or a documented Codex ACP extension would work.
The client needs:
- a stable opaque task ID in lifecycle updates;
- a per-task
canStop capability/affordance;
- a client-to-agent request accepting the session ID and task ID;
- an explicit result for accepted, already-finished, and not-stoppable tasks;
- lifecycle updates after acceptance so the client can keep showing
Stopping until the task actually exits.
Idempotent handling of stale IDs would make snapshot-driven UIs substantially safer.
Use case
A terminal and web session viewer shows background work across providers. Claude can expose a targeted stop affordance through AIR async-task updates, and client-owned ACP terminals can be killed through their local supervisor. Codex tasks currently have to remain read-only because there is no equivalent ownership-safe control path.
Problem
ACP hosts can observe Codex execute-tool cards that remain active after the foreground turn, but cannot stop one specific background task. The standard
session/cancelrequest targets the current session turn, whileterminal/killis a reverse request from agent to client and does not apply to Codex-owned processes.This leaves clients with only a read-only task display or the much broader option of cancelling the foreground turn/session.
Observed with
@agentclientprotocol/codex-acp1.8.0 and@openai/codex0.153.4. The adapter exposessession/cancel,_session/steering, and_session/goal, but no task-targeted stop method or per-task stop capability.Request
Please expose a host-callable way to stop one Codex-owned background task without cancelling unrelated foreground work. Either JetBrains AIR
asyncTaskscompatibility or a documented Codex ACP extension would work.The client needs:
canStopcapability/affordance;Stoppinguntil the task actually exits.Idempotent handling of stale IDs would make snapshot-driven UIs substantially safer.
Use case
A terminal and web session viewer shows background work across providers. Claude can expose a targeted stop affordance through AIR async-task updates, and client-owned ACP terminals can be killed through their local supervisor. Codex tasks currently have to remain read-only because there is no equivalent ownership-safe control path.