dsh-plugin-development:跨宿主可移植的 DSH 插件开发与审计 Skill

前言

DeepSeek Harness(DSH)采用「一切皆插件」的架构,插件形态并不单一:既有进程内动态 Cordis 插件,也有随 DSH 仓库交付的工作区包,还有带 dsh.bundlecordis.patch.yml 的可安装 bundle。三种模式在 Loader 组合、生命周期、验收证据上各有差异,单靠通用编码助手很难按模式给出可落地的步骤。

下面介绍社区项目 w2112515/dsh-plugin-development。它是一个可移植的 Agent Skill,面向 DSH 插件的设计、实现、打包、审查与诊断;同一套 canonical 目录可在 Codex、Claude Code 与 DSH 中共用,并可选通过 DSH bundle 适配器做 profile 级安装与可逆卸载。

这是什么

dsh-plugin-development 由维护者 w2112515 发布,在 SkillHub 分类为工作流,当前版本 v0.2.0-beta.1,GitHub 14 stars,许可证 MIT

项目定位:Portable Agent Skill for developing and auditing DeepSeek Harness plugins, with an optional profile-installable DSH bundle adapter。它不新增 MCP 服务器、账号或远程服务依赖;仓库标注为 Beta 且非官方,与 DeepSeek / 幻方无从属关系,具体约束仍以 DeepSeek Harness 官方文档为准。

项目结构

仓库按职责拆成几块,便于在不同宿主间复用:

部分 用途
skills/dsh-plugin-development 可移植 Skill 本体,含按需加载的 reference 与脚本
skills/dsh-plugin-development/agents/openai.yaml 可选 Codex UI 元数据,不 fork Skill 指令
index.jscordis.patch.yml 可选 DSH bundle 适配器,向 profile 注册 canonical Skill
.codex-plugin / .claude-plugin 故意缺失;各宿主可直接使用 Skill,无需额外插件包

核心功能

Skill 在动手前会先区分三种 DSH 插件模式,再套用对应规则:

DSH 插件模式 典型请求 完成证据
动态运行时 Cordis 插件 用 live Cordis 工具定义进程内 Host 或 Client 行为 live provider 与 Slot 检查、define/run 状态、最终诊断
DSH 工作区插件 在 DSH 仓库内增改随仓交付的包 当前仓库权威来源、聚焦测试、真实 Loader 组合、生命周期证明、产品可见时的快照
可安装 DSH bundle 对外发布带 dsh.bundlecordis.patch.yml 的包 打包文件、隔离 profile 安装、--dump-config、打包启动与清理证据

工作流还覆盖 Loader 导出失败、Service Definition/Provider/Consumer 归属、模型可见日志、Client Slots、CLI 面、配置、生命周期 disposal、profile 优先级、Git 构建风险,以及仅审计场景的授权边界。市场上架与整合包属于独立项目 dsh-marketplace-publish

若宿主缺少 live Cordis 检查、define、run 等动态工具,Skill 会停在源码级设计或诊断,并说明激活未经验证。

仓库附带只读辅助脚本,供作者做早期检查:

node skills/dsh-plugin-development/scripts/check-artifact.mjs workspace-function path/to/index.ts
node skills/dsh-plugin-development/scripts/check-artifact.mjs bundle path/to/package

安装与启用

安装方式分两类:直接挂载 canonical Skill 目录,或通过可选 DSH bundle 让 dsh plugin 管理 profile 级安装。

在 DSH 中直接发现 Skill

DSH 可从以下路径发现同一目录:

  • <repo>/.dsh/skills/dsh-plugin-development
  • <repo>/.agents/skills/dsh-plugin-development(与 Codex 共用)
  • <dshHome>/skills/dsh-plugin-development

项目内 Skill 条目可按宿主正常优先级覆盖可选 bundle 的同名注册;卸载 bundle 仅 dispose 其注册,不会删除单独安装的个人或项目 Skill 目录。

可选 DSH bundle 适配器

仅在需要 profile 级安装、版本管理、组合与可逆移除时使用 bundle。官方 README 给出的安装命令如下。

安装当前 v0.2.0-beta.1 发布包:

dsh plugin --profile web add https://github.com/w2112515/dsh-plugin-development/releases/download/v0.2.0-beta.1/dsh-plugin-development-0.2.0-beta.1.tgz
dsh --profile web --dump-config

导出配置中应出现 dsh-plugin-development layer 与 row ID dsh-plugin-development-skill。适配器从打包的 canonical Skill 读取元数据与指令,经 ctx.skills 注册,移除时 dispose 该注册。

本地开发适配器时:

dsh plugin --profile web add .

Git 安装(无需 prepare 或 pnpm allowBuilds,包为纯 JavaScript 与 Markdown):

dsh plugin --profile web add github:w2112515/dsh-plugin-development#v0.2.0-beta.1

更高把握的安装可改用经审查的 commit SHA,而非可移动分支。

Codex 与 Claude Code

同一 canonical 目录也可链接到:

  • Codex:~/.codex/skills/dsh-plugin-development<repo>/.agents/skills/dsh-plugin-development;显式调用 $dsh-plugin-development
  • Claude Code:~/.claude/skills/dsh-plugin-development<repo>/.claude/skills/dsh-plugin-development;显式调用 /dsh-plugin-development

Codex 亦可通过 $skill-installer 安装:

https://github.com/w2112515/dsh-plugin-development/tree/main/skills/dsh-plugin-development

bundle 安装要求 Node ^22.19.0 || >=24.0.0(见 package.jsonengines 字段)。

典型用法

安装或链接 Skill 后,在 DSH 插件相关任务中显式唤起,或依赖其 description 自动匹配。按目标模式推进:

  1. 确认当前任务是动态 Cordis、工作区包还是可安装 bundle。
  2. 按模式收集完成证据(live 检查、Loader 组合、--dump-config、打包启动等)。
  3. 需要早期静态检查时,运行 check-artifact.mjs 对应子命令。

维护者自检可运行:

npm test
npm pack --dry-run

若本地有 DeepSeek Harness 检出,可验证直接发现与 bundle 注册:

node scripts/verify-dsh-runtime.mjs path/to/deepseek-harness

适用场景与注意

适合谁: 正在编写或审查 DSH 插件的开发者;需要在 Codex、Claude Code、DSH 间共用同一套工作流的人;希望用 bundle 做 profile 级安装又不想复制一份 workflow 的 DSH 用户。

使用前注意:

  • 插件以当前 dsh 进程权限运行;安装 bundle 或链接 Skill 前,应阅读仓库源码与 MIT 许可证,确认行为符合预期。
  • 项目为社区 Beta,DeepSeek Harness 仍处 developer preview,manifest、Loader 行为等以官方仓库为准。
  • SkillHub(目录页)是独立社区目录,与 DeepSeek / 幻方无官方从属关系。
  • 格式兼容不能让缺失的工具凭空出现;无 live Cordis 环境时,工作流止于源码级输出。

结尾

dsh-plugin-development 把 DSH 三种插件模式的分工、验收证据与跨宿主 Skill 目录收敛到一处,可选 bundle 适配器则补上 profile 级安装与可逆卸载。若你正在做 DSH 插件开发或审计,可从 SkillHub 目录页或 GitHub 仓库入手:

  • 目录页:https://www.skillhub.cn/plugins/w2112515/dsh-plugin-development
  • GitHub:https://github.com/w2112515/dsh-plugin-development
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