当基础工具、MCP 和 Skills 已经能够接入 DeepSeek Harness 后,下一步便是理解这些能力如何被统一组织和扩展。其关键在于底层的 Cordis 插件机制。下面将从运行原理、社区插件安装和自定义插件开发三个方面,逐步说明如何完善 DeepSeek Harness 的功能体系。
上篇文章详细介绍了 DeepSeek Harness 接入工具、MCP 和 Skills 的完整方法。大家如果跟着实操过,应该已经感受到它的灵活:工具能接、MCP 能接、Skills 也能接。 这些能力背后真正支撑它们自由组合、按需扩展的,是 DeepSeek Harness 底层的 Cordis 插件机制。
本期笔者就从 Cordis 插件机制讲起,按三步走:
读完这一篇,大家不仅能“会用插件”,还能“自己造插件”。
DeepSeek Harness 构建在一个名为 Cordis 的元框架之上。它的所有功能——包括模型适配器、工具注册表、会话日志、Agent 循环,甚至 Web 界面本身——全部都是可插拔的插件。也就是说大家想换模型、换工具、换交互方式,都可以通过安装插件来增加或替换功能。
大家别看 DeepSeek Harness 目前的 Web 功能与 Codex、Claude Code 相比还没有明显差异,甚至某些功能尚不完备,但这种插件化设计有一个巨大的好处:它能极大地发挥开源社区的力量。短短不到一周,GitHub 上就已经涌现出数千个带有 dsh-plugin 标签的社区插件。
本期笔者将和大家分享两件事:一是如何接入社区插件,让 DeepSeek Harness 变得更强大;二是如何创建一个 DeepSeek Harness 插件,自定义它的能力。
寻找 DeepSeek Harness 插件最直接的方法,就是在 GitHub 上搜索标签 dsh-plugin。几乎所有相关插件都能在这里找到。

不过GitHub 是公开仓库,任何人都可以给项目打标签,因此这些插件的质量参差不齐。笔者在安装插件时,一般会去 Awesome DeepSeek Harness Plugin 这个网站。它由社区维护,收录的插件质量相对较高,而且按功能做了分类,大家可以很方便地找到自己需要的插件。

在安装插件之前,笔者建议大家先把 DeepSeek Harness 全局安装。这样在安装插件时就可以直接使用 dsh 命令,启动 DeepSeek Harness Web 应用时,也不需要再使用笔者第一期文章 DeepSeek Harness 入门很简单(一)——认识 DeepSeek Harness 并安装中介绍的 npx @deepseek-ai/dsh web 或 pnpm dlx @deepseek-ai/dsh web 命令了。
执行如下命令,全局安装 DeepSeek Harness:
npm install --global pnpm
npm install --global @deepseek-ai/[email protected]
安装成功后,使用 dsh --version 命令检查安装版本。以后大家都可以直接通过 dsh web 启动 DeepSeek Harness Web。


接下来学习如何安装插件。如果大家是通过上面介绍的 GitHub 或 Awesome DeepSeek Harness 网站安装插件,一般需要通过命令行完成。例如,安装一个名为 dsh-deep-whale 的插件时,如果通过 GitHub 安装,可以查看该插件 GitHub 页面上的 README 文档,然后在命令行中执行对应命令:

如果想在 Awesome DeepSeek Harness 网站中安装插件,可以点击进入要安装插件的介绍页,里面会列出该插件的安装方式。例如,从 Awesome DeepSeek Harness 安装一个名为 dsh-agent-teams 的插件:

不过如果大家对这些命令行并不熟悉,还有一个更简单的方式:直接把该插件的 GitHub 仓库地址丢给 DeepSeek Harness,让大模型自动读取仓库的 README 项目介绍文件、查看安装方式并执行安装命令。安装完成后,按照 DeepSeek Harness 的提示重新执行 dsh web 命令即可。

这一节笔者来介绍三款自己在日常工作中常用的插件,包括它们的安装与使用。
dsh-web-ui 插件是对 DeepSeek Harness 原生 Web 应用进行增强的插件。集成该插件后,DeepSeek Harness Web 会增加任务看板、Git 管理、工作台、状态信息、皮肤主题、桌宠等一系列功能。可以说,增强后的 DeepSeek Harness Web 与 Cursor 这类专用智能体软件相比也毫不逊色。
该插件的安装过程很简单。如果大家对命令行不熟悉,可以直接把该插件的 GitHub 地址发给 DeepSeek Harness,让它自行安装;如果想通过命令安装,可以执行如下命令:
dsh plugin --profile web add @linxin666/dsh-web-all@latest # 安装该件
如果在安装过程中出现如下报错:

这是因为 pnpm 从 v10 版本开始,会通过安全策略阻止所有依赖包的构建脚本执行。大家可以先执行如下命令解决:
dsh plugin --profile web approve-builds
根据提示,对报错中列出的 cloudflared、cpu-features、node-pty、ssh2 选择允许(Approve)即可(按 a 全选,再按 y 同意)。
然后再次执行 dsh plugin --profile web add @linxin666/dsh-web-all@latest 安装命令即可。

运行完成后,大家执行 dsh web 命令打开 DeepSeek Harness Web 应用。先不说这个插件对 Web 的修改:

它还有特别多的额外功能,例如任务看板、侧边卡片、Web 插件、电子宠物、会话管理等。大家可以打开设置,按需启动或关闭不同功能。

这些功能中,笔者最喜欢用的是任务看板。大家可以直接新建任务,写清楚要让 DeepSeek Harness 做什么,任务从开始到完成的进度都会显示在看板里,非常清晰。

这个插件笔者使用下来感觉非常强悍,功能也非常多。剩下的功能大家可以上手试试,非常有意思~
如果大家经常使用 Claude Code 或 Codex,应该对多智能体协作不陌生。多智能体协作可以把复杂任务合理拆解,分配给多个子智能体,从而避免单一智能体上下文过长导致效果变差。
dsh-agent-teams 插件进一步增强了 DeepSeek Harness Web 的多智能体协作能力,能够让 DeepSeek Harness 同时拉起多个智能体各自干活,最终把结果统一汇总到一个队长智能体。


大家可以执行如下命令安装该插件:
dsh plugin --profile web add --save-exact @nanmicoder/[email protected]
安装成功后,重新执行 dsh web 启动 DeepSeek Harness Web 服务。Agent Teams 的原理非常简单:设置一个 Captain 队长智能体,负责拆分任务、分配任务并做汇总;下面的成员智能体各自处理不同问题。
比如,笔者使用 Agent Teams 开发了一个小游戏,创建了 3 个成员负责不同维度:
使用agent teams 编写一个3D web 国际象棋小游戏
代码Agent: 主要负责编写3D国际象棋小游戏,注意交互逻辑、动画效果等问题
代码质量Agent:检查项目结构、依赖管理和代码可维护性
安全 Agent:检查敏感信息泄露、依赖风险和明显的安全隐患
任务跑起来后,可以在右侧活动面板看到 3 个子智能体已按任务编排并开始工作。等它们都完成后,结果会统一回到 Captain,由 Captain 汇总并给出最终报告。
看一下生成效果,非常高级!

更牛的是如果用户不明确指定 Agent Teams 删除这个团队,创建好的这三个角色的团队会一直保留,后续可以按需指派任务。不过大家也需要注意:这种多智能体角色任务适合需要合理规划、分解的复杂任务。如果只是一个小任务,没必要使用,否则在等待时间和 Token 消耗上都是很大的开销。(笔者的钱包顶不住)
看到这里,相信大家已经感受到 DeepSeek Harness 插件功能非常强大。但也能看到,随着插件数量越来越多,光靠 GitHub 找插件其实挺麻烦的。
不过不要低估社区的脑洞,社区人员开发了一个 dsh-market 插件,这个插件就是用来寻找 DeepSeek 插件的插件。
执行如下命令安装这个插件:
npx @deepseek-ai/dsh plugin --profile web add @dsh-market/plugin

效果如下,常用功能有两个。第一个是个性化推荐:插件知道已经安装了什么,每次都会推荐一些新插件。第二个是按功能关键词搜索插件:比如想找一个 UI 插件,只要搜索 ui,就可以找到插件,还可以直接安装。是不是非常方便?再也不用担心插件安装问题了。

虽然现在插件已经非常多了,但如果大家想实现一些插件市场还没有的功能,该怎么办?其实也很简单——别忘了,DeepSeek Harness 还有创设模式。在创设模式下,可以通过自然语言直接与 DeepSeek Harness 对话,让它帮你写一个插件。下面笔者通过一个简单例子来说明。
首先,切换到创设模式,把推理性能开到最大,并开启完全权限:

举个例子:如果想修改 DeepSeek Harness Web 左侧的图标,把它变成“智能工作台”,该怎么做?(对 DeepSeek Harness 来说,Web UI 展示本身也是一个插件。)可以发送如下提示词:
请为deepseek harness web创造一个新的cordis插件:该插件可以将deepseek harness web 左侧边栏上方的deepseek harness名称修改为智能工作台,请帮我实现该插件

执行完成后,DeepSeek Harness 会为你创建一个动态插件,用来修改 DeepSeek Harness 的面板展示。需要点击对勾允许此版本,就能看到展示效果了。


不过,这种动态插件体系只在当前应用生效。当你关闭这次会话,重新执行 dsh web 后,效果就会消失。如果想持久化保存,需要继续与 DeepSeek Harness 对话:
我想将该插件创建为一个本地的deepseek harness web的插件包,以后每次加载deepseek harness web会默认加载该插件,请帮我实现
整个过程完成后,大家可以看到 Web 已经完成了持久化修改。同时,在工作区里,DeepSeek Harness Web 会生成一个名为 dsh-plugin-smart-workbench 的插件,并附带详细的 README 文档,介绍插件的用途、安装和卸载方法。



是不是非常好玩?大家还在等什么?赶紧发挥自己的创意,动手制作更多 DeepSeek Harness 插件吧!
本文围绕“DeepSeek Harness 接入插件”展开:先介绍了其底层 Cordis 插件机制,说明模型适配器、工具、会话、Agent 循环乃至 Web UI 都是插件;再带大家寻找并安装社区插件,推荐了 dsh-web-ui、dsh-agent-teams、dsh-market 三款实用插件;最后通过创设模式,用自然语言快速生成并持久化了一个自定义插件。至此,你已能“用插件”,也能“造插件”。 不过,插件为什么能如此灵活组合?Cordis 的注册、依赖与生命周期又是如何运转的?以后章节笔者将深入 DeepSeek Harness 插件体系,带大家知其然更知其所以然。