中文EN

dsh-mode-skills

skill已测通过npmMIT

dsh 的 Skill(技能)管理页:按 Agent 模式把每个 Skill 设为开、仅手动、仅模型或关;从会话历史统计每个 Skill 在各模式里被加载的次数;搜索 skills.sh 并从 GitHub 安装;从 Codex、Claude Code 或文件夹导入;新建、编辑、保存版本,删除的 Skill 进回收站;卸载后模式照常可用。

下载量 / Downloads
1,368
依赖体积 / node_modules
0.48 MB
测试时间 / Tested
2026-11-06
DSH 版本 / Version
0.2.2-rc.1

安装

dsh plugin --profile web add dsh-mode-skills

沙箱测试结果

阶段结果
1 安装✓
2 列装✓
3 挂载✓
4 启动—

四阶段在隔离沙箱里跑:安装(有网)→ 列装 → 挂载 → 启动(后三步断网)。

README

Skill 管理(dsh-mode-skills)

[English](README.md) | 中文

DeepSeek Harness(dsh)的 Skill(技能)管理插件。它在侧栏「插件」下面加一个「Skill 管理」入口:查看所有 Skill、按模式开关,新建、编辑、导入、保存版本,以及从 GitHub 安装。

预览版。

能做什么

  • 侧栏入口:「Skill 管理」和「插件」「自动化任务」在同一级,不用进设置。
  • 全部 Skill 一览:每个 Skill 显示名称、来源(DSH 用户目录、共享目录、项目、随模式提供、随插件包提供、GitHub 等)和说明。展开后能看到文件位置、何时使用,以及它在每个模式里的状态。
  • 按模式开关:列表里每个加载 Skill 的模式占一列(最多四列;模式更多或窗口较窄时,每行改为显示在几个模式里开着),每个 Skill 一个开关,点一下就在这个模式里打开或关闭;显示「—」表示这个模式里没有这个 Skill,设成「仅手动」「仅模型」的格子显示文字,点它会展开这一行。展开一个 Skill,每个模式都有「开 / 仅手动 / 仅模型 / 关」四档,也可以一键在所有模式打开或关闭;在上方选一个模式,每行右边会出现这个模式的开关,还有对当前列表的「列表全部打开 / 列表全部关闭」(可以撤销)。「仅手动」:模型看不到它,你仍可以输入 /名字 调用。「仅模型」:模型能看到并加载它,/ 菜单里不显示。不加载 Skill 的模式(比如极简模式)、这个模式里没有的 Skill 不能设置,旁边会写明原因。
  • 搜索和整理:搜索覆盖名称、描述、显示名、标签和 Skill 文件的正文(只在正文里命中的会标「正文匹配」)。可以给 Skill 起一个显示名(比如中文名)、加标签,并按标签筛选;这些只保存在本插件的设置里,不会改动 Skill 文件。
  • 项目里的 Skill:「项目」里填一个项目文件夹(点「查看」时先检查,并列出最近用过的),列表就会加上它 .dsh/skills 和 .agents/skills 里的 Skill。开关按名字对所有项目生效;会话在该项目里运行时才会加载这些 Skill。
  • 从 GitHub 安装:「导入 Skill → GitHub」里填仓库地址(github.com/owner/repo、仓库里的某个分支和文件夹、指向 SKILL.md 或它原始文件的链接、git@github.com:owner/repo.git 这样的 git 地址,或 owner/repo)、skills.sh 页面,或 skills 安装命令(npx skills add owner/repo --skill name),会下载仓库的公开压缩包并列出里面的 Skill,含脚本的会特别提醒;默认一个都不勾选,只有 skills.sh 页面、--skill 参数或指向某个 Skill 文件夹的链接点名的那个会选中。GitLab 等其他网站的地址会被拒绝,并说明是哪个网站。安装时记住提交:「检查更新」把每个已安装 Skill 的文件夹和仓库当前的对比,「全部更新」用新版本覆盖(覆盖前先把当前文件存成一个版本)。不支持私有仓库。
  • Skill 商城:页面右上角的「Skill 商城」按钮(在「导入 Skill」旁边)可以搜索 skills.sh(公开的 Skill 目录,带安装次数),也列出插件自带的一小批知名仓库。在它的搜索框里粘贴链接(上面那些写法都可以)会直接打开那个仓库;手动输入的链接按回车或点「打开」。点「查看并安装」会在商城里打开那个仓库,走上面的 GitHub 流程,并选中那个 Skill:列表长时有筛选框,「返回 Skill 商城」(或按 Esc)回到刚才的搜索结果,「导入所选」固定在底部。你确认之前不会安装任何东西;装完可以继续逛或直接完成。skills.sh 列出的 Skill 如果仓库里已经没有,页面会说明。搜索词会发给 skills.sh。
  • 按模式的使用统计:「使用统计」统计最近 7、30、90 或 365 天里,每个模式的会话加载了每个 Skill 多少次(模型调用 skill 工具,或你输入 /名字),并显示最近一次的时间;上方可以选一个模式,只看这个模式加载了什么、没加载过什么。列出没人加载过的 Skill(所有模式里,或选定模式里),可以在某个模式里一键关掉(可以撤销)。它从会话历史里只读名称和时间,不读对话内容。读最新的 400 个会话,最多 25 秒;读过的已保存会话缓存 10 分钟。
  • token 开销:每个 Skill 和每个模式的 Skill 目录都标出大约占多少 token(模式的开销写在它那一列的标题下面,在这一列开关 Skill 时跟着变),可以按 token 排序,方便决定在哪个模式关掉哪些。估算方法见下面的「开发」。
  • 没被加载的 Skill:Skill 目录里有 SKILL.md、但 DSH 没有加载的文件会列出来,写明原因(缺 frontmatter、YAML 写法有误、name 不合规、旧写法的字段等)。能自动改的直接给出改好的内容,确认后保存;旧文件会先备份。
  • 回收站:删除的 Skill 移进回收站,可以恢复到原位置或彻底删除;刚删除时提示里有「撤销」。回收站不会自动清空。
  • 新建和编辑:「新建 Skill」里填名称和描述,选谁能用(只给 DSH,或所有 Agent),以及在哪些模式开启;创建后直接打开 SKILL.md 编辑。展开任一 Skill 也能编辑它的 SKILL.md:保存前会自动把当前文件存成一个版本,编辑期间文件被别处改动时会提示。没保存的修改会在当前标签页里保留:折叠这一行或去别的页面再回来都还在(这一行会标「未保存」),离开编辑器时会先确认。搜索、筛选和展开的行也同样保留。属于已安装包的 Skill 不能修改文件。
  • 文件和导出:「文件和导出」列出 Skill 文件夹里的其他文件,可以查看、编辑、新增和删除(改动前的旧文件会备份在 .dsh-mode-skills/backups/),也可以把 Skill 导出成 .zip。
  • 只给 DSH,或所有 Agent:你自己目录里的每个 Skill 都标出谁能用:「仅 DSH」或「所有 Agent」,展开后的「谁能用」可以切换。「所有 Agent」只保留一份文件,放在 ~/.agents/skills:DSH、Codex、Cline、Zed 等直接读取这个目录;这台电脑上装的其他 Agent 工具(Claude Code、Cursor、Gemini CLI、GitHub Copilot、OpenCode、Windsurf、Qwen Code、Trae 等 20 多个,按它们自己的目录识别)在自己的 Skill 目录里得到一个指向它的链接。在哪里改都是同一份,各模式里的开关不变。切换前页面会说明对每个工具做什么:内容相同的副本换成链接(原来那份放进回收站),内容不同的同名 Skill 不会动。「只给 DSH」把 Skill 移回 ~/.dsh/skills 并删掉这些链接。目录结构和 npx skills add -g 相同,两边装的能互相认出。「其他 Agent」(在「使用统计」旁边)列出找到的工具和各自能用几个 Skill,可以给新装的工具补上缺的链接,也可以把所有只给 DSH 的 Skill 一次给所有 Agent 用。新建或导入时选「所有 Agent」会同样链接好;删除 Skill 会删掉它的链接,从回收站恢复时再补回来。Windows 上用的是目录联接(junction),不需要管理员权限。
  • 导入:「导入 Skill」列出 Codex(~/.codex/skills)、Claude Code(~/.claude/skills,以及插件里的 Skill)和其他 Agent 工具(按 ~/.<工具>/skills 的约定自动发现,比如 Cursor、Gemini CLI)中的 Skill,也可以读任意文件夹,或拖入、选择 .zip 和 Skill 文件夹上传。勾选后复制进来;其他工具里指向 DSH 已有 Skill 的链接标为「已是 DSH 的 Skill」;重名时可以改名导入,或覆盖现有 Skill(覆盖前先存一个版本)。上传的 Skill 不记录来源。
  • 来源更新提醒:导入的 Skill 记住来源。来源之后有变化,列表上会标「来源有更新」,展开后可以一键重新导入。
  • 版本历史:手动保存版本(可以写备注),查看、恢复到文件(恢复前先存当前文件)或删除;删除的版本号不会再用。
  • 卸载后模式照常可用:见下面的「卸载」。
  • 页面出错时:页面自己出错时,会显示错误原文和「重新加载」,而不是一片空白。
  • 插件自己的更新:插件有新版本时页面会告诉你,确认后用 DSH 自带的安装器装上;见下面的「更新」。
  • 和模式管理一起用:装了 dsh-modes 时,按模式的设置、新建、导入和版本都由模式管理负责,这里的操作会通过它保存,和它的「技能」页是同一份设置、同一份导入记录和版本;被它固定到某个版本的 Skill 也会标出来。模式管理没有的「仅手动」「仅模型」这时不能用;只有本插件之前保存过的设置会暂时不生效,「交给模式管理」可以把其中的「关闭」转过去。回收站、没被加载的 Skill、token 开销、上传、GitHub 安装、显示名和标签、项目文件夹、文件编辑和其他 Agent 目录照常可用。

