🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

工作流技能包 CH3SH-LC/dsh-skill-packdge

DeepSeek Harness
CH3SH-LC75 天前有提交已提供中文文档扫描:含敏感能力

把技能、钩子与工具按工作流打包注册为独立技能

26.8/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/5 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add CH3SH-LC/dsh-skill-packdge
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · skill
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 75 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 20 处,展示前 14 条)
  • 读取本地文件
    lib/index.js:496
    if ((await stat(candidate)).isDirectory()) {
  • 读取本地文件
    lib/index.js:497
    const anchor = candidate === root && !followSymlinks && (await lstat(candidate)).isSymbolicLink() ? resolve(candidate) : await canonicalizeWatchPath(c
  • 读取本地文件
    lib/index.js:648
    data = JSON.parse(await readFile(indexPath, "utf8"));
  • 写入本地文件
    lib/index.js:661
    await writeFile(indexPath, `${JSON.stringify({
  • 读取本地文件
    lib/index.js:678
    entries = await readdir(root.path, {
  • 读取本地文件
    lib/index.js:704
    raw = await readFile(join(dir, PACKDGE_MANIFEST), { encoding: "utf8" });
  • 读取本地文件
    lib/index.js:738
    entries = await readdir(skillsDir, {
  • 读取本地文件
    lib/types/index.js:511
    const info = await stat(candidate);
  • 读取本地文件
    lib/types/index.js:515
    && (await lstat(candidate)).isSymbolicLink();
  • 读取本地文件
    lib/types/index.js:669
    data = JSON.parse(await readFile(indexPath, 'utf8'));
  • 写入本地文件
    lib/types/index.js:684
    await writeFile(indexPath, `${JSON.stringify({ ...data, inventory }, null, 2)}\n`, 'utf8');
  • 读取本地文件
    lib/types/index.js:699
    entries = await readdir(root.path, { withFileTypes: true, encoding: 'utf8' });
  • 读取本地文件
    lib/types/index.js:723
    raw = await readFile(join(dir, PACKDGE_MANIFEST), { encoding: 'utf8' });
  • 读取本地文件
    lib/types/index.js:756
    entries = await readdir(skillsDir, { withFileTypes: true, encoding: 'utf8' });
扫描于 2026/10/31(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery@deepseek-ai/cordis@deepseek-ai/cordis-plugin-include@deepseek-ai/cordis-plugin-loader@deepseek-ai/dsh-fs@deepseek-ai/dsh-home-paths@deepseek-ai/dsh-invariants@deepseek-ai/dsh-skill
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 打包技能钩子工具
  • 按工作流注册技能

为 DeepSeek Harness 提供包技能的服务商插件:把技能、钩子、工具和数据打包成工作流,按 {packdge}-{skill} 注册。

README

由 DeepSeek 最新模型翻译生成
dsh-skill-packdge DeepSeek Harness 的 packdge 技能提供器插件:把「技能 + hooks + 工具 + 数据」按工作流打包成一个目录(packdge),自动发现并注册为 {packdge}-{skill} 形式的技能,多个 packdge 并行共存不重名。 什么是 packdge 一个 packdge = 一个工作流目录: myworkflow/ ├── packdge.json # 清单:{ "name": "myworkflow", "description": "..." },name 必须等于目录名 ├── skills/ # 普通 DSH 技能包(SKILL.md,frontmatter 必须有 description) ├── hooks/ # 会话钩子(可选) ├── config/ # 工作流配置(可选) ├── docs/ # 工作流文档(可选) └── tools/ # 工作流脚本/工具(可选) 注册后每个技能名为 myworkflow-<skill>;技能正文通过 resourceBase 定位到 packdge 内的资源目录,因此技能可以引用 hooks/tools/config 里的相对路径资源。
展开完整文档(README 剩余 1 节)
dsh-skill-packdge

DeepSeek Harness 的 packdge 技能提供器插件:把「技能 + hooks + 工具 + 数据」按工作流打包成一个目录(packdge),自动发现并注册为
{packdge}-{skill} 形式的技能,多个 packdge 并行共存不重名。

什么是 packdge

一个 packdge = 一个工作流目录:

myworkflow/
├── packdge.json # 清单:{ "name": "myworkflow", "description": "..." },name 必须等于目录名 ├── skills/ # 普通 DSH 技能包(SKILL.md,frontmatter 必须有 description) ├── hooks/ # 会话钩子(可选) ├── config/ # 工作流配置(可选) ├── docs/ # 工作流文档(可选) └── tools/ # 工作流脚本/工具(可选)

注册后每个技能名为 myworkflow-<skill>;技能正文通过 resourceBase 定位到 packdge 内的资源目录,因此技能可以引用 hooks/tools/config 里的相对路径资源。

安装

1. 把插件链接进 web profile:

dsh plugin --profile web add .

或手动将本目录链接到 $DSH_HOME/profiles/web/node_modules/dsh-skill-packdge。

2. 在 $DSH_HOME/cordis.patch.yml 中加入:

- insert:
- id: dsh-skill-packdge
name: dsh-skill-packdge

3. 放置你的 packdge:默认扫描 $DSH_HOME/packdge/(用户根)与项目 .dsh/packdge/(项目根),也可通过 customPackdgeDirs 指定额外根。

4. 重启 dsh web(或刷新页面)后生效。

配置

| 字段 | 默认 | 说明 |
| providerName | packdge | 注册到技能注册表的 provider 名 |
| includeDefaultRoots | true | 是否扫描项目与用户默认 packdge 根 |
| dshHome | $DSH_HOME 或 ~/.dsh | harness 配置根(用户 packdge 根为 <dshHome>/packdge) |
| customPackdgeDirs | [] | 额外 packdge 根(优先级在项目根与用户根之间) |
| enabledPackdges | [] | 仅允许这些 packdge 贡献;空列表 = 全部 |
| disabledPackdges | [] | 排除这些 packdge(与 enabled 重叠会被拒绝) |
| watch | true | 监听 packdge 根变化,实时刷新目录 |
| watchUsePolling | false | 使用轮询代替原生文件事件 |
| watchStabilityThresholdMs | 200 | 文件变更稳定阈值 |
| watchPollIntervalMs | 100 | 稳定性/轮询探测间隔 |
| watchFollowSymlinks | true | 是否跟随符号链接 |
| refreshSpecialSkillsIndex | true | 对自带 config/special-skills.json 的 packdge 刷新其 inventory 段(宿主平面执行,保留其余字段,仅内容变化时写入) |

与官方 @deepseek-ai/dsh-skill-packdge 的关系

本插件是 packdge 机制的开源独立版:同一份提供器代码,包名与仓库独立。

- 注册表为每个技能附加 group = packdge id,供 UI 分组;该字段需要带 packdge 支持的 harness 构建(官方版本上会被忽略,技能照常注册为扁平列表)。
- /skill、/packdge 层级斜杠菜单属于 harness UI 侧能力,需要对应 UI 支持,本插件不包含。

开发

pnpm run typecheck # tsc --noEmit
pnpm run build # tsc 类型产物 + tsdown 运行时产物
pnpm run test # vitest(含真实 Loader 组合测试)

许可证

MIT
预览分享卡片长什么样 ↓CH3SH-LC/dsh-skill-packdge
分享 · DeepSeek Harness Hub
CH3SH-LC/dsh-skill-packdge

把技能、钩子与工具按工作流打包注册为独立技能

回到顶部