skill-bartender: Minimal Skill Allocation — Task-Skill Matching for DeepSeek Harness (Meta-skill)

前言

DSH 的理念是一切皆插件,技能装多了之后,智能体面对的是一个不断变长的目录。它看得到每个技能的名字和描述,但常见行为是「过度倾倒」:加载太多技能、加载错技能,或者漏掉那个本来能把整个任务串起来的 workflow 技能。

这里有个代价不对称:错的技能一旦加载,技能正文会一直留在会话历史里;而漏加载只损失一次工具调用。既然漏比错便宜,合理的策略就是宁可少倒。skill-bartender 就是按这个思路实现的——它不提供具体能力,只负责决定「这个任务该加载哪个技能,还是干脆不加载」。

这是什么

skill-bartender 是面向 DeepSeek Harness 的任务配技能 meta-skill,维护者为 MJorgin,采用 MIT 许可证,当前版本 0.1.2,社区目录将其归入「工作流」类。一句话定位:按懒惰阶梯只倒最少的技能(通常一个,纯工具够用则为零),优先 workflow 技能;缺失技能经隔离扫描加人工批准后才安装,绝不自动安装。

核心功能

懒惰阶梯

对每个任务,从下往上走阶梯,停在第一个站得住的档位:

  1. 纯工具够用 → 加载 0 个技能;
  2. 有匹配 → 只加载 1 个;
  3. workflow 技能优先于手工拼装多个 atomic 技能;
  4. 不确定 → 不加载(漏掉好过错倒)。

路由表

references/policy.md 是一份用户可编辑的 task→skill 映射,覆盖默认行为。其中按 URL 路径模式路由 doc / drive / wiki / sheets / base / slides 等技能族。把这份表粘贴进 AGENTS.md,即可实现常开路由,每个任务都过一遍阶梯。

安全酒窖

需要某个技能但本地没有时,流程是固定的:

  1. 搜索候选技能;
  2. 下载到隔离目录,不直接进技能根目录;
  3. 用 SkillSpector 扫描;
  4. 脚本内容展示给人审阅,默认拒绝;
  5. 明确同意后才复制进技能目录。

每次安装都记录来源、commit hash 与扫描结论。人工批准对每次安装都是强制的,绝不静默安装。另外,任何技能里的 scripts/ 都是代码,未经人工审查绝不执行。

学习(DSH)

在 DSH 上,已加载但未被使用的技能会被记录,下次同类型任务直接跳过;长期不被使用者会被提议移除。

品味测试(按需)

按请求列出已安装技能,把弱描述改写成「何时使用」的触发短语形式,并受 500 字符的目录上限约束。

跨平台

同一份 SKILL.md 约 15 秒内可安装到 DSH、Claude Code、Codex 三家平台。

安装与启用

以 DSH bundle 方式安装:

dsh plugin --profile web add github:akqwpeter-prog/skill-bartender

需要说明一点:该安装命令与 README 中的 CI 徽章指向 akqwpeter-prog/skill-bartender,而目录页与 README 给出的仓库地址和维护者是 MJorgin/skill-bartender,两者目前不一致,无法确认哪个为当前官方仓库。安装前请自行核对源码。

也可以手动安装到 DSH:

mkdir -p ~/.dsh/skills/skill-bartender
cp skills/skill-bartender/SKILL.md ~/.dsh/skills/skill-bartender/
cp -r skills/skill-bartender/references ~/.dsh/skills/skill-bartender/

安全酒窖流程依赖 SkillSpector。若本机未安装:

uv tool install git+https://github.com/NVIDIA/skillspector.git

或按 references/policy.md 中的手动清单逐项检查。

启用方式:在任意会话中说一次 “skill-bartender”,或把路由表粘贴进 AGENTS.md。注意 skill-bartender 自身绝不自触发、绝不预加载,需要用户手势或任务匹配加载一次。

典型用法

四种用法,对应不同场景:

  1. 直接报名字:在任意会话中说 “skill-bartender”,适合一次性使用或首次设置;
  2. 常开路由:把 references/policy.md 中的路由表粘贴进 AGENTS.md,之后每个任务都经过阶梯;
  3. 请求配对:问 “Which skill fits this task?”,在多个技能之间做选择;
  4. 酒窖审计:说 “Audit my installed skills”,执行品味测试,把弱描述重写为触发短语形式。

适用场景与注意

适合谁:已经装了一批技能、希望智能体少加载而不是多加载的 DSH 用户;希望缺失技能的安装过程有隔离、扫描、人工批准这道纪律的团队;想在 AGENTS.md 里维护一份明确 task→skill 规则的人。

与生态的关系:DshMarket、dsh-find-plugin、dsh-plugin-autoevo 负责查找、搜索和自动安装插件,skill-bartender 补的是路由策略(阶梯加路由表)和「先隔离后批准」的安装纪律。它们是互补关系,不是替代。

使用前注意几点:

  • 技能本质是指令,指令可能带有对抗性(提示注入)。SkillSpector 扫描通过只是过滤器,不是保证;脚本展示给人审阅且默认拒绝就是为此设计的。
  • skill-bartender 自身的自扫描结果为 SkillSpector 0 findings(score 0 / SAFE),报告见仓库 docs/skillspector-report. 文件。
  • 插件以当前 dsh 进程权限运行,安装前应检查源码与许可证(本项目为 MIT)。

小结

skill-bartender 解决的是一个具体问题:技能目录变大之后,加载决策本身也需要纪律。懒惰阶梯控制「倒多少」,路由表控制「倒哪个」,安全酒窖控制「新酒怎么进窖」。如果你的智能体正被一柜子技能拖累,值得试一试。

  • 目录页:https://www.skillhub.cn/plugins/MJorgin/skill-bartender
  • GitHub:https://github.com/MJorgin/skill-bartender
羽毛球分组比赛记分
小程序二维码

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

Xiaoye