列表读的是每个模式能看到的 Skill:用户目录、自定义目录、随模式提供的 Skill,以及选了项目文件夹时那个项目里的 Skill。

什么时候生效

  • 模式里已经有本插件的设置时,改动从正在运行的会话的下一步开始生效。
  • 一个模式第一次设置「关」「仅手动」或「仅模型」时,要往模式里加一行设置,这次改动从新会话开始生效;保存后的提示会写明是哪个模式。

安装

dsh plugin --profile web add dsh-mode-skills

从源码运行 dsh 时,在源码目录里执行 pnpm dsh plugin --profile web add dsh-mode-skills,然后重启 dsh web。想试用本地源码,把名字换成 link:/你的路径/dsh-mode-skills。

从 GitHub 安装需要运行 dsh 的这台机器能访问 codeload.github.com。在代理后面时,先设置 HTTPS_PROXY 和 NODE_USE_ENV_PROXY=1 再启动 dsh。

卸载

dsh plugin --profile web remove dsh-mode-skills

本插件往模式里加的那一行,保存时带一个条件:插件包不在了,这一行就自动关闭。所以卸载后,所有模式照常可用,被关掉的 Skill 在各模式里都会恢复。profile 目录下的 .dsh-mode-skills/ 文件夹会保留,重新安装后设置都会回来;想清理可以删掉它。

