claude-agent-acp
Use the Claude Agent SDK as a coding agent from any ACP-compatible editor
Repository Health
Technical Analysis
claude-agent-acp is an Agent Client Protocol (ACP) adapter that wraps Anthropic’s Claude Agent SDK so any ACP-compatible client — code editors like Zed, or other tooling that speaks the protocol — can drive Claude as a full coding agent. It runs as a standalone CLI process spawned by the ACP client, translating protocol messages into Claude Agent SDK calls and back.
It supports the richer end of agentic editor integration: context @-mentions, image input, tool calls with permission prompts, interactive and background terminals, custom slash commands, and client-side MCP servers — the same capabilities Claude Code itself exposes, made available to any editor that implements ACP instead of only Anthropic’s own tooling.
What You Get
- A standalone
claude-agent-acpbinary implementing the ACP agent-side protocol - Full tool-call support with client-side permission requests
- Context @-mentions and image input passed through to Claude
- Interactive and background terminal support for running commands from the agent
- Support for custom slash commands and client-provided MCP servers
Common Use Cases
- Wiring Claude into ACP-compatible editors (e.g. Zed) as a first-class coding agent
- Building custom ACP clients that need a ready-made Claude-backed agent implementation
- Giving editor tooling access to Claude’s tool-use, terminal, and MCP capabilities without reimplementing the Claude Agent SDK integration
- Prototyping agentic editor features that require edit review, TODO tracking, or slash-command support
Under The Hood
Architecture: The core logic lives in src/acp-agent.ts, which implements the ACP agent-side protocol handlers and bridges them to the Claude Agent SDK, with src/tools.ts (1,200+ lines) mapping Claude’s tool-call surface (file edits, terminal commands, MCP tool invocations) onto ACP’s tool-call and permission-request messages; src/elicitation.ts handles interactive user prompts, and src/settings.ts manages agent configuration. The src/index.ts entrypoint is the CLI binary that ACP clients spawn as a subprocess, communicating over the protocol’s message channel, while src/lib.ts exposes the same functionality as an importable library for embedding. Tech Stack: TypeScript targeting Node.js, built with tsc, tested with vitest (including a dedicated integration test mode via RUN_INTEGRATION_TESTS=true), linted with ESLint and Prettier, released via release-please. Code Quality: 15 test files exercise the ACP-to-Claude-Agent-SDK bridge logic, and the project maintains a generated CHANGELOG.md with frequent, automated releases (v0.59.0 at time of writing), reflecting active, well-maintained development. API Design: The package exposes both a zero-config CLI binary (for editors that just spawn a subprocess) and a typed library entrypoint (dist/lib.js) for embedding the same bridge logic directly into a custom ACP client.
Used by 4 apps in this directory
agenta
Developer Tools · Devops · AI Development
The open-source LLMOps platform unifying prompt engineering, evaluation, and observability for teams building reliable LLM applications.
paperclip
AI Agents · Automation
The open-source control plane that turns a pile of AI agents into an actual company — with org charts, budgets, heartbeats, and governance.
rowboat
AI Assistants · AI Development
Build, test, and deploy multi-agent AI workflows with a visual editor, RAG data sources, MCP tool integration, and a production-ready REST API.
superset
AI Code Assistants · AI Development
Orchestrate an army of AI coding agents—Claude Code, Codex, Gemini CLI, and more—running simultaneously in isolated git worktrees from a single Electron desktop app.