前言¶
在 DeepSeek Harness (DSH) 生态中,针对 XDSP 前端项目的版本管理与模块发布,通常需要执行 yarn transpile 和 npm publish 等串行步骤。手动操作不仅耗时,还容易在多模块发布时出现版本冲突或发布中断。dsh-publish-skill 旨在将这一流程封装为 DSH 的 Skill,使其能直接在对话环境中被调用。
是什么¶
dsh-publish-skill 是一个为 DeepSeek Harness 注册的插件,提供仅限用户调用的 /publish-skill 技能。该插件由 WonderfulEdge 维护,采用 MIT 许可证,核心价值在于实现 XDSP 前端模块的顺序化、受控发布。
核心功能¶
该插件提供以下具体能力:
* 全量发布:对 packages/ 目录下的所有模块进行发布。
* 断点续发:利用 START_PACKAGE 参数,从上一个发布失败的模块继续执行。
* 单模块发布:利用 PACKAGE 参数,仅发布指定的单个模块。
* 统一版本管理:自动修改目标模块 package.json 顶层的 version 字段。
* 严格串行执行:确保 yarn transpile 和 npm publish 按顺序执行,不并发。
* 发布前确认:首次发布前会确认版本号与有序模块列表。
* 跳过编译检查:只要 transpile 阶段无错误,即忽略 TypeScript 编译结果并直接发布当前模块。
* 无副作用操作:不自动提交 Git、不修改 lockfile、不自动登录 npm 或更改 registry。
安装与启用¶
插件安装目标是 web profile,不包含浏览器 bundle。安装后需重启当前 Web Harness 进程以使 profile 重新组合。
安装命令:
dsh plugin --profile web add github:WonderfulEdge/dsh-publish-skill
若需从本地目录安装,可执行:
dsh plugin --profile web add ./publish-skill
典型用法¶
技能声明了 disable-model-invocation: true,模型不会自行选择它,必须由用户输入指令触发。
全量发布:
/publish-skill TARGET_VERSION=2.1.4-beta.0
从指定模块续发:
/publish-skill TARGET_VERSION=2.1.4-beta.0 START_PACKAGE=xdsp-chatbi
只发布一个模块:
/publish-skill TARGET_VERSION=2.1.4-beta.0 PACKAGE=xdsp-bi
若未提供 TARGET_VERSION,技能会先询问版本号,不会自行猜测。
适用场景与注意¶
- 加载机制:技能仅通过用户输入
/publish-skill时加载。 - 权限与安全:插件以当前 DSH 进程的权限运行。安装前应检查源码与许可证(MIT)。
- 生态说明:该插件收录于社区目录(如 awesome-dsh-plugin.com),与 DeepSeek 或幻方无官方从属关系。
总结¶
dsh-publish-skill 通过串行化执行和手动确认机制,解决了 XDSP 前端模块发布中的版本管理与并发问题,适合需要在 DSH 环境中自动化发布流程的开发者使用。
- 目录页: https://www.skillhub.cn/plugins/WonderfulEdge/dsh-publish-skill
- 源码: https://github.com/WonderfulEdge/dsh-publish-skill