-
Notifications
You must be signed in to change notification settings - Fork 1
Closed
11 / 1111 of 11 issues completed
Copy link
Labels
acpAgent Client Protocol integrationAgent Client Protocol integrationepicMilestone-level tracking issueMilestone-level tracking issuefeatureNew functionalityNew functionality
Description
Overview
Integrate the Agent Client Protocol into Zeph, enabling it to function as a coding agent inside any ACP-compatible IDE (Zed, JetBrains, Neovim, etc.).
ACP standardizes JSON-RPC 2.0 communication between editors and coding agents over stdio. The editor provides file system and terminal access; the agent provides LLM-powered reasoning and tool execution.
Motivation
- JetBrains, Zed, Neovim already support ACP — massive reach for Zeph
- Protocol reuses MCP types — Zeph already has
zeph-mcp - A2A integration proves the JSON-RPC + LoopbackChannel pattern works
- Positions Zeph as an IDE-embeddable coding agent, not just a standalone CLI/TUI/Telegram bot
Architecture
New feature-gated crate zeph-acp following established patterns:
zeph-acp/
├── Cargo.toml
└── src/
├── lib.rs — public API re-exports
├── error.rs — AcpError (thiserror)
├── transport.rs — stdio JSON-RPC framing (newline-delimited)
├── server.rs — AcpServer: message dispatch, session lifecycle
├── session.rs — session state, history, config options
├── types.rs — ACP wire types (or re-export from agent-client-protocol crate)
├── tools.rs — AcpToolExecutor: proxy tool calls through IDE
├── fs.rs — IDE-proxied file operations (fs/read_text_file, fs/write_text_file)
└── terminal.rs — IDE-proxied terminal (terminal/create, terminal/output, etc.)
Integration via LoopbackChannel (same pattern as A2A), feature-gated acp flag, launched with zeph --acp.
Scope
See child issues for detailed breakdown.
References
Reactions are currently unavailable
Sub-issues
Metadata
Metadata
Assignees
Labels
acpAgent Client Protocol integrationAgent Client Protocol integrationepicMilestone-level tracking issueMilestone-level tracking issuefeatureNew functionalityNew functionality