The Agent Client Protocol (ACP) standardizes communication between code editors (interactive programs for viewing and editing source code) and coding agents (programs that use generative AI to autonomously modify code).
Learn more at agentclientprotocol.com.
- Zed
- Emacs via agent-shell.el
- JetBrains (coming soon)
- marimo notebook
- neovim
- through the CodeCompanion plugin
- through the yetone/avante.nvim plugin
- JSON Schema:
schema.json
- Kotlin:
acp-kotlin
– supports JVM, other targets are in progress - Rust:
agent-client-protocol
- See examples/agent.rs and examples/client.rs - TypeScript:
@agentclientprotocol/sdk
- See examples/
- Dart:
acp_dart
- Emacs:
acp.el
- Go:
acp-go-sdk
- Python:
agent-client-protocol-python
- React:
use-acp
: hooks for connecting to Agent Client Protocol (ACP) servers.
ACP is a protocol intended for broad adoption across the ecosystem; we follow a structured process to ensure changes are well-considered.
Pull requests should intend to close an existing issue.
- Bug Reports: If you notice a bug in the protocol, please file an issue and we will be in touch.
- Protocol Suggestions: If you'd like to propose additions or changes to the protocol, please start a discussion first. We want to make sure proposed suggestions align well with the project. If accepted, we can have a conversation around the implementation of these changes. Once that is complete, we will create an issue for pull requests to target.
By contributing, you agree that your contributions will be licensed under the Apache 2.0 License.