把 DeepSeek Harness agent 能力暴露为 MCP server,让任意 MCP 客户端(如 Hermes)驱动 Harness 执行真实编码任务
Expose DeepSeek Harness agent capabilities as an MCP server , letting any MCP client (e.g. Hermes) drive Harness to execute real coding tasks.
安装
dsh plugin --profile web add github:chushixixin/dsh-harness-mcp-serverGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
把 DeepSeek Harness 的 agent 能力暴露成一个 MCP server,让任意 MCP 客户端(如 Hermes)都能驱动 Harness 执行真实的编码任务。
Hermes 是大脑(pro),Harness 是胳膊(flash)—— 1+1>2。
📖 English · 中文(当前页)
为什么需要它
Harness 自带强大的 agent 运行时(工具、LLM、agent、会话),但它本身是一个 Cordis 应用,别的 agent 无法直接调用。这个插件把 Harness「由内向外」翻转:在 Harness 内部启动一个真正的 MCP server(StreamableHTTP),通过 ctx 桥接 Harness 的核心服务 —— ctx.agents、ctx.agentPresets、ctx.tools —— 让外部的「大脑」能把真实工作交给 Harness 的「胳膊」。
Hermes (MCP 客户端, 大脑)
│ agent_run / task_inbox (HTTP)
▼
dsh-harness-mcp-server (MCP server, :8090)
│ ctx.agents.create → 挂载 'standard' preset
▼
Harness agent (flash) — 完整工具集: bash、fs、todo、web…
工具
| 工具 | 方向 | 用途 |
|---|---|---|
echo |
— | 验证 MCP 连通性 |
harness_list_tools |
— | 列出 Harness 已注册的工具名 |
agent_run |
Hermes → Harness | 同步执行任务,返回结构化结果 |
task_inbox |
Hermes → Harness | 把结构化任务(任务 + 记忆上下文 + cwd)推入异步队列 |
task_result |
Hermes ← Harness | 取回队列任务的结构化结果 |
每个任务结果都是结构化的:
{
"sessionId": "...",
"assistantText": "最终回答",
"toolCalls": [{ "name": "bash", "args": "..." }],
"toolResults": ["命令输出"],
"changes": "改了什么",
"verification": "怎么验证的",
"leftovers": "遗留问题"
}
这打通了「客户端持久记忆 ↔ Harness 编码」的回路:记忆作为 context 喂给每个任务,结果(changes / verification / leftovers)可以写回客户端记忆,供下次续用。
安装
方式 A —— 从 npm(推荐)
npm install @chushixixin/dsh-harness-mcp-server
然后在你的 Harness workspace 里引用该插件(见下方 cordis patch)。
方式 B —— 从源码
把本仓库 clone 到 Harness workspace 的 packages/mcp/harness-mcp-server/ 下(pnpm workspace 匹配 packages/*/*,两级深):
cd /path/to/deepseek-harness
mkdir -p packages/mcp/harness-mcp-server
# 复制本仓库文件进去,然后:
corepack pnpm install
在 tsconfig.host.json 的 references 和 tsconfig.base.json 的 paths 里注册(见 Harness 插件文档),然后构建:
corepack pnpm exec tsc -b packages/mcp/harness-mcp-server
corepack pnpm run build:lib:host
运行
export DEEPSEEK_API_KEY=...
corepack pnpm dsh web --patch ./packages/mcp/harness-mcp-server/cordis.yml
MCP server 监听 127.0.0.1:8090(StreamableHTTP)。任意 MCP 客户端指向 http://127.0.0.1:8090/mcp 即可。
⚠️ 安全警告:默认只监听
127.0.0.1(本机)。它暴露的是未鉴权的远程代码执行能力——在没有加认证、TLS 和反向代理之前,不要绑定0.0.0.0或暴露到公网/局域网。
Hermes 客户端配置
printf 'n\nY\n' | hermes mcp add harness_plugin --url http://127.0.0.1:8090/mcp
cordis.yml(patch 格式)
- insert:
- id: harness-mcp-server
name: '@chushixixin/dsh-harness-mcp-server'
config:
http: true
port: 8090
host: 127.0.0.1 # 默认仅本机; 暴露前必须加认证
# authToken: 'your-secret-token' # 可选: Bearer token 认证
# workspaceRoots: ['/workspace'] # 可选: cwd 白名单
定位
它最适合当备用工具,而不是日常主力:日常改代码直接驱动你的主 agent 即可。当需要上下文隔离(大型重构会把客户端上下文撑爆)或并行执行互不相干的任务时,再启用它。
- agent 会话按 cwd 复用(避免每次调用都重新加载项目上下文——比一次性
dsh headless省约 15–20 倍)。 - bash 走沙箱(
workspace-write):请在宿主机安装bubblewrap,否则沙箱会拒绝写命令。 - 每个新的 MCP 会话拥有独立的
McpServer+ transport(一个 MCPMcpServer只能连接一个 transport)。
License
MIT
原始 README: https://github.com/chushixixin/dsh-harness-mcp-server/blob/master/README.zh-CN.md ↗
同类插件
查看全部 →
dsh-anchored-standard
两阶段 DeepSeek Harness 预设:先 Minimal 对齐的 bootstrap,再切完整 Standard 工具(Project2 98/99)

PicGo-Core
极致的图片上传引擎,CLI 与 API 双支持

awesome-deepseek-harness
DeepSeek Harness(DSH)及其优秀社区插件的精选指南。

awesome-deepseek-harness
DeepSeek Harness (DSH)生态系统:来自dsh-external/hub和公共dsh-plugin主题的精选插件、工具和基础设施。

AI-Novel-Writer
本地优先 AI 小说创作工作台,提供 Windows/macOS 桌面版与 DeepSeek Harness 插件开发预览,支持角色、大纲、章节蓝图、审稿修稿和本地模型。

mcp-for-stata
MCP-for-Stata:把 Stata 集成进你的 agent