🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

技能自进化 VanadisGithub/dsh-skill-evolution

DeepSeek Harness
VanadisGithub58 天前有提交已提供中文文档扫描:含敏感能力

自动把成功经验结晶为可复用技能并持续优化

30.2/100
综合分
2
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/19 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:未发布到 npm registry,仅可从源码安装。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add VanadisGithub/dsh-skill-evolution
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · skill
装得上吗
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 58 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

未发布到 npm registry,仅可从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-skill-evolution(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/7 13:15:20

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 15 处,展示前 14 条)
  • 读取本地文件
    plugin.mjs:189
    if (!existsSync(GENERATED_DIR)) mkdirSync(GENERATED_DIR, { recursive: true })
  • 写入本地文件
    plugin.mjs:189
    if (!existsSync(GENERATED_DIR)) mkdirSync(GENERATED_DIR, { recursive: true })
  • 写入本地文件
    plugin.mjs:201
    writeFileSync(tmp, JSON.stringify(record, null, 2))
  • 写入本地文件
    plugin.mjs:202
    renameSync(tmp, target)
  • 读取本地文件
    plugin.mjs:210
    if (existsSync(fileOf(skillName))) unlinkSync(fileOf(skillName))
  • 删除本地文件
    plugin.mjs:210
    if (existsSync(fileOf(skillName))) unlinkSync(fileOf(skillName))
  • 读取本地文件
    plugin.mjs:309
    if (!existsSync(RUNTIME_CONFIG_FILE)) return
  • 读取本地文件
    plugin.mjs:310
    const rec = safeRecord(JSON.parse(readFileSync(RUNTIME_CONFIG_FILE, 'utf8')))
  • 读取本地文件
    plugin.mjs:367
    if (existsSync(RUNTIME_CONFIG_FILE)) unlinkSync(RUNTIME_CONFIG_FILE)
  • 删除本地文件
    plugin.mjs:367
    if (existsSync(RUNTIME_CONFIG_FILE)) unlinkSync(RUNTIME_CONFIG_FILE)
  • 写入本地文件
    plugin.mjs:371
    writeFileSync(tmp, JSON.stringify(rec, null, 2))
  • 写入本地文件
    plugin.mjs:372
    renameSync(tmp, RUNTIME_CONFIG_FILE)
  • 读取本地文件
    plugin.mjs:400
    for (const entry of readdirSync(GENERATED_DIR)) {
  • 发起网络请求
    client.js:126
    const response = await fetch(CHANNEL + "/" + endpoint, {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 信号触发LLM复盘
  • 沉淀可复用技能
  • 设置面板统一管理

Hermes 风格技能自进化插件,用于 DeepSeek Harness(DSH):靠信号触发 LLM 复盘,从成功回合里沉淀可复用智能体技能,逐步改进,并在设置面板里统一管理。

README

由 DeepSeek 最新模型翻译生成
dsh-skill-evolution CI License: MIT DeepSeek Harness(DSH)的技能自进化插件:观察 agent 执行轨迹,在每个成功回合结束时按信号触发 LLM 评审,把值得复用的工作流结晶为技能并注册进技能目录;后续同类执行还会把新经验合并进已有技能——技能是活的,越用越好。 特性亮点 - 事件驱动结晶:回合结束即评审,而非纯频率统计;三信号(复杂 / 恢复 / 重复)任一触发即送审 - 严格的评审门禁:LLM 评审 + 硬性负面清单,垃圾经验绝不入库;NOTHING_TO_SAVE 是一等结果 - 技能持续进化:同类新经验自动合并进已有技能(版本递增),语义去重(FOLD_INTO)拦截经由不同工具序列的近重复 - 全套设置页管理:技能/设置双 tab、总开关、技能卡片(价值/版本/调用次数标签)、参数流程图内嵌调参、评审提示词就地编辑 - 持久化与自治:技能落盘 generated/、重启自动重注册;宿主半零第三方依赖(仅 node: 内建模块) 截图 技能 tab——技能卡片带价值(高/中/低)、版本、调用次数与更新时间标签,展开查看结晶信号、工具序列与完整 SKILL.md: Skills tab 设置 tab——状态一览、评审模型、生成语言与各配置面板: Settings tab
展开完整文档(README 剩余 1 节)
dsh-skill-evolution

CI
License: MIT

DeepSeek Harness(DSH)的技能自进化插件:观察 agent 执行轨迹,在每个成功回合结束时按信号触发 LLM 评审,把值得复用的工作流结晶为技能并注册进技能目录;后续同类执行还会把新经验合并进已有技能——技能是活的,越用越好。

特性亮点

- 事件驱动结晶:回合结束即评审,而非纯频率统计;三信号(复杂 / 恢复 / 重复)任一触发即送审
- 严格的评审门禁:LLM 评审 + 硬性负面清单,垃圾经验绝不入库;NOTHING_TO_SAVE 是一等结果
- 技能持续进化:同类新经验自动合并进已有技能(版本递增),语义去重(FOLD_INTO)拦截经由不同工具序列的近重复
- 全套设置页管理:技能/设置双 tab、总开关、技能卡片(价值/版本/调用次数标签)、参数流程图内嵌调参、评审提示词就地编辑
- 持久化与自治:技能落盘 generated/、重启自动重注册;宿主半零第三方依赖(仅 node: 内建模块)

截图

技能 tab——技能卡片带价值(高/中/低)、版本、调用次数与更新时间标签,展开查看结晶信号、工具序列与完整 SKILL.md:

Skills tab

设置 tab——状态一览、评审模型、生成语言与各配置面板:

Settings tab

阈值与控制——参数直接嵌在流程图里,在哪一步起作用就在哪一步改:

Tuning pipeline with embedded controls

工作原理

信号检测

每个回合结束(turn/end)时,对满足最小步数的成功轨迹检测三个信号:

| 信号 | 条件 | 含义 |
| complex | 成功回合且工具调用 ≥ minToolCalls(默认 5) | 完成了一件复杂任务 |
| recovered | 有失败步骤但回合最终成功 | 踩坑后找到了可行的绕行路径 |
| repeated | 同一工具序列出现 ≥ minPatternOccurrences 次且成功率 ≥ minSuccessRate | 同一套操作反复出现且成熟可靠 |

佐证闸门(complexRequiresCorroboration,默认开):单独的 complex 是弱证据(任何长回合都满足),默认必须叠加 recovered 或 repeated 才送评审;被拦下的回合记一条 withheld 日志,等序列后续出现佐证信号时再补送。

评审门禁

评审 LLM 收到完整证据(信号、用户意图、工具序列、每步成败与摘要)与已有进化技能清单,输出三种结论之一:SAVE(结晶新技能)、FOLD_INTO(并入已有技能)、NOTHING_TO_SAVE(放弃)。

硬性负面清单——以下内容绝不结晶:

- 环境性失败(缺二进制、未配置凭证、未装包)
- 对工具的负面断言("X 工具坏了"会固化成长期拒绝)
- 重试即愈的瞬时错误(教训是重试模式,不是原错误)
- 一次性任务叙事、未解决的失败

持续进化

- 渐进改进:新证据落在已有技能的序列上(尤其是错误恢复经验)时,评审把新教训合并进技能正文并版本 +1,而不是新建重复技能
- 语义去重(FOLD_INTO):同一类经验可能经由不同的工具序列再次出现——纯序列匹配拦不住。结晶评审会看到已有技能清单(名字+描述),判定同属一个工作流类别时输出 VERDICT: FOLD_INTO: ,宿主随即走改进管道并入该技能

产出格式

类级命名的 kebab-case 技能,标准 SKILL.md 结构(# Title / ## When to Use / ## Procedure / ## Pitfalls / ## Verification)。NAME 与章节标题恒为英文,正文语言由 skillLanguage 决定。

安装

方式一:官方 CLI(发布到 npm 后)

dsh plugin --profile web add dsh-skill-evolution

包内 dsh.bundle.patch 会自动挂载,无需手改 profile 文件。

方式二:git clone + link

git clone https://github.com/VanadisGithub/dsh-skill-evolution.git ~/Code/dsh-skill-evolution

在 ~/.dsh/profiles/web/package.json 的 dependencies 中加入:

"dsh-skill-evolution": "link:/Users//Code/dsh-skill-evolution"

然后在 ~/.dsh/profiles/web 执行 pnpm install,硬刷新浏览器。

方式三:file:// 手动挂载(原型调试)

把仓库放到任意目录(如 ~/.dsh/plugins/skill-evolution/),在 ~/.dsh/cordis.patch.yml 追加:

- insert:
- id: 'skill-evolution'
name: file:///Users//.dsh/plugins/skill-evolution/plugin.mjs?v=1
config:
minToolCalls: 5
minPatternOccurrences: 3
autoRegister: true
llmProvider: deepseek # 按你的部署可用的 provider 修改 llmModel: deepseek-chat

?v=N 用于绕过 Node 模块缓存;改了 plugin.mjs 就 +1。宿主半改动需 loader 重放补丁,浏览器半改动硬刷新即可。

⚠️ 三种方式只能选一种,重复挂载会导致双实例。

配置

下表所有键都既走挂载配置,也可在设置面板里直接修改(面板改动持久化到插件目录 runtime-config.json,优先于挂载配置,重启后仍生效):

| 键 | 默认 | 说明 |
| enabled | true | 总开关:false 时不观察回合、不评审结晶(已有技能保持注册) |
| minTraceSteps | 3 | 轨迹最小步数(噪音地板) |
| minToolCalls | 5 | complex 信号阈值 |
| minPatternOccurrences | 3 | repeated 信号阈值 |
| minSuccessRate | 0.7 | repeated 信号成功率下限 |
| signals | 全开 | {complex, recovered, repeated} 分别开关 |
| complexRequiresCorroboration | true | 单独 complex 信号需叠加佐证才送评审 |
| autoRegister | true | 结晶后自动注册进技能目录 |
| llmProvider / llmModel | deepseek / deepseek-chat | 评审模型(provider 级联该 provider 的模型目录) |
| skillLanguage | en | 生成技能的语言:zh / en |
| maxEvolvedSkills | 20 | 进化技能容量上限 |
| improvementEvery | 3 | 每 N 次同序列重跑触发一次改进评审 |
| maxImprovementsPerSkill | 5 | 单个技能最大改进次数 |
| maxEvidenceSteps | 30 | 送审证据最大步数(截断保护) |
| maxTracesPerSession | 200 | 每会话轨迹缓存上限(内存保护) |
| maxStepTextLength | 200 | 每步摘要截断长度 |
| reviewSystemPrompt | 内建 | 结晶评审 system prompt 覆盖 |
| improveSystemPrompt | 内建 | 改进评审 system prompt 覆盖 |

管理面板

设置页「技能进化」分区(设置 → 技能进化),双 tab 布局,右上角总开关随时停用/启用:

- 技能 tab:技能卡片列表——名称、描述、价值标签(高/中/低,按结晶次数与改进次数评估)、版本、调用次数(skill 工具调用 + 用户显式触发注入)、更新时间;展开看结晶信号、工具序列与完整 SKILL.md;删除/清空均两步确认
- 设置 tab:状态一览、评审模型(provider 级联选择)、生成语言,以及四个配置面板:
- 阈值与控制:把全部阈值画成一条流水线(回合结束 → 观察过滤 → 信号检测 → 佐证闸门 → LLM 评审 → 结晶入库 → 持续改进),每个参数嵌在它起作用的那一步里,所见即所调
- 评审提示词:结晶/改进两段 system prompt 就地编辑(草稿-保存工作流),可随时重置回内建版本
- 实时模式统计:观察到的工具序列模式与触发计数
- 危险操作:清空全部进化技能(两步确认)

数据与隐私

- 轨迹证据只存在于内存(有界缓存),不落盘
- 落盘的只有结晶产物(generated/*.json:SKILL.md 正文、信号、序列、统计)与 runtime-config.json
- 评审 LLM 调用走部署内已配置的 provider,不引入外部端点
- 卸载插件即删除全部数据(generated/ 随目录移除)

组成与开发

双面插件包(host + web client):

| 文件 | 角色 |
| plugin.mjs | 宿主半:轨迹观察、信号检测、LLM 评审、技能注册、./generated/ 持久化、/skill-evolution 认证 RPC 通道(list / get / remove / clear / listModels / setModel / setLanguage / setEnabled / setTuning / setPrompt …) |
| client.js | 浏览器半:设置页「技能进化」分区 |
| cordis.patch.yml | dsh.bundle.patch 挂载层 |
| test/smoke.mjs | 宿主半冒烟测试(mock cordis context,51 断言覆盖结晶/改进/FOLD_INTO/去重/RPC/计数) |
| test/screenshot.mjs | 无头截图脚本(CDP 驱动,全屏模式) |

node --check plugin.mjs && node --check client.js # 语法
node test/smoke.mjs # 冒烟测试
node test/screenshot.mjs # 重截 README 截图

仅依赖 node: 内建模块,不引入任何 @deepseek-ai 包,避免与宿主 cordis 双实例冲突。

License

MIT
预览分享卡片长什么样 ↓VanadisGithub/dsh-skill-evolution
分享 · DeepSeek Harness Hub
VanadisGithub/dsh-skill-evolution

自动把成功经验结晶为可复用技能并持续优化

这是你的仓库?认领条目

回到顶部