Problem
ACP sessions spawned via sessions_spawn(runtime='acp') frequently die without emitting any completion or error event back to the parent session. The parent agent has no way to know the task failed — it just never hears back.
In my testing (OpenAI Codex CLI via acpx backend), 3 out of 3 ACP runs failed:
- Run 1: Failed instantly with
AcpRuntimeError: Permission denied — error was only visible in gateway logs, never surfaced to the parent session
- Run 2: Process started, did partial work, then died (likely killed by gateway restart). No error event, no completion event.
- Run 3: Process started (
ps aux confirmed it running), did partial work on 8 files, then died silently. Again no event back to parent.
Issues
-
No completion/error callback: When an ACP session dies (for any reason), the parent session that spawned it is never notified. subagents list shows nothing. sessions_list shows nothing. The only way to discover the failure is manually grepping gateway logs.
-
No progress visibility: There's no way to check ACP session status. sessions_history returns forbidden (visibility scoped). subagents list doesn't show ACP sessions. The parent is completely blind.
-
Silent failures: When the first run failed with a permission error, the error was logged but never delivered to the parent session. The parent continued telling the user "it's running" for 40 minutes while the task had failed instantly.
Expected Behavior
- ACP session failures MUST emit an error event to the parent session
- ACP session completions MUST emit a completion event with the result
subagents list or sessions_list should include active ACP sessions
- If an ACP process dies unexpectedly, the runtime should detect this (process exit monitoring) and report it
Environment
- OpenClaw 2026.3.13
- ACP backend: acpx 0.1.16
- Agent: OpenAI Codex CLI 0.116.0
- macOS (Apple Silicon)
Related
Problem
ACP sessions spawned via
sessions_spawn(runtime='acp')frequently die without emitting any completion or error event back to the parent session. The parent agent has no way to know the task failed — it just never hears back.In my testing (OpenAI Codex CLI via acpx backend), 3 out of 3 ACP runs failed:
AcpRuntimeError: Permission denied— error was only visible in gateway logs, never surfaced to the parent sessionps auxconfirmed it running), did partial work on 8 files, then died silently. Again no event back to parent.Issues
No completion/error callback: When an ACP session dies (for any reason), the parent session that spawned it is never notified.
subagents listshows nothing.sessions_listshows nothing. The only way to discover the failure is manually grepping gateway logs.No progress visibility: There's no way to check ACP session status.
sessions_historyreturnsforbidden(visibility scoped).subagents listdoesn't show ACP sessions. The parent is completely blind.Silent failures: When the first run failed with a permission error, the error was logged but never delivered to the parent session. The parent continued telling the user "it's running" for 40 minutes while the task had failed instantly.
Expected Behavior
subagents listorsessions_listshould include active ACP sessionsEnvironment
Related