dsh-skill-categories: Classification, Import and Categorization, and Session References in DSH Skill Center

前言

在 DeepSeek Harness(DSH)里用久了,技能数量一多,「记得文件名」和「记得用途」往往会脱节。官方技能中心侧重文件与提供者的目录视图,按用途检索、批量整理、导入后顺手归类,通常要自己在脑子里或外部表格里维护一套映射。

dsh-skill-categories 把工作流里的这几件事收进统一的技能页:自定义分类与标签、联合筛选、导入成功后的归类提示,以及输入框里按分类引用技能。下面按维护者文档说明定位、能力与安装边界。当前为预览版 0.4.0:已完成构建、自动测试和独立浏览器示例验证,完整已登录宿主验收仍需自行完成。

这是什么

  • 插件名称:dsh-skill-categories(npm 包名同左)
  • 维护者:wuzeno
  • 社区目录分类:工作流
  • 一句话定位:面向 DSH 的社区技能中心增强——自定义分类与标签、导入后归类、会话范围内按分类引用技能;在统一「技能」页合并原技能管理与分类整理,而不再维护两套列表。
  • 仓库与目录:GitHub · SkillHub 目录页

技能管理能力基于上游 @linxin666/dsh-client-ui-skill-explorer 0.4.8(BSD-3-Clause);本插件原创的分类、统一视图、引用与测试部分为 MIT,许可以仓库 LICENSE 与 THIRD_PARTY_NOTICES.md 为准。

核心功能

统一技能页

「技能」页左侧选分类,右侧保留原有文件与提供者目录,以及启用、编辑、删除、复制模板等操作;「创建」「导入」仍为独立页签,编辑时出现编辑页签。不再把「技能」和「分类整理」拆成两份列表。

自定义分类与标签

可新建、重命名、排序、删除分类。删除分类只会取消归类,技能文件与标签保留。可为技能打标签;批量归类时标签默认保留,仅在明确选择「替换」后才覆盖。

批量整理与联合筛选

勾选多项后执行批量分类;当前筛选或折叠组里未显示的勾选项不会进入批量处理。可按分类、工作区、来源、启用状态、文件标记缩小列表;搜索同时匹配技能名称、描述、标签与分类名。

分类以技能逻辑名称为键:同名技能在不同工作区或路径下共用一份分类与标签,列表仍保留各行文件与操作。非标准命名的技能可继续浏览管理,但暂不支持分类。「工作区」在此仅为列表筛选器,不会切换当前使用的工作区,也不是 Agent 预设选择器。

导入后归类

在插件「导入」页选择本地目录或 ZIP。导入成功后,根据本次响应里实际成功的项目弹出归类提示,无需等待后台轮询。跳过归类不会撤销导入;分类保存失败也不会把已成功导入记为失败或回滚技能文件。

可开关「发现新增技能后提示分类」。经其他插件、手工复制或预设变化出现的新名称,约每 10 秒做一次完整目录检测;后台页或其他模态可能延迟提示。首次读取只建立基线,不会一次性弹出全部旧技能。

会话内的分类引用

输入框增加独立的「分类引用」按钮(不替换原技能市场插件的「+技能」)。可选全部分类、未分类或自定义分类,也可搜分类名、标签、技能名或描述。候选来自当前会话的可引用目录,遵守该会话的预设与工作区范围;与管理页文件视图数量不一致不一定是错误。

选中后通过宿主安全插入接口,在当前光标处写入 /技能名称,不自动发送消息,也不整份覆盖草稿。宿主拒绝插入时会报错,不以覆盖草稿兜底。Esc 关闭弹窗并恢复按钮焦点。

子代理会话暂不显示该按钮;缺少可选会话服务时不挂载,缺少安全输入接口时禁用。搜索结果超过 200 条时需继续输入关键词缩小范围。

明确不做的事

分类不限制 Agent 能调用哪些技能,也不会自动加载一整类。当前无 AI 自动分类、多级分类、跨设备同步或分类导入导出。分类元数据写入插件 skill_categories 存储域,不移动技能目录、不改技能正文。

安装与启用

兼容要求

DeepSeek Harness:>=0.2.1-rc.3 且 <0.3.0
Node.js:>=22.13.0
从源码构建:pnpm,并使用仓库锁文件

以上为文档声明范围,不代表每个宿主版本与第三方插件组合均已验收。

与原技能中心的关系

安装整合版前,请在官方插件管理器中停用 @linxin666/dsh-client-ui-skill-explorer,避免重复入口与管理路由。原插件可保留安装以便回退。不要同时启用原技能中心与本插件。

本项目尚未发布到 npm,文档不提供未经验证的远程 npm 安装命令。安装路径为:源码构建后,经 DSH 官方插件管理器安装本地项目目录;不要手工改用户 profile,也不要单独起 Web 服务。

从源码构建

在仓库根目录执行(命令来自项目 README):

git clone https://github.com/wuzeno/dsh-skill-categories.git
cd dsh-skill-categories
pnpm install --frozen-lockfile --ignore-scripts
npm run build
npm run check
npm test

随后在官方插件管理器中选择本地 dsh-skill-categories 目录完成安装。本地目录安装通常以链接方式生效,源码目录须先装好依赖(否则宿主可能无法解析 zod)。安装后刷新 DSH 页面;若宿主提示重启,按其说明操作。管理器中的校验结果与激活结果应分别确认。

若提示 already-installed,先用管理器移除旧 bundle,再安装更新后的本地目录。卸载后分类数据保留策略由宿主决定,重要数据请先备份。回退时先停用本插件,再启用原技能中心并刷新,仍勿同时启用两者。

典型用法

1. 在技能页整理存量技能

  1. 打开统一「技能」页,左侧新建或选择分类。
  2. 用联合筛选或搜索缩小列表,勾选目标技能。
  3. 点击「批量分类」,或在单行使用「分类与标签」。
  4. 需要改标签时,批量操作里仅在确认替换后再覆盖既有标签。

2. 导入目录或 ZIP 并归类

  1. 切换到「导入」页,选择本地目录或 ZIP。
  2. 导入成功后,在提示中为本次成功项选择分类;可跳过,跳过不撤销文件。
  3. 若希望后续自动提示,在设置中打开「发现新增技能后提示分类」。

3. 在对话里引用技能

  1. 在支持的主会话输入框点击「分类引用」。
  2. 按分类浏览或输入关键词筛选(注意 200 条上限)。
  3. 选中技能,确认插入 /技能名称 后再自行编辑或发送消息。

本地 UI 预览(非已登录宿主)可构建后执行:

node scripts/preview.mjs

浏览器打开生成的 preview/index.html,使用示例数据,不能代替真实宿主上的导入、编辑与持久化验收。

适用场景与注意

适合谁:长期在 DSH 中积累大量技能、需要按用途检索与批量归类的开发者;希望在导入后立刻归类、在会话里按分类插入技能引用的工作流用户。

权限与安全:插件以当前 DSH 进程权限运行,分类 API 仅接受当前已认证浏览器用户的规定格式请求,工作区路径须属于宿主登记目录。安装前建议阅读仓库源码、SECURITY.md 与许可证;反馈问题勿提交登录链接、令牌或敏感技能正文。

验证状态(0.4.0):自动测试 80 项通过;独立浏览器示例覆盖分类、联合列表、导入提示与引用流程。开发期自动化未完成宿主登录,不等同真实环境完整验收。正式使用前请在已登录 DSH 中自行验证导入、编辑、分类持久化与会话引用。

生态说明:DSH 奉行「一切皆插件」;SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。本插件不代表上游作者或 DeepSeek 官方。

结尾

dsh-skill-categories 把分类、标签、导入后归类和会话引用接到一块技能管理界面上,减轻「技能多了却找不到用途」的维护成本。当前仍为预览版,并存原技能中心前务必按文档停用上游 Explorer 插件。

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

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

Xiaoye