DeepSeek Harness 指南:原理、架构与插件选择
了解 DeepSeek Harness 是什么、插件化架构如何运行、如何开始使用,以及它与其他编程智能体的区别。
DeepSeek Harness(dsh)是 DeepSeek AI 开发的开源智能体运行框架。它位于模型外围,负责把模型、工具、权限、会话历史、交互界面和其他服务连接起来。它不是模型、提示词包,也不是订阅套餐。
上游项目目前处于 developer preview(开发者预览) 阶段,并明确提示后续会出现破坏兼容性的变更。用于生产环境前,请以当前版本的官方文档和插件仓库说明为准。
DeepSeek Harness 是什么?
DeepSeek Harness 是一个可配置的编程智能体运行环境。它协调模型之外的关键部分,包括模型适配器、提示词、工具、审批、持久化、智能体循环、Web UI、无界面运行器以及扩展点。
官方用 “everything is a plugin(一切皆插件)” 概括这套设计。这里的“插件”不只是固定应用外围的附加功能;Harness 应用本身也由插件组合而成。
DeepSeek Harness 如何工作?
启动时,CLI 会选择一个命名 profile(配置档),例如 web 或 headless。profile 会列出一个或多个 bundle(组合包)。每个 bundle 提供配置行及其挂载的插件,随后再应用用户级、机器级和命令行 patch,最终由 Cordis 挂载完整插件树。
简化后的启动流程如下:
- 运行
dsh web,或通过dsh --profile <name>选择 profile。 - Harness 按顺序加载该 profile 的 bundles。
- 应用 profile、主目录和命令行 patch 层。
- Cordis 挂载组合后的插件树。
- 各插件注册服务、事件、工具和可撤销副作用。
- 界面接收任务;智能体循环调用模型、执行获准工具,并持久化会话事件。
无需启动应用即可检查某个 profile 最终会加载的配置树:
dsh --profile web --dump-config
“一切皆插件”是什么意思?
在 DeepSeek Harness 中,模型适配器、工具注册表、会话日志、智能体循环、Web 界面、权限和遥测等能力都通过同一套组合机制挂载。添加扩展时,不必为每项能力修改一个不可替换的特权核心。
插件可以提供或消费服务、监听事件、注册模型可见工具,也可以添加配置。Cordis 会追踪这些副作用,使插件卸载时能够撤销相关注册。因此,更换提供方、增加能力和构建新界面都可以沿用同一机制。
“一切皆插件”不代表任何第三方仓库天然安全或兼容。它描述的是架构,不是安全认证。
DeepSeek Harness 架构
| 层级 | 作用 | 示例 |
|---|---|---|
| CLI 与 profile | 选择命名组合和运行界面 | web、headless 或自定义 profile |
| Bundles | 打包有序 Cordis 配置及其挂载代码 | Base、Web App、Headless |
| Patch 层 | 替换整行配置或插入新配置 | Profile、主目录、--patch |
| Cordis 插件树 | 挂载服务、事件、依赖和可撤销副作用 | 模型、工具、会话、权限、UI |
| 智能体运行时 | 把输入转换为模型步骤、工具调用和持久事件 | Agent loop 与 session log |
| 能力接缝 | 允许在共享接口后替换提供方 | 文件系统、子进程、沙箱、模型提供方 |
Base bundle 提供公共智能体环境,Web 和 Headless bundle 则增加不同的运行界面,不需要维护两套核心。第三方 bundle 在包清单中声明正确的 dsh.bundle patch 后,也可以加入 profile。
安装与快速开始
安装 Node.js 后,可以直接从 npm 启动官方 Web UI:
npx @deepseek-ai/dsh web
默认访问地址为 http://127.0.0.1:3080。官方仓库还提供了源码运行方式:
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
管理插件还要求系统 PATH 中可用 pnpm。关于 profile 选择、安装、验证、删除和 allowBuilds 问题,请查看如何安装 DeepSeek Harness 插件。
官方 GitHub、文档与 CLI
仓库及其对应版本的文档才是最终依据。DeepSeek Harness 迭代很快,执行命令前应核对你所使用的 revision。
如何选择 DeepSeek Harness 插件
先明确所需能力,再用证据缩小候选范围,不要只看名称或 Star 数:
- 确认仓库身份。 从来源记录进入维护者仓库,并检查重定向、冒名和所有权信息。
- 确认包类型。 Bundle 会贡献 profile 配置;不带 bundle 的依赖可能需要手动 patch 才会生效。
- 匹配 profile。 判断插件应进入
web、headless,还是单独的自定义 profile。 - 核对兼容证据。 查看支持的 Harness revision、近期发布、未解决问题和迁移说明。
- 审查执行边界。 检查安装脚本、依赖、权限、网络目标、凭据和数据保留方式。
- 优先可撤销接入。 先在隔离 profile 中测试,必要时固定已审查版本,导出最终配置,并保留卸载路径。
“仓库可访问”“最近更新”等目录标签只是发现证据,不代表安全、质量或兼容认证。使用这些字段筛选前,请阅读目录收录方法。
DeepSeek Harness 与 Claude Code、Cursor、OpenCode 对比
| 产品 | 主要形态 | 扩展重点 | 适合选择它的情况 |
|---|---|---|---|
| DeepSeek Harness | 开源、基于 profile 的智能体运行框架,提供 Web 与 Headless 界面 | 运行时本身由 Cordis 插件、bundle 和 patch 组合 | 希望检查、替换或组装智能体运行时,并能接受开发者预览阶段变化 |
| Claude Code | 提供终端、IDE、桌面与 Web 界面的编程智能体 | 围绕 Claude Code 工作流提供工具、hooks、skills 与 MCP 等扩展 | 希望使用 Anthropic 支持的多界面编程智能体体验 |
| Cursor | 带智能体和云端智能体工作流的 AI 代码编辑器 | 编辑器原生 rules、skills、plugins、hooks、subagents 与 MCP | 希望把 AI 协作集中在图形化集成编辑器内 |
| OpenCode | 面向终端、桌面和 IDE 的开源编程智能体 | 在可直接使用的客户端内提供模型选择与智能体定制 | 希望使用传统终端/客户端形态的开源编程智能体 |
这张表比较的是产品形态,不是统一排名。真正的选择取决于你更看重可组合框架、官方支持的模型工作流、编辑器体验,还是开箱即用的开源智能体。
常见问题
哪个是最适合 DeepSeek 的编程 Harness?
不存在适合所有团队的唯一答案。如果你需要 DeepSeek 官方的插件优先运行框架,并能接受 developer preview,DeepSeek Harness 是最直接的开源候选。如果稳定性、企业控制或特定编辑器体验更重要,成熟的编辑器或编程智能体产品可能更合适。
Harness 是什么,它如何工作?
在 AI 编程场景中,Harness 是模型外围的软件层,负责提供指令、工具、上下文、权限、持久化和交互界面。它接收任务、组织模型请求、执行获准工具、记录过程,并持续运行到任务结束或需要用户输入。
DeepSeek 有编程订阅计划吗?
DeepSeek Harness 是开源智能体框架,不是“编程套餐”订阅。运行时仍可能产生模型 API、基础设施或第三方服务费用;请核对每个已配置提供方的最新条款与价格。
Harness 这个词是什么意思?
Harness 指让模型能够作为智能体工作的控制与集成层。它类似代码外围的测试框架:提供输入、连接能力、观察输出并执行运行边界。
浏览插件
在进入候选仓库前,可以先按分类、来源记录、仓库状态和维护活动进行比较。