cline-acp
v0.1.6
Published
An ACP-compatible coding agent powered by Cline
Maintainers
Readme
Cline ACP
An ACP-compatible coding agent powered by Cline.
Use Cline from ACP clients such as Zed!
Features
- Context @-mentions
- Images
- Tool calls with permission requests
- Plan/Act mode switching
- Multiple AI model support (via Cline's provider configuration)
- Streaming responses
- Tool integration testing capabilities
Prerequisites
You need the Cline CLI installed:
npm install -g clineConfigure your API key in Cline's settings before use.
Installation
npm install cline-acpUsage
Start the ACP agent:
cline-acpThe agent will automatically connect to an existing Cline instance or start a new one.
With Zed
Install dependencies (if not already done):
npm install -g cline-acpConfigure Zed by adding the agent server to your Zed
settings.json:{ "agent_servers": { "Cline": { "type": "custom", "command": "cline-acp" } } }
For more information about Zed's external agents, see Zed's External Agent documentation.
Other Clients
Any ACP-compatible client can use this agent. Learn more about the Agent Client Protocol.
How It Works
This adapter connects to Cline via its gRPC interface:
┌─────────────┐ ACP ┌─────────────────┐ gRPC ┌─────────────┐
│ ACP Client │◄────────────►│ cline-acp │◄───────────►│ cline-core │
│ (Zed) │ (stdio) │ │ │ │
└─────────────┘ └─────────────────┘ └─────────────┘Cline handles all file operations and tool execution internally.
Image Support
Image attachments (screenshots, images) are supported when using a vision-capable model in Cline:
- Images are converted to data URLs and passed to Cline's API
- The model must support image/vision input (e.g., Claude 3.5 Sonnet, GPT-4V)
- If you switch to a non-vision-capable model, you'll see an error: "No endpoints found that support image input"
To use images, simply paste or attach them in your ACP client (e.g., Zed).
Known Limitations
Due to limitations in the Cline CLI's gRPC interface, some ACP features are not fully supported:
| Feature | Status | Notes |
| -------------------------- | ------------- | -------------------------------------------------------------------------------------------------------------------- |
| Line numbers in file edits | Not available | Cline's ToolMessage struct doesn't include line number fields. File paths work, but jump-to-line is not supported. |
| Available commands | Not available | Cline doesn't expose a list of available slash commands through its gRPC interface. |
These limitations are upstream in the Cline CLI and would require changes to the cline/cline repository to resolve.
Known Issues
- Model switching during retry: If you switch models while Cline is retrying a failed API request, the session may become stuck. Workaround: Cancel and start a new session.
Development
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm run test:run
# Start in development mode
npm run devAcknowledgments
Inspired by claude-code-acp by Zed Industries.
Repository
https://github.com/Tonksthebear/cline-acp
License
Apache-2.0