更新

页面会检查这个插件有没有新版本,并且能直接装上。

  • 检查:打开页面时,插件向 DSH 配置的 npm 源(镜像也可以)询问 dsh-mode-skills 的最新版本,最多 12 小时一次,请求里只有包名。页面底部的「自动检查更新」可以关掉;底部的「检查插件更新」仍然可用。本地开发安装(link:)不检查。(列表上方的「检查更新」是另一回事:它检查从 GitHub 安装的 Skill。)
  • 升级:有新版本时,页面顶部出现提示,带「查看更新记录」和「升级…」。确认后,DSH 自带的安装器从 npm 源下载那个版本的压缩包并安装,显示进度,可以「取消安装」。安装失败或取消时,安装器会把配置文件恢复原样,提示里会给出安装器的原话和手动升级的命令。只提供 latest 正式版,不提供预发布版;压缩包地址必须是回答的那个源上这个包的文件。
  • 升级之后:取决于 DSH 版本,新版本要么立即换上(这个页面会关闭,重新打开即可),要么在重启 dsh 后生效(网页版:重新运行 dsh web;桌面应用:退出后重新打开)。下次打开页面会显示「已升级到」新版本。你的 Skill 和设置都会保留,正在运行的会话不受影响。提示里会给出退回旧版本的命令。
  • 从 GitHub 安装的:提示里显示 dsh plugin --profile web add github:xiaohai-78/dsh-mode-skills,不显示按钮。
  • 手动升级:运行 dsh plugin --profile web add dsh-mode-skills@latest,或者在「插件」页点「添加插件」,填 https://registry.npmjs.org/dsh-mode-skills/-/dsh-mode-skills-<版本>.tgz。不带 @latest 的命令什么都不做,因为 DSH 会保留已经装好的版本。
  • 从 0.2.0 及更早的版本升级:这些版本没有更新检查,需要手动升级一次。

计划

1. 只读一览(已完成):侧栏入口、全部 Skill、各模式状态。

2. 按模式开关(已完成):只装本插件也能用;卸载后模式照常可用;装了模式管理时通过它保存。

3. Skill 库(已完成):新建、编辑、从 Codex / Claude Code / 文件夹导入、来源更新提醒、版本历史;装了模式管理时通过它保存。

4. 补齐常用功能(已完成):回收站、没被加载的 Skill 诊断和修复、token 开销、上传 zip 和文件夹、更多 Agent 目录

…(truncated)

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:6,最后更新 2026-10-30

链接

GitHub · Homepage · npm

同类插件