dsh-run2skill
你是否遇到过这些场景?
- 同一套工作流,今天教 Agent 一遍,明天换个 Session 又教一遍;
- Agent 每走一步都需要你纠正:“别改那个文件”“先跑测试”“这个步骤不能省”;
- 终于把 Agent 教会了,对话一结束,经验也跟着下班了。
如果你已经受够了在对话框里重复当师傅,dsh-run2skill 就是来做这件事的:
把你在 DeepSeek Harness(DSH)里明确教给 Agent 的纠正、约束和工作流,整理成可审核、可复用的原生 Skill。
一句话说:你负责在真实工作里教一次,run2skill 负责把值得复用的部分整理成技能草稿;你点头,它才落盘。
它不会让 Agent 偷偷给自己立规矩。每份技能草稿都可以先看来源、适用范围和完整内容,然后由你决定确认保存还是放弃草稿。只有确认后,它才会写入 DSH 的原生 Skill 目录。
本仓库已进入
0.2.0开发线,下一次 npm 发布版本为0.2.0。目前支持 DSH Web 版的0.1.0-rc.7和0.1.0-rc.8。
安装
先确认你已经安装 DSH、Node.js ^22.19.0 || >=24.0.0,并能在终端运行 dsh 和 pnpm。然后执行:
dsh plugin --profile web add dsh-run2skill
重启 DSH Web。打开 Settings → Plugins,看到 run2skill 卡片就说明插件已加载。
run2skill 不需要单独填写模型密钥。需要分析技能草稿时,它沿用当前 DSH 会话已经选择的模型;如果当前会话没有可用模型,学习会停止并显示原因,不会偷偷换用其他模型。
用法:你继续干活,它负责记笔记
平时照常和 DSH 对话即可。例如:
把这个流程保存成 Skill,以后可以复用。
你也可以在正常工作中明确纠正做法、说明长期约束,或给出有顺序的可复用流程。不用为了“教它”停下当前任务,也不用自己打开 SKILL.md 边回忆边编辑。
run2skill 会在一轮对话完成后做轻量检查。它不是每轮都拉着模型开复盘会;只有命中明确的学习信号后,才会进入后续分析。
当有需要你处理的事项时,DSH 会显示一条原生通知;平时页面顶部不会常驻 run2skill 状态框。处理技能草稿时:
- 打开 Settings → Plugins → run2skill。
- 在待处理列表中查看技能草稿、适用范围和内容差异。
- 选择确认并保存、放弃草稿,或在保存失败后重试。
- 保存成功后,结果就是普通的 DSH 原生 Skill;即使以后卸载 run2skill,它仍然可以被 DSH 使用。
技能草稿可以保存到当前项目(PROJECT)或当前用户(USER)范围。当前版本只会写入 DSH 默认的 Skill 存储目录;如果你改过 Skill 的存储方式或关闭了默认目录,run2skill 会停止保存,不会猜测写入位置。
它会学什么
run2skill 目前专注于你明确表达的可复用经验:
- 纠正:“不要直接修实现,先写失败测试。”
- 长期约束:“这个项目的所有 GitHub 文案都使用中文。”
- 工作流:“先核对上游版本,再跑兼容性探针,最后更新证据。”
- 显式保存请求:“把这个流程保存成 Skill。”
它不会因为 Agent 偶尔成功一次,就自作主张地把所有操作写成永久规则。它学的是你明确教过的东西,不是猜你的心思。
你仍然握着方向盘
在 Settings → Plugins → run2skill 中可以关闭自动学习:
- 开启:明确的纠正、长期约束和工作流可以生成技能草稿。
- 关闭:暂停普通自动学习;你明确说“保存为 Skill”时仍然可以生成技能草稿。
run2skill 是本地优先插件。它不会保存模型密钥,也不会复制完整会话;送去模型分析的只是经过筛选、截断和敏感信息清理的必要内容。技能草稿保存前始终需要你确认。
换句话说:run2skill 可以帮你整理经验,但不会替你签字。
设置页也提供清除插件数据功能,可以选择清理当前项目或当前用户范围。它会删除对应范围内 run2skill 自己保存的数据,但不会删除:
- DSH 的原始会话记录;
- 已发布的原生 Skill;
- 无法证明属于所选范围的数据。
更详细的保留与升级规则见 数据存储与升级。
更新与卸载
更新到另一个明确版本:
dsh plugin --profile web add dsh-run2skill@<version>
卸载:
dsh plugin --profile web remove dsh-run2skill
两种操作后都请重启 DSH Web。卸载不会删除已经发布的 Skill,也默认保留 run2skill 的数据;如果你希望清除这些数据,请在卸载前先使用设置页中的清除插件数据。
遇到问题
- 看不到 run2skill 卡片:确认使用的是 DSH
webprofile,并在安装后重启了 DSH Web。 - 提示“run2skill 当前功能受限”(内部状态码:
DEGRADED):不要手工删除存储文件;重试后仍无法恢复时,可在 GitHub Issues 报告。 - 提示“run2skill 当前版本不兼容”(内部状态码:
INCOMPATIBLE):确认 DSH 是否为受支持版本,再恢复与它兼容的 run2skill 版本。 - 没有生成技能草稿:确认当前会话有可用模型;也可以直接说“把这个流程保存成 Skill”。
- 无法保存到当前项目(
PROJECT):当前会话必须位于 DSH 能识别的项目工作区。 - 改过 Skill 的存储目录或存储方式:当前版本只支持 DSH 默认设置,会选择安全停止,不会猜测写入位置。
欢迎在 GitHub Issues 报告问题。请不要附上密钥、完整 Session、私人路径或包含敏感信息的日志。
进一步了解
本项目采用 MIT License。Client bundle 内嵌依赖的许可声明见 THIRD_PARTY_NOTICES.md。
No comments yet. Be the first to write one.