跳过主要内容
D

dsh-plg (dsh-skill-pack)

dreanzy/dsh-plg/packages/dsh-skill-pack

按工作区控制 skill 可见性:工作区绑定一张具名开关表,模型每轮能自动调用的 skill 随项目而定,不再每轮列出全部已安装 skill。不能与 dsh-skill-scope 同装。

安装

dsh plugin --profile web add github:dreanzy/dsh-plg

该插件位于仓库的 packages/dsh-skill-pack 子路径下。

README

dsh-plg

DeepSeek Harness 插件的单仓库。每个 packages/* 是一个插件包:一个 npm 包、一个 bundle、一个 entry,独立版本、独立发布、独立安装。

结构

packages/
  <包名>/               # 约定 @dreanzy/ 作用域;包名不强制带 plugin- 前缀
    package.json        # name, dsh.bundle.patch, exports, scripts
    cordis.patch.yml    # 一条 insert,id 与包名后缀一致
    tsconfig.json       # 自包含,不 extends 根文件
    src/index.ts        # 服务端入口
    test/*.test.js      # node --test,测编译产物

安装

dsh plugin --profile <profile> add @dreanzy/<包名>

从源码安装(可选,需要 pnpm 允许该包执行构建):

dsh plugin --profile <profile> add "github:dreanzy/dsh-plg#<sha>&path:/packages/dsh-plugin-<name>"

源码安装会在你的机器上执行该包的 prepare 脚本。pnpm ≥10 需要在 profile 的 pnpm-workspace.yaml 里为它加 allowBuilds。只对锁定了 commit 的可信源码这么做。

开发

pnpm install
pnpm typecheck
pnpm test
pnpm build

发布

# 改 packages/<pkg>/package.json 的 version
pnpm --filter @dreanzy/dsh-plugin-<name> publish --access public
git tag dsh-plugin-<name>@<version>

决策记录见 docs/adr/,术语见 GLOSSARY.md。

相关插件