ARTICLE · 1308761
万物皆插件:DeepSeek Harness 真正厉害的不是功能,是这套组装逻辑
万物皆插件:DeepSeek Harness 真正厉害的不是功能,是这套组装逻辑别人给你一个做好的 Agent,DeepSeek Harness 给你的是一堆零件和一 张组装图 这是它跟市面上大多数 Agent 工具的根本区别。Claude Code 这类工具是一个固定回路:能力、入口、流程都定好了,你只能在它留好的位置上挂东西。Harness 反过来:它几乎不规定你的 Agent 应该长什么样,只给你组装的办法。你得到的不是一个产品,是组装权。 理解了这一点,才算理解了 Harness。 内核极简:它几乎什么都不干 Harness 底下有个叫 Cordis 的内核,它只干三件事:插件的加载、卸载和依赖关系。除此之外,它不承载任何 Agent 的具体能力。 这句话的份量在于“任何”两个字。模型适配器是插件,工具注册表是插件,会话日志是插件,提示词组装是插件,连 Agent 循环本身都是插件——官方文档里,默认循环只是一个叫 core/agent-loop 的驱动器实现。 更关键的是另一句:不存在需要打补丁的特权内核。扩展 Harness 的方式,是把新插件挂载到已有插件旁边;而每一项注册都是副作用,在它所属的插件卸载时自动撤销。装上就有,卸掉就干净,没有改坏内核这种事。 所以“万物皆插件”不是一句口号,是它的结构本身。 组装机制:你的 Agent 是一棵可以逐项替换的配置树 运行中的 dsh,是一棵由启动时按序叠加的各层组成的插件树。 profile 是这棵树的具名组装,存在 Harness home 里。它列出自己叠放的组合包,存放自己安装的树外插件,并保存你自己的 cordis.patch.yml。发行版自带五个模板:web、headless、sdk、sdk-minimal、acp——分别对应浏览器界面、一次性运行、SDK 服务、极简 SDK、自动化协议。 组合包是 Cordis 配置项及其挂载代码的分发格式,它插入的内容,始终可以被它上层的 patch 改写。各层依次应用:profile 里有序的组合包、它的 cordis.patch.yml、home patch,最后是启动时传的 --patch。一条 patch 按 id 定位某个条目,替换它的整个配置,或者插入一个新条目。 最能证明“可定制不是口号”的是这一条命令: dsh --profile web --dump-config 它会打印出你这台机器启动的整棵配置树。而文档明确说了:它打印出的任何条目,都可以由你自己的 patch 替换。你看到什么,就能改什么。 共享的第一层叫 dsh-base,是 web、headless、sdk、acp 四个 profile 共用的:模型适配器、工具、持久化、沙箱与审批策略、设置、凭据、遥测。往上,web 加浏览器应用,headless 加一次性运行器,sdk 加 SDK 服务器,acp 加自动化服务器。换一个 profile,等于换一套组装方案,但底座是同一套。 
Seam:换一个零件,整个产品跟着变 官方文档里有个概念叫 seam,翻译过来就是“接缝”:一项可替换的能力,由三样东西组成——声明接口的定义、实现它的提供方、使用它的消费方。 seam 正是“替换一个提供方就能改变整个产品”的原因。文档举了一个很说明问题的例子:文件系统与进程提供方共享同一个执行世界,所以把它们指向远程沙箱,Bash、终端、代码补全就一起搬了过去,不需要为提供方专门 fork 一个版本。 再看一个更直观的例子。DeepSeek 的模型本身是纯文本的,但生态里有视觉插件:粘贴一张图片,拿回结构化 JSON 证据,包括文字识别、版面、语义。模型没变,能力变了——因为“看图片”这个能力是插件,不是模型自带的。 这就是组装逻辑的威力:你想改的从来不是模型本身,而是模型周围的那一圈能力。 生态即证据:连桌面和皮肤都是插件 插件中心页抓取时有 1382 个项目。这个数字本身不重要,重要的是它长出来的东西五花八门到什么程度: 桌面本身也是插件。侧边栏是个开放底座,第三方可以注册新的侧边栏页面,内置文件渲染、终端、侧边对话、Git、子代理页面。插件市场就在 Web UI 里,可以浏览、搜索、一键安装。 IM 机器人插件支持 9 个通道:飞书、微信、钉钉、企业微信、QQ、Slack、Telegram、Discord、WhatsApp,扫码或凭据接入。还有插件让你在电脑上跑起 dsh web,手机扫码就同步访问,局域网和公网都行,实时同屏。 连“长什么样”都是插件:有玻璃质感主题插件,顶栏、侧边栏、输入框、统计行、轨迹视图全变成磨砂玻璃片,模糊度、背景都能在设置卡片里调;关掉开关就回到原生界面,不改 Harness 任何一行源码。 普通人能用它做出什么:几个已经看得到的效果 架构讲得再好,不如几个具体效果。以下分两类:官方演示的,和生态里已经有的插件。官方演示代表“这条路走得通”,生态插件代表“已经有人做出来了”。但社区插件质量参差,装之前看一下说明和更新情况。 一句话,得到一个能用的工具。Creator Mode 的官方演示就是番茄钟:25 分钟专注、5 分钟休息,能开始、暂停、重置。你不用学框架,把需求说清楚,工具就长出来了。对普通人来说,这是第一次“做工具”不需要先成为开发者。 一句话,得到一个能玩的东西。官方示例还包括沙盒游戏、3D 可视化、设计工作台。同样是描述需求,出来的是可以交互的东西,不是一段文字回答。 电脑上的工作台,装进口袋。有插件让你在电脑上跑起 dsh web,手机扫码就同步访问,局域网和公网都行,实时同屏。工作台不再被绑在桌子前。但要提醒一句:公网访问等于把本机服务暴露出去,开之前先确认访问控制,别裸奔。 在聊天软件里指挥它。IM 机器人插件支持 9 个通道,飞书、微信、钉钉、企业微信、QQ、Slack、Telegram、Discord、WhatsApp,扫码或凭据接入。接上之后,在每天用的聊天软件里发一句话就是下单,定时任务的结果也推到同一个地方。 给纯文本模型外挂一双眼睛。视觉插件让 DeepSeek 这样的纯文本模型也能处理图片:粘贴一张截图或表格照片,拿回结构化结果,包括文字识别、版面、语义。模型没变,能力是插件给的。 给不能联网的模型补上搜索。免费的联网搜索插件,不用注册、不用 API Key,问网页或者 X,拿回带引用的结构化证据。模型本身不会上网,插件让它会了。 表格、文档、幻灯片装进同一个运行时。Office 插件把表格、文档、幻灯片、画布、关系表放进一个运行时,数据联通、改动留版本、多 Agent 还能协作。以前要在几个软件之间倒腾的事,在一个工作台里做完。 这七个效果有一个共同点:没有一个是靠换模型实现的,全是换插件、加插件。 安装也有三条路:从 Git 来源发 bundle,装完重启 dsh web;或者在设置 → 插件里直接加 github:用户名/仓库;或者在控制台里浏览、启用、停用、卸载、检查更新。命令行也一样: dsh plugin --profile web add "github:dsh-external/dsh-session-search#main 
" 对普通人意味着什么:三层玩法,逐层往上 第一层,用现成的。装 Node.js,跑 npx @deepseek-ai/dsh web,浏览器里打开 Web UI,配好 deepseek-flash 模型,然后在插件市场里一键装东西。这一层不需要你懂架构。 第二层,改配置。不改源码,只改配置:换一个 profile,或者写一条 patch,替换配置树里的某一项。看到什么,就能改什么。 第三层,造零件。Creator Mode 是这层的入口:用日常语言描述一个工具,Agent 把它写成插件、装上、验证能用。官方演示是番茄钟。再往下,才是自己写插件。 这三层是同一套逻辑的不同深度。你可以一直停在第一层,也可以慢慢往下走——但方向是一致的:你的 Agent 是你拼出来的,不是领来的。 顺带说一句,11 月 1 日 Harness 团队那篇 130 万浏览的 Super-agent 长文,也是这种组装思维的延伸:一个人只能同时处理 3 到 5 个会话,所以把 Agent 拆成 Router 分派、Workers 后台并行,用模块拼出一个连续实体。但那是设计方向,不是现货,别把它写进“现在就能用”的清单。 代价与边界:组装权是有代价的 第一,预览版。官方明确说了会有不兼容的变化,插件、配置、界面都可能变。别在它上面搭“绝对不能断”的关键流程。 第二,组合责任在你。可组装意味着装得多、配得乱也会出问题。先想清楚你要什么能力,再装对应的插件,别把市场当应用商店无脑全装。 第三,安全须知先读。Harness 能调工具、读写文件、跑代码,沙箱与审批策略本身也是插件——先配好它们,再放开权限。别一上来就让它碰重要账号。 今晚就能做的第一步 今晚就做三件事:跑起 Web UI,跑一句 dump-config 看一眼自己的配置树,装第一个插件。看一眼配置树这个动作本身,就是理解 Harness 的最快方式:你会直观地看到,你的 Agent 是由哪些零件拼成的。 然后回答一个问题:你最想换掉、或者加上的第一个零件是什么?留言说说,我按点赞最高的几个,下期写具体做法。

















































































