dsh-acp
Agent Client Protocol (ACP) JSON-RPC stdio server for DeepSeek Harness — bridges Zed and other IDEs to dsh agents
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:cnctem/dsh-acp说明文档
阅读完整 README ↗dsh-acp
An Agent Client Protocol (ACP) server for DeepSeek Harness (dsh) that lets Zed and other IDEs drive dsh agents over JSON-RPC 2.0 stdio.
Built on the official @deepseek-ai/dsh-acp skeleton as a dsh profile bundle over dsh-base, and extended with the editor experience of pi-acp.
Introduction
dsh-acp mounts an ACP server on dsh's stdin/stdout. Zed launches dsh --profile acp and speaks ACP JSON-RPC over stdio; the plugin translates session/* requests into dsh agent lifecycles. No dsh modification required.
Features
- Token & thinking streaming —
agent_message_chunk/agent_thought_chunk - Tool cards —
tool_call/tool_call_updatewith kind, file location and line - Structured diffs — edit/write hunks plus before/after snapshots
- Session history —
session/list·session/load·session/delete - Session selectors — write permission (3) · model · thinking strength
- Agent presets — 4 modes injected as a deployment field (
DSH_ACP_PRESET) - Bash terminal — command output rendered as terminal content with exit code
Installation
Prerequisites: Node.js ≥ 20, dsh (developed against dsh@0.1.0-rc.6), pnpm.
dsh plugin --profile acp add github:cnctem/dsh-acp
From source:
git clone https://github.com/cnctem/dsh-acp.git
dsh plugin --profile acp add ./dsh-acp
Configuration
- Model/provider defaults to dsh's default model; override via
DSH_ACP_PROVIDER/DSH_ACP_MODEL(or edit theacprow in$DSH_HOME/profiles/acp/cordis.patch.yml). - Agent preset via
DSH_ACP_PRESET; empty →standard. Values:standard/code(PTC) /minimal/cordis. - API key reuses dsh credentials (
$DSH_HOME/.credentials.yamlorDEEPSEEK_API_KEY).
Integration
Add to Zed's settings.json:
{
"agent_servers": {
"dsh": {
"type": "custom",
"command": "dsh",
"args": ["--profile", "acp"],
"env": {}
}
}
}
Restart Zed and pick dsh. Fix a model or preset via env:
{
"agent_servers": {
"dsh-code": {
"type": "custom",
"command": "dsh",
"args": ["--profile", "acp"],
"env": { "DSH_ACP_PRESET": "code" }
}
}
}
Zed also supports multiple entries for the same acp, so different presets can coexist as separate entries in the "+" menu.
Acknowledgements
- DeepSeek Harness and its
@deepseek-ai/dsh-acpexample pi-acp— the reference for the richer editor experience- Agent Client Protocol and Zed