前言¶
在 DeepSeek Harness(DSH)里,技能(skill)是把一套固定做法写进一个文件,之后每次对话都能按同一流程执行。实际用起来,文件会散在多个目录、frontmatter 格式要记、装多了想不起该用哪个,升级技能包还担心覆盖本地改过的内容。
社区里已有汇总散落技能、或做本地浏览的插件;dsh-skill-starter 侧重的是技能内容本身与分发:装完就有可用的基础技能和一个中文工程流程包,设置页按「你遇到的问题」分组,模型也可以在对话里直接读写技能库。下面介绍它是什么、怎么装、典型用法和注意事项。
这是什么¶
- 名称:
dsh-skill-starter(npm 包名相同) - 维护者:ymck-x
- 分类:工作流(社区目录 SkillHub 插件页)
- 版本(资料中 package.json):0.3.0
- 许可:MIT
一句话:DSH 技能管理器——自带 6 个基础技能与 engineering-zh 技能包(20 个中文工程流程技能);设置页可查看、编辑、新建;升级技能包不覆盖你改过的文件。
核心功能¶
装完即得的内容¶
| 内容 | 说明 |
|---|---|
| 6 个基础技能 | 如 ask-first(需求没说清先问完)、prove-it(改之前说清怎么验证)、write-my-skill(一句话记成技能)等 |
| 20 个工程流程技能 | 技能包 engineering-zh:拷问需求 → 收规格 → 拆票 → 实现 → 双轴审查 → 复盘,以及诊断 bug、TDD、原型、研究、教学等 |
| 按症状分组的面板 | 设置页「Skill 管理」按「你遇到的问题」分组,不必死记技能名 |
| 「我该用哪个」对照表 | 29 行处境对照,点一行跳到对应技能;与 skills-map 技能同源解析,避免面板与路由表不一致 |
| 对话内读写 | 注册六个工具,AI 可列出、读取、写入、删除技能,以及列出/安装技能包 |
升级技能包时:你改过的文件会跳过并在结果中点名;已存在且内容不同的绝不覆盖;内容相同则只登记指纹。插件只加新技能、修错字,不碰你动过的行。
设置页「Skill 管理」¶
打开「设置 → Skill 管理」,看到的是按问题分的组(例如「开工之前」「别让它做错方向」「别让『改好了』是空话」),每组下列出对应技能。可选中一条编辑名称、描述、使用时机、正文及调用开关;可新建、删除,或将内置技能复制后再改。界面随语言中英双语。
模型侧六个工具¶
| 工具 | 作用 |
|---|---|
skill_list |
列出全部技能:来源、调用方式、是否被覆盖、附件数 |
skill_read |
读出完整内容与附件清单 |
skill_write |
新建或修改 |
skill_delete |
删除 |
skill_pack_list |
技能包状态 |
skill_pack_install |
安装或升级,不覆盖你的改动 |
例如你说「把这套流程记下来」,模型可通过 skill_write 直接落盘,格式由插件约束。
不需要工具带来的上下文开销时,可在配置中关闭:
- id: dsh-skill-starter
config:
enableTools: false
关闭后模型侧工具 schema 开销归零,设置面板与「我该用哪个」表仍可用(表走面板接口,不进模型上下文)。资料中估算:自带 6 技能 + 技能包 20 技能 + 六工具 schema,合计约 1737~3474 token(装了技能包且开启工具时)。
技能的三种来源与优先级¶
| 来源 | 位置 |
|---|---|
| 项目级 | <项目>\.dsh\skills\、<项目>\.agents\skills\ |
| 用户级 | ~\.dsh\skills\(面板与工具主要管这里) |
| 内置 | 插件 skills\(只读;用户目录同名文件可覆盖) |
同名时:项目级 > 用户级 > 内置。面板列用户级与内置;项目级技能可在对话里让 AI 列出。
与同类插件¶
| 插件 | 侧重 |
|---|---|
dsh-skills |
汇总各处技能入库、引用或副本、导出 |
asakumizy/dsh-local-skills |
本地技能浏览器 |
| dsh-skill-starter | 自带可用技能 + 技能包分发、升级与本地改动保护 |
三者 id 不同可并存,但同一技能名不要装两份,否则会重复注册。
安装与启用¶
DSH 生态里插件通过 profile 安装;desktop 需换成你 ~/.dsh/profiles/ 下实际的 profile 目录名。
先做安装,再重启 dsh:
dsh plugin --profile desktop add dsh-skill-starter
包在 npm:https://www.npmjs.com/package/dsh-skill-starter。
验证:设置页出现「Skill 管理」,或在对话里问「我有哪些技能」。
装不下来时改用固定 tag 源码包¶
网络或镜像异常时,使用 README 中的完整 tag 地址(勿改成 refs/heads/main.tar.gz 或 github:owner/repo 简写):
dsh plugin --profile desktop add https://github.com/ymck-x/dsh-skill-starter/archive/refs/tags/v0.3.0.tar.gz
换版本时需手改 URL 中的 tag 号。
没有 dsh 命令时手动装¶
在 profile 目录执行 pnpm,并把包名写入 dsh.profile.bundles:
cd ~/.dsh/profiles/desktop
pnpm add dsh-skill-starter
npm 不可用时,将 dsh-skill-starter 换成上述 GitHub tag tarball 地址。
在同级 package.json 的 bundles 中加入 dsh-skill-starter,例如:
{
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-skill-starter"
]
}
}
}
重启 dsh 生效。
卸载¶
dsh plugin --profile desktop remove dsh-skill-starter
手动安装时从 bundles 删除该项并 pnpm remove dsh-skill-starter。卸载不会删除你在 ~\.dsh\skills\ 里写的技能。
典型用法¶
-
按处境选技能:在设置页打开「我该用哪个」,对照当前处境(如「需求没说清」→
ask-first,「做完了不知道有没有问题」→code-review),点一行进入对应技能编辑或记名后在对话里/技能名调用。 -
安装中文工程包:通过面板或让 AI 执行
skill_pack_install安装engineering-zh。之后可按流程手动发起/to-spec、/to-tickets、/implement等(部分技能仅允许人工/发起,避免 AI 擅自改变工作状态)。 -
沉淀个人做法:对话中说「把这条记下来」「以后都这样做」,配合
write-my-skill或skill_write写入用户级技能目录。 -
改包内技能:直接在
~\.dsh\skills\改对应文件;下次升级包时你的修改不会被覆盖。
技能分模型可调用与仅人工发起两类:前者任务匹配时 AI 可自动用,也可 /名字;后者只有你 /名字 才生效(如 to-spec、retro、handoff 等)。
适用场景与注意¶
适合谁:希望在 DSH 里有一套开箱可用的中文工程协作流程、又需要可视化管理技能且担心升级冲掉本地修改的开发者。
运行与信任:插件以当前 DSH 进程权限运行,会读写用户技能目录并注册模型工具。安装前请自行查看 GitHub 仓库 源码与 MIT 许可证,确认符合你的环境策略。
环境:package.json 要求 Node ^22.19.0 || >=24.0.0。
生态说明:DSH 社区插件目录(如 SkillHub)为独立站点,与 DeepSeek / 幻方无官方从属关系;「一切皆插件」是 DSH 的产品思路,本文仅介绍社区维护的 dsh-skill-starter。
结尾¶
dsh-skill-starter 把「有技能可用、知道何时用、改完不怕被升级覆盖、对话里也能管库」收在一个工作流插件里:6 个基础技能 + 可选的 20 项中文工程包,加上按症状分组的设置页与 29 行处境对照表。