Skip to content

refactor(agent): each agent reads its own output (A1b) - #242

Merged
httpsphl merged 1 commit into
mainfrom
refactor/agent-output
Oct 9, 2026
Merged

httpsphl merged 1 commit into
mainfrom
refactor/agent-output

Conversation

@httpsphl

@httpsphl httpsphl commented Oct 9, 2026

Copy link
Copy Markdown
Owner

Slice A1b of spec 30.

  • Agent gets live_text and handle_output; StreamReader calls the bot's agent for each JSON line instead of Claude's code directly.
  • chat/events.rs is now chat/claude.rs (the Claude decoder, unchanged logic). What every agent has (reply, tool started/finished, end-of-turn line) moves to chat::sink, which the Claude decoder calls and the AGY/Codex decoders will call.
  • Claude-only handling (context, compaction, plan share, screen drafts, control responses) stays in the Claude decoder.

No behavior change; the existing chat, supervisor and courier tests pass untouched. fmt, clippy -D warnings and cargo test --workspace pass.

Next: A1c (discovery and login, the files each agent reads in the bot folder, approvals).

Agent gains live_text and handle_output; chat::events becomes chat::claude,
the Claude decoder, and the generic parts (reply, tool start and end, end of
turn) go through chat::sink. StreamReader takes the bot's agent. No change
for Claude bots.
@httpsphl
httpsphl merged commit 927e982 into main Oct 9, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant