DeepSeek Harness 插件:dsh-skill-gate 技能触发与选择闸门

在 DSH(DeepSeek Harness)工作流开发中,模型通常依据关键词自动触发技能。当模型意图不明确或选择偏差时,往往缺乏有效的人工介入手段。dsh-skill-gate 插件通过引入一个中断点,将技能的最终选择权交还给用户,解决了这一痛点。

插件定位

这是一个 DeepSeek Harness host 插件,由 Bryan-cmf 维护。它的工作原理是:当模型触发技能时,系统拦截分发流程,将建议的技能及其他候选技能(均附带描述)展示给用户;用户在指定时间内做出选择后,系统才会执行对应的技能。

核心功能

  • 用户最终决定权:在模型意图与实际执行之间增加一道确认步骤,避免模型错误调用技能。
  • 超时回退机制:默认 10 秒超时,若用户未选择,系统自动使用请求的默认技能继续执行。
  • 原生 UI 展示:通过系统原生的问答界面展示候选技能列表,无需额外开发 UI。
  • 无头模式:支持无 UI 依赖的运行环境,在此模式下闸门直接放行。

安装与启用

插件依赖 DSH 版本 >= 0.1.0-rc.6,需要 skills、userQuestions 和 timer 服务支持(userQuestions 服务需要浏览器 UI 环境)。

方式一:Host Composition(推荐)

在 DSH 的 host 配置中引入插件包:

"dsh": {
  "profile": {
    "bundles": ["@bryan-cmf/dsh-skill-gate"]
  }
}

方式二:Agent Preset

在 Agent 预设配置中添加插件行:

- id: skill-gate
  name: '@bryan-cmf/dsh-skill-gate'

典型工作流

启用插件后,工作流会按以下逻辑运行:

  1. 模型触发技能调用。
  2. tools/execute 水流拦截分发,打开原生问答 UI。
  3. UI 展示候选列表(包含系统默认技能)。
    • 示例界面:
        🧠 技能选择
        系统将使用技能「ak-hk-stock-dd」。要改用其他技能吗?
        (10 秒内未选择将自动使用「ak-hk-stock-dd」)

        [ak-hk-stock-dd]  系统建议(预設)
        [serenity-skill]  供應鏈瓶頸投資研究方法論
        [dcf-valuation]   Discounted cash flow valuation…
  1. 用户选择:系统生成合成指令注入对话,模型加载选中的技能。
  2. 用户无操作:超过 timeoutMs(默认 10000ms),系统默认技能按原计划执行。

注意事项与场景

  • 状态变更:该插件已被 @bryan-cmf/dsh-skill-ledger 取代,原仓库仅作为设计历史记录存档。如果需要使用新的非阻塞技能提示方案,应参考 ledger 插件。
  • 并发限制:同一时间只能开启一个闸门。如果第一个闸门未关闭,新的技能触发请求将直接通过,不会被拦截。
  • 环境依赖:若运行在无 UI 环境(Headless),需确认未配置 userQuestions provider,否则插件会报错。
  • 许可证:MIT。

总结

dsh-skill-gate 为 DSH 代理提供了一种简单、可控的人机协作机制。通过将技能选择从“自动触发”改为“人工确认”,可以在保证效率的同时降低误触风险。

羽毛球分组比赛记分
小程序二维码

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

小夜