DeepSeek Harness:把 Agent 的身体开源了
DeepSeek 在 2026 年 8 月以 MIT 协议开源了 Harness:模型、工具、沙箱、界面全是可替换插件。本文讲清它的四种预设、模型无关设计与开发者预览阶段的真实限制。
模型是大脑,Harness 是身体。2026 年 8 月 13 日,DeepSeek 把这具身体开源了,用的是 MIT 协议——这是它和之前那些"开源模型"最不一样的地方。
为什么"身体"突然成了竞争点
一个模型要在真实环境里干活,中间需要一层东西:把自然语言翻译成工具调用、把工具返回塞回上下文、管住会话长度、限制命令能碰到的文件、在失败时决定重试还是停下。
这一层过去各家自己写,写得好坏直接决定体验。同一张榜单上,同一个模型跑不同 Harness,任务完成率、延迟、成本都能拉开差距。于是行业里的说法从"模型即产品"变成了"Model + Harness = Agent"。
DeepSeek Harness(命令行里叫 dsh)就是这个公式的开源实现。它不是模型,是模型与文件系统、shell、编辑器、浏览器之间的调度层。
一切皆插件,连主循环都能换
它的架构只有一个原则:能换的都做成插件。
模型适配器是插件,工具是插件,沙箱是插件,会话存储是插件,连 agent loop 本身都能替换,界面也能。底下用的是 Cordis 插件内核,一个已经在生产环境跑了四年的框架。
这么设计的好处是"改造点"变得明确。想接自建推理网关,写一个 provider 插件;想换一套工具集,装一组工具插件;想试不同的循环策略,换 loop 插件。不用改源码,也不用等官方排期。
代价是理解成本。插件之间的依赖、事件、配置分层,需要花时间摸清楚。对只想"装一个 Agent 用起来"的人来说,这套东西偏底层。
四种预设,四种取舍

图 1 预设不是等级,是取舍:工具越少越可预测,工具越全越能干活
标准模式是完整形态:文件读写、shell、文件与网页搜索、技能、规划、目标、子代理、工作流,一套齐。
极简模式只留两个工具:bash 和 str_replace_editor。这不是给新手用的,而是 DeepSeek 自己跑代码基准时的配置——把变量压到最低,测出来的才是模型能力。
代码模式换了一种交互方式:不把工具作为独立函数暴露,而是生成一份 TypeScript SDK,让模型直接对着 SDK 写程序。原本要五次往返的操作,压成一次调用。省的是往返,也就是延迟和 token。
创造模式在标准模式之上加了运行时检查、插件实验和预设编写指导,面向的是要自己做一套 Agent 形态的人。
选预设的判断很直接:任务确定性高、要可复现,往极简走;任务开放、要它自己找路,往标准走;在意成本与延迟,试代码模式。
模型无关,这一点比想象中重要
它的 provider 目录覆盖近 40 家,包括 Anthropic、OpenAI、AWS Bedrock、Azure、Google,也包括 DeepSeek 自己,以及任何兼容 OpenAI 接口的自建网关。
更特别的是两个子代理提供方:可以把任务直接转交给 Claude Code 或 Codex,方式是解析 PATH 里的可执行文件。两个默认关闭,需要你自己装好、登录好。
这个设计的意味很清楚——它不指望你只用自己的模型,而是承认"不同任务该用不同 Agent"。编排层留在自己手里,执行可以外包。
它还读 AGENTS.md 与 CLAUDE.md,支持 MCP 客户端和 Agent Client Protocol。这些细节说明它是奔着"成为公共底座"去的,而不是做一个封闭产品。
只追加的会话日志
这是架构上最值得抄的一点。
它维护一份只追加的日志,所有抵达模型的请求内容都必须能从这份日志里还原。会话恢复、分叉、回放、转录、遥测、Web 界面,全部建立在这同一条事件流上。
好处是行为可审计。你想知道某一步为什么走了弯路,不用猜——日志里有当时的完整上下文。对调试 Agent 来说,这比任何可视化都管用。
沙箱:不靠自觉,靠系统限制
本地执行时,它把子进程分别封在 Linux Landlock、macOS Seatbelt、Windows ACL 受限令牌里。这是操作系统级的约束,不是"提示模型别乱来"。
对要把它接进企业环境的人来说,这一层比模型跑分更值得看。
现实:它还是开发者预览
必须说清楚:v0.1 是开发者预览,官方明确会有破坏性变更。0.1.x 的配置结构和插件 API 都还在动,升级前要读 changelog,最好锁版本。
另一个特点是没有 PR 通道——官方暂时不接受外部 Pull Request,扩展只能走插件。这是很硬的态度:API 是契约,其他都别碰。
社区长得很快,插件数以千计,国家超算互联网上线了它,QQ Bot 也接了它。但"生态热"不等于"能上生产"。面向客户的关键系统,现在还不该押在它上面。
和 Claude Code、LangChain 的位置差别
和 Claude Code 比,它不是产品,是底座。Claude Code 开箱即用、规则体系成熟;dsh 要你自己搭,但每一层都能换。
和 LangChain、CrewAI 比,它是运行时而不是库。
如果你只是想找个顺手的成品编码 Agent,而不是自己搭一套运行时,TRAE 或 Qoder CN 这类产品更合适。LangChain 帮你组织调用链,CrewAI 帮你定义角色;dsh 管的是整个生命周期——循环、沙箱、会话、界面,层级更靠下。
适合谁
适合三类人:想自己造一个编码 Agent 的团队;需要在多个模型之间做 A/B、又不想重写工具层的工程组织;以及要把 Agent 接进内网、必须自己掌控沙箱与日志的企业。
不适合两类:想开箱即用的人;以及需要稳定 API 承诺的生产系统。
一句话:它把"Agent 的身体"变成了公共基础设施。这件事的价值,可能要过一两年才会被完全看见。
登录后可点赞、收藏与反馈。