前言¶
在 DeepSeek Harness(DSH)里,技能多以目录 + SKILL.md 的形式存在。列表或文件树能看懂「有哪些技能」,却不太适合按分类、来源、标签快速筛一批技能,也很难在不碰正文的前提下给每张「技能」配上稀有度、星数、五维数值和卡面。若要靠手改 SKILL.md 或零散笔记来记这些元数据,和技能本体绑在一起,升级、同步、多项目同名技能时也容易乱。
下面介绍社区插件 dsh-skill-card(维护者 Hocete):在 DSH 里开一块全屏「技能卡库」面板,把已安装技能渲染成游戏风卡牌,属性写在 side-car 存储里,默认不改动各技能的 SKILL.md。
这是什么¶
dsh-skill-card 是 DSH 的趣味换装类插件:侧栏入口在 DSH 左上角(排在「插件中心」「技能中心」之下),标签为「技能卡库」;主面板占用 main seat,key 为 skill-card。
卡片元数据落在 ~/.dsh/storages/skill-card/,与技能文件分离。唯一会写回技能文件的例外是:在详情里手动改「技能描述」时,只替换 SKILL.md 里 description 对应的一行。
当前仓库版本为 0.1.0,许可证 MIT(见 package.json)。社区目录页:skillhub — dsh-skill-card;源码与说明:GitHub — Hocete/dsh-skill-card。
核心功能¶
浏览与筛选¶
顶栏显示标题、技能总数,并提供「+ 新建技能」「↻ 刷新」。
- 分类行:全部 / 办公 / 开发 / AI 智能体 / 分析 / 文档 / 流程 / 未分类,带计数。
- 来源行:全部 / 项目技能 ▾ / 公共技能 / 自定义目录 / 系统内置 / 运行时等;进入面板默认选中「公共技能」(用户级目录
~/.agents/skills、~/.dsh/skills)。「项目技能」是下拉:未选具体项目时文案为「项目技能」(全部项目),选中后只显示该项目下的卡;多技能目录时还有「目录:全部 ▾」。 - 标签行:自由标签 chips(多选取交集)+ 搜索(技能名 / 描述 / 标签)。标签需手动添加,模型不再自动生成。
四种轮播模式¶
扇形轮播、环形旋转、平滑放大、叠牌抽卡;滚轮灵敏度可在 1–10 调节。窗口缩放或侧栏折叠会重算卡片位置;已打开的详情仍停在原卡上。卡面在后台生成时每 1.5s 静默轮询,载荷未变则不重建轨道。
卡牌与详情¶
每张卡展示稀有度、星数、纹章卡面、五维数值(能力 / 效率 / 通用 / 稳定 / 命中)、标签、来源。点当前卡展开详情;底部固定「修改 / 删除 / 关闭」(编辑态为「保存修改 / 取消」)。
- 修改:可改卡片属性(含中文名)、稀有度、星数、stats、标签、配色等;保存卡片属性不会顺带重写描述。
- 删除:仅可写技能可删;内置在
app.asar或由其它插件包提供的技能可改卡面属性但不可删,点删除会 toast 说明原因。 - 技能身份:一张卡对应一个真实路径;不同项目同名技能是两张卡。junction / 符号链接指向同一文件时才合并为一张。卡库数据从
version: 3起按真实路径存储。
卡面生成¶
卡面为纯 SVG 纹章,零位图素材:
- 列表加载时用技能名哈希生成保底卡面,避免空白;
- 需要重绘时,host 侧通过
ctx.llm.stream按名称与描述产出美术配方 JSON,本地绘制并缓存; - 模型失败或重试 3 次仍失败则保留保底卡面。
技能改名视为新技能,会重新生成卡面。
Host API(仅回环)¶
插件在 DSH 进程内注册 HTTP 接口,非回环访问返回 403。常用路径包括:
| 方法 + 路径 | 说明 |
|---|---|
GET /api/dsh-skill-card/list |
列表、枚举、待生成数量 |
POST /api/dsh-skill-card/update |
更新卡片属性 |
POST /api/dsh-skill-card/set-description |
改描述并写回 SKILL.md 一行 |
POST /api/dsh-skill-card/delete |
删除可写技能目录 |
POST /api/dsh-skill-card/create |
新建技能目录与 SKILL.md |
POST /api/dsh-skill-card/refresh |
重扫技能根 |
请求体上限 256KB。
安装与启用¶
要求 DSH >= 0.2.0-rc.2、Node 22+。插件只依赖 Node 内置模块,lib/ 已预构建,从 GitHub 安装无需本地构建。
从 GitHub 直装(README 推荐):
dsh plugin --profile desktop add github:Hocete/dsh-skill-card
也可在插件市场(例如 dsh-market 的 Discover)搜索 dsh-skill-card 安装。装完后重启一次 DeepSeek Harness。
卸载:
dsh plugin --profile <name> remove dsh-skill-card
卸载后卡片数据仍留在 ~/.dsh/storages/skill-card/,可自行删除。
典型用法¶
- 安装并重启 DSH 后,在左上角进入「技能卡库」。
- 默认查看「公共技能」;要浏览当前工作区项目下的
.dsh/skills、.agents/skills或项目根 3 层内名为skills的目录,在来源行选「项目技能 ▾」并点选项目名。 - 用分类、标签、搜索缩小范围;滚轮或拖拽在四种模式间浏览。
- 点卡牌打开详情:需要个性化时用「修改」改稀有度、星数、五维、标签、中文名或配色;标签输入后按回车或点「保存修改」即可,不会清空其它已改字段。
- 仅需改技能简介时,在详情里改描述并保存——只会原地替换
SKILL.md的description行。 - 顶栏「+ 新建技能」或流中的虚线「+」卡可创建新技能目录;「↻ 刷新」让 host 重扫技能根。
若筛选结果为空,中间仍保留虚线「+ 新建技能」,提示出现在底部信息栏。
适用场景与注意¶
适合谁:经常在 DSH 里管理大量技能、希望用视觉化方式区分用途与「强度感」的开发者;需要在多项目、多来源(公共目录、工作空间、运行时等)之间切换查看技能的人。
权限与信任:插件随当前 DSH 进程运行,可读写你配置的技能目录与 side-car 存储;安装前宜阅读 仓库源码 与 MIT 许可证。Host API 限定回环访问,但仍意味着本机其它受信任程序在同等条件下可调用这些接口。
已知限制(摘自 README):app.asar 内置技能(如 office-docx / office-pptx / office-xlsx、diagnose-windows-sandbox-acl)与 @openviking/dsh-memory-plugin 提供的技能不可删除、描述不可改,其余卡片属性可编辑。面板切到其它页面会卸载 UI,但筛选状态与当前卡在控制器中保留,返回面板不丢。
DSH 生态以「一切皆插件」为方向;skillhub.cn 等为社区目录,与 DeepSeek / 幻方无官方从属关系。本文事实均来自上述仓库 README 与 package.json(抓取日期以你本地资料为准)。
结尾¶
dsh-skill-card 把技能列表变成可筛选、可轮播的卡牌库,并把装饰性元数据收进 side-car,减轻对 SKILL.md 的误改风险。需要安装或 issues 时,可查阅 Skillhub 目录页 与 GitHub 仓库。