DeepSeek 的 Harness 工具居然做成了这样…
DeepSeek 要做 Harness 的事儿已经公开好几个月了,昨天预览版终于发了。我本身对国内的相关工具很感兴趣,比如 Zcode、Qoder、Trae、Kimi Code 等等,自然不会放过这个 DeepSeek 这个版本。
我一直认为 DeepSeek 的 Harness 应该是类似 Codex 和 Qoder 这样的桌面 App,下载安装,打开 App,设置项目目录,开始工作。昨天安装了 DSH(DeepSeek Harness)发现,这个预览版居然采用了 Kimi Code Web 模式,是个本地 Web 应用。不同的是,DSH 没有终端工具,只能用本地 Web。
安装过程并不复杂,先执行 npm i @deepseek-ai/dsh,再运行 npx @deepseek-ai/dsh web,服务启动后用浏览器访问本机的 3080 端口,http://127.0.0.1:3080 ,你就得到了一个 Harness 工具:探索未至之境,预览版。
未来会不会发桌面版 App?我倾向于有。但目前这个预览版,已经展现出 DeepSeek 的一些独特的创新性。
启动 DSH 之后,可以根据提示直接填写 DeepSeek 的 API Key,也可以在设置里自定义你喜欢的模型,我同时配置了 DeepSeek 和 Kimi Code 的 K3,毕竟最近 K3 是我的新欢 😂
因为 DSH 安装了一整套 Harness 本地服务,所以这个 本地 Web 完全可以操作你的本地文件。它的第一眼很像 Kimi Code Web:左侧是工作区和历史会话,中间是对话,背后连接本地目录与终端。
开始使用之后,二者的差异逐渐浮出水面。
Kimi Code Web 更像把 Coding Agent 放进一个容易上手的图形界面里,是 Web 版的 Codex;DSH 除了做 Coding Agent,还增加了不少自己的特色,比如 Agent 预设、执行轨迹的展示、子 Agent 协作、外部命令展示、完全的插件体系等,都放到了产品的面儿上,“Harness”这个名字也因此变得准确。
模型提供推理和生成能力,Harness 负责工具调用、文件编辑、Shell、上下文管理、任务调度、错误处理和执行记录等等。过去这些能力经常被包裹在产品内部,用户只看到一问一答的窗口。DeepSeek 这次选择把许多工程部件显式化,让人可以看到 Agent 穿着怎样的“机甲”,如何在二进制世界里干活。
最直观的设计是 Agent 预设。DSH 提供了标准、PTC、极简和创造四种内置模式:标准模式覆盖文件编辑、Shell、检索、Skills、计划、目标、子代理和工作流;PTC 模式让模型用 TypeScript 程序组合多步工具操作;极简模式只保留持久 bash 与文本替换编辑器;创造模式则用来实验插件并生成自定义预设。
预设还可以复制后自己修改,Agent 也由此从一个固定产品,变成一组可以选择和调校的能力组合。也就是说,给构建者提供了很大的自定义空间。
DeepSeek Harness 的 Agent 预设:标准、PTC、极简与创造模式
我让 DSH 审查 CatReader 前端代码时,看到顶部同时出现了 4 个子代理和 3 个后台任务。页面会显示任务名称、状态、耗时和 token 用量,主 Agent 仍可继续自己的工作,非常有意思。查了下官方的项目文档,说:当目标与轮次明确时,同一会话可以自动续跑,这更接近所谓“自动 Agent”;它不会另起 Agent,也没有独立评审器。子 Agent、后台任务和自动续跑是三件事,但都在减少长任务里人的等待。这是 Harness 能力。
DeepSeek Harness 同时展示子代理与后台任务的状态、耗时和 token 用量
另一个让我印象深刻的功能是“轨迹”。页面把 Input、Model、Tools 排成时间泳道——这个泳道里的块还可以放大缩小——再按轮次展开 ASSISTANT、TOOL、CONTEXT 等事件,读文件、运行命令、子代理汇报和状态变化都能沿时间顺序查看。注意,它在这里展示的是会话与工具执行轨迹,并非公开模型的完整思维链。
这些“轨迹”对工程工作很有价值:结果错了,可以去查用过什么工具;任务慢了,可以看时间花在模型、调用还是后台代理上,我们还可以在过程里主动进行任务调整。
DeepSeek Harness 轨迹页按轮次展示 Input、Model、Tools 与执行事件
过程中插入新的会话
DSH 强化了它的插件体系:“一切皆插件”,从模型、工具、会话、存储、沙箱到调度与界面,都可以组合使用;底层使用了 Cordis 微内核来管理依赖、服务和事件。用户不需要理解每个内部名词,直接用就得:可以启停插件、打开配置文件,也能围绕某种工作方式复制并改造插件。它更接近一套可扩展的 Agent 运行框架,而不只是给大模型配了一些聊天工具。
和其他的 Agent 类似,全局安装的 Skill 可以开箱即用,完全不需要重复安装,比如墨问 CLI 和 Skills 工具:
这种设计也解释了为什么 DeepSeek 短期内先做了本地 Web。浏览器界面跨平台、迭代快,插件与运行时又能继续驻留在本机,开发者可以随时查看配置、工作区和执行过程。
不过目前这个预览版有一点使用门槛:Node.js、命令行和插件配置仍然构成了一定的学习和使用成本,预览版的完成度也不能按成熟桌面软件来要求。就我自己的使用体验,当前版本的 DSH 最成熟的能力还是编程,我做了几个 Coding 任务,整体效果还挺好的。
DeepSeek Harness 的第一个版本选择了本地 Web 模式,但不乏创新性:前端是轻量级的 Web,背后是预设、插件、子 Agent、后台任务和轨迹,除了写代码做任务,DSH 还展示了模型是怎样变成可以持续工作的 Agent,Agent 本身也是可观察、可组合、可改造的系统,很了不起。
值得用起来,也很期待后续的版本。