Skip to content
Search

Agent Client Protocol

lastmod 2025-09-03created 2025-09-031 edits

Agent Client Protocol (ACP)

About

  • Agent Client Protocol (ACP) is a protocol for standardizing communication between code editors and AI coding agents
  • Previously, each editor needed separate custom integration work to connect to a specific agent, which caused limited compatibility and developer lock-in
  • Like the Language Server Protocol (LSP), ACP provides a standardized way to communicate, so that once implemented, any compatible editor and agent can connect freely
  • The editor runs the agent as a subprocess and communicates via JSON-RPC over stdio; UI elements support diff display and Markdown-based output
  • Currently Zed, neovim (CodeCompanion plugin), and others support ACP; on the agent side, Gemini CLI is compatible, and support is expected to expand

Introduction

  • Agent Client Protocol (ACP) is an open protocol designed to standardize server-client interactions such as remote development, port forwarding, and command execution
  • Existing problem: AI coding agents and editors are tightly coupled, but interoperability is not guaranteed by default
    • Each editor must build a custom integration for every agent it wants to support
    • Agents must implement a specific editor's API to reach users
    • This causes integration overhead, limited compatibility, and developer lock-in
  • ACP's solution: ACP provides a standardized protocol between agents and editors
    • An agent that implements ACP works in every compatible editor
    • An editor that supports ACP can access the entire ecosystem of ACP-compatible agents
    • Enables independent innovation and lets developers choose the tools best suited to their workflow

ACP overview

  • How it works: users mainly work in a code editor and invoke an agent for specific tasks
    • The agent runs as a subprocess of the editor
    • Communicates using JSON-RPC over stdio
  • Data format: reuses MCP's JSON formats, with custom types for agentic coding UX elements such as diff display
  • Text format: uses Markdown by default for user readability
    • Rich formatting is possible without HTML rendering
  • The protocol is still under development, but mature enough to build interesting user experiences

Current support

  • Editors
    • Zed: supports ACP, per the official documentation
    • Neovim: ACP integration via the CodeCompanion plugin
    • Support for more editors planned
  • Agents
    • Gemini: supports ACP via Gemini CLI
    • Support for more agents planned

Conclusion

  • Modeled on the success of LSP, ACP dramatically improves interoperability between AI coding agents and editors
  • Developers can freely choose the best combination of tools without being locked into a specific agent or editor
  • Extending the protocol increases the ecosystem's scalability and can improve the efficiency and flexibility of developer workflows

See also

Favorite site

author Zer0 sitemap