mirror of
https://github.com/mikeyobrien/ralph-orchestrator.git
synced 2026-04-25 07:05:57 +03:00
[PR #156] [MERGED] feat: add pi-coding-agent as first-class backend #169
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/ralph-orchestrator#169
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/mikeyobrien/ralph-orchestrator/pull/156
Author: @mikeyobrien
Created: 2/5/2026
Status: ✅ Merged
Merged: 2/5/2026
Merged by: @mikeyobrien
Base:
main← Head:feat/pi-agent-support📝 Commits (3)
ad4d03bfeat: add pi-coding-agent as first-class backendf66efeffix: clippy and rustfmt issuesbe0878dfix: remaining clippy wildcard in test code📊 Changes
22 files changed (+2815 additions, -21 deletions)
View changed files
📝
Cargo.lock(+8 -8)📝
crates/ralph-adapters/src/auto_detect.rs(+24 -1)📝
crates/ralph-adapters/src/cli_backend.rs(+153 -0)📝
crates/ralph-adapters/src/lib.rs(+6 -0)➕
crates/ralph-adapters/src/pi_stream.rs(+805 -0)📝
crates/ralph-adapters/src/pty_executor.rs(+73 -3)📝
crates/ralph-adapters/tests/pty_executor_integration.rs(+98 -0)📝
crates/ralph-cli/src/hats.rs(+2 -2)📝
crates/ralph-cli/src/init.rs(+2 -2)📝
crates/ralph-cli/src/sop_runner.rs(+2 -3)📝
crates/ralph-core/src/config.rs(+2 -2)➕
ralph.pi.yml(+25 -0)➕
specs/pi-agent-support/design.md(+514 -0)➕
specs/pi-agent-support/plan.md(+184 -0)➕
specs/pi-agent-support/requirements.md(+106 -0)➕
specs/pi-agent-support/research/01-stream-format-comparison.md(+87 -0)➕
specs/pi-agent-support/research/02-stream-handler-architecture.md(+132 -0)➕
specs/pi-agent-support/research/03-rpc-mode-analysis.md(+80 -0)➕
specs/pi-agent-support/research/04-backend-patterns.md(+82 -0)➕
specs/pi-agent-support/research/05-pi-cli-flags.md(+102 -0)...and 2 more files
📄 Description
Summary
Add pi-coding-agent (
pi) as a first-class backend in ralph-orchestrator with NDJSON stream parsing, structured tool call display, cost tracking, and configuration support.Changes
New:
pi_stream.rs(813 lines)PiStreamEventenum with serde tagged deserializationPiStreamParser::parse_line()for NDJSON parsingdispatch_pi_stream_event()mapping toStreamHandlercallsPiSessionStatefor cost/turn accumulationModified
pi()andpi_interactive()constructors,OutputFormat::PiStreamJsonrun_observe_streaming()piadded last inDEFAULT_PRIORITYTesting
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.