DSH plugin 是什么?DeepSeek Harness 插件生态、插件中心与安装途径一览
DSH plugin 是 DeepSeek Harness 的扩展单元:一个导出 apply 函数的 TypeScript 模块。它把模型、工具、界面、技能都变成可插拔的能力,装进哪个 profile 就只影响哪个环境。
概览
本文回答三个问题:DSH plugin 到底是什么、插件生态里有哪些中心与市场、怎么获取安装。 给一个直观例子:接入本地大模型靠的是模型类插件,给终端加命令靠工具类插件,改 Web UI 的排版与主题靠界面类插件——它们都是同一个 apply 模块形态。想了解宿主 DeepSeek Harness 本身,先看《DeepSeek Harness(DSH)是什么》。
DSH plugin 是什么:一切皆插件架构里的扩展单元
DSH plugin 是一个导出 apply 函数的 TypeScript 模块。 框架加载时调用 apply 并传入 ctx 上下文,插件通过 ctx 注册能力(来源)。在 DeepSeek Harness「一切皆插件」的架构里,模型接入、工具、界面、技能、MCP 服务、钩子策略、协议桥接、子智能体,甚至整包发行版都通过插件接入,不写死在内核。apply 是插件的入口函数,框架加载插件时调用它;插件在 apply 里通过 ctx 完成注册,之后你在界面上看到的能力,就是这些注册项的体现。
插件源码的最小形态只有几行,入口就是 apply(来源):
// 一个最简单的 DSH plugin
export const apply = (ctx) => {
ctx.logger.info('plugin loaded');
ctx.command('hello', 'say hello').action(() => 'Hello, DSH!');
};
启动时框架按依赖树顺序加载插件:先解析 profile 的依赖声明,再逐个调用 apply(ctx),插件在 ctx 上注册命令、服务、界面组件或钩子。你看到的「插件装好了」,就是这些注册项已经挂进运行时。ctx 是插件与宿主唯一的交互面——读配置、写日志、发命令、调服务都走它,所以官方文档强调:理解了 ctx,就理解了插件的运作机制。
插件用 name 命名、用 inject 声明依赖、用 Config schema 接受配置。装进哪个 profile 就只影响哪个环境:内置的 web 和 headless 互不干扰。插件随项目以 npm 包或 GitHub 引用两种形式分发,装完用 dsh --dump-config 能在组合后的配置树里看到它注册的内容;同一个插件装进 web 和 headless 是两个独立实例,各自运行互不影响。
DSH plugin 插件生态:插件中心与插件市场有哪些
获取 DSH plugin 有四个入口:社区插件市场、官网插件中心、GitHub 与 npm。 逐个认识:
- DSH Plugin Hub(社区插件市场):dsh-plugin.org 团队构建的社区插件市场 DSH plugin,内置在「设置 → 插件中心」,收录 4,401 个人工精选插件,数据与官网每日同步——无需离开应用就能浏览、搜索、一键安装/升级/卸载(来源)。详细使用看《DSH Plugin Hub 插件市场介绍与安装》。
- dsh-plugin.org 官网插件中心:在浏览器里按分类浏览社区插件,每个插件的详情页都带一行安装命令,复制即可装。
- GitHub:插件以
github:用户名/仓库名引用安装,适合直接看源码、尝鲜还没发布的新插件。 - npm registry:已发布的插件直接用包名安装。
注意:dsh-plugin.org 与 DSH Plugin Hub 都是社区维护的项目,与 DeepSeek AI 无隶属关系(来源)。Hub 里每个插件的详情页都会标明来源(npm 或 GitHub)与兼容的 DSH 版本,安装前先核对版本号;新收录插件会显示 unconfirmed 验证状态,人工核实后转 verified,挑插件时可以留意。四个入口的分工可以这样理解:Hub 与官网是「发现」入口,GitHub 与 npm 是「来源」——详情页的安装命令最终指向后两者,来源写在哪,插件就装自哪里。
四个入口不是互斥的,按场景选即可:日常找插件用 Hub 最省事,装完还能看到验证状态与兼容版本;想确认某个插件的真实来源,看官网详情页最权威;要尝鲜没发布的预览版、或自己写插件分发给别人,走 GitHub 引用;追求稳定,选 npm 发布的正式版本号。Hub 里的来源标注与版本信息,本质就是帮你在这些入口之间做判断的材料,安装前扫一眼,能避开大部分「装完不生效」的坑。
DSH plugin 安装与获取的途径
装插件统一走一条命令:dsh plugin --profile web add <包名或地址>。 对应上面的入口,有四种装法:
- 从官网插件中心:打开插件详情页,复制安装命令回终端执行。
- 从 DSH Plugin Hub:在插件中心直接点安装,弹窗实时显示进度,装完即生效。
- 从 GitHub:
dsh plugin --profile web add github:用户名/仓库名。 - 从 npm:
dsh plugin --profile web add <包名>。
装之前先确认三件事,能把大多数失败挡在门外:一是 DSH 核心已经跑通、web profile 已完成初始化;二是网络能访问 npm registry 或 GitHub——下载慢或超时,看《DSH 插件下载提速:镜像与代理》;三是从 Hub 安装时,插件标注的兼容 DSH 版本与你的核心版本对得上。
前提是先跑通 DSH 本体(npx @deepseek-ai/dsh web),web profile 初始化后才能装插件(来源)。命令细节看《DSH plugin 怎么安装》。装完用 dsh plugin --profile web list 复查插件是否在列,用 dsh --dump-config 确认配置生效;安装过程报错(下载失败、权限问题等)的排查,看《DeepSeek Harness 安装报错排查》。
下一步
还没装 DSH 就先看《DeepSeek Harness 怎么安装》,装完后到 DSH Plugin Hub 的插件中心里挑几个插件试试;想自己写一个,看《DSH plugin 怎么开发》。
常见问题
是一个导出 apply 函数的 TypeScript 模块:框架加载时调用 apply 并传入 ctx 上下文,插件通过 ctx 注册能力。在「一切皆插件」架构里,模型、工具、界面、技能都通过插件接入。
主要有三个:DSH Plugin Hub 社区插件市场(应用内置、收录 4,805 个插件)、dsh-plugin.org 官网插件中心(浏览器里分类浏览)、以及 GitHub 与 npm 仓库本身。
统一命令 dsh plugin --profile web add <包名或地址>;可以从官网详情页复制安装命令、在 DSH Plugin Hub 内一键安装,也可以直接写 github: 引用或 npm 包名。
无隶属关系。DSH Plugin Hub 与 dsh-plugin.org 都是社区维护的项目,收录的每个插件都标注兼容版本与人工验证状态,来源可溯。
来源
- DeepSeek Harness 官方文档 - 第一个插件· deepseek-harness
- dshplugin/dsh-plugin-hub· dshplugin
- dsh CLI README· deepseek-ai