Skip to content

[Feature]: ACP Session Streaming/Log Forwarding to Orchestrator #29909

@cyan-ember

Description

@cyan-ember

Summary

When spawning ACP sessions via sessions_spawn(runtime="acp"), the orchestrator has no visibility into the harness's streaming output. Completely opaque between "spawned" and "done."

Problem to solve

We spawned Claude Code via ACP to build a feature. It ran for 4 hours, consumed tokens on a Pro subscription, and produced zero lines of code — only planning documents. We had no way to know until we manually checked the filesystem.

On a second attempt, the harness accepted the task, Claude Code processes started, then went to 0% CPU within minutes. Processes stayed alive but did nothing. Debug logs showed it received the input stream but never made a single tool call. We couldn't diagnose why.

The only debugging tools: check if files appeared on disk, ps aux, grep debug logs. None tell you what the agent is thinking or why it stopped.

Contrast with direct Claude Code: you see streaming updates — what it's reading, planning, writing. ACP strips that away.

IDEs get streaming via ACP bridge. Orchestrators (agents spawning ACP sessions) get nothing.

Proposed solution

(1) streamTo: "parent" param on sessions_spawn, (2) tail-able per-session log file, (3) WebSocket events matching Gateway→IDE pattern.

Alternatives considered

No response

Impact

IDEs get streaming via ACP bridge. Orchestrators (agents spawning ACP sessions) get nothing.

Evidence/examples

No response

Additional information

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions