AI Native 手册
坑库

同一时间只让一套流程自动接管

两套流程框架同时开着,一句“帮我 debug”会被不同框架抢走。只留一套自动触发,其余改成手动调用

亲历产品阶段 · 起步更新于 2026-10-16
分享到 X
一句话规则

只让一套流程引擎自动触发,其余框架只留手动调用

发生了什么

在两套流程框架之间切换的那段时间,我两套都开着。同样一句“帮我 debug 一下”,有时被这套框架的调试 skill 接走,有时被那套接走。同一个项目里,前后两次 debug 走的是两套不同的流程,留下的记录也对不上,回头复盘很难拼出完整过程,更没法比较哪套更好用。

为什么会这样

skill 能被模型自动触发,靠的是描述匹配。以我装过的为例:superpowers 的 systematic-debugging 写的是“遇到任何 bug、测试失败或异常行为时使用”,Matt Pocock skills 的 diagnosing-bugs 写的是“用户说 diagnose、debug this 时使用”,gstack 的 /investigate 也是系统化调试。三个都声称自己负责 debug,模型每次只能挑一个,挑哪个取决于你的措辞和当时的上下文。

两套框架的设计也不一样。superpowers 会在会话开始时用 SessionStart hook 注入一段引导,要求“哪怕只有 1% 的可能适用,也必须调用 skill”。Matt 的 27 个 skill 里有 16 个本来就只能手动调用(比如 to-spec、grill-me、grill-with-docs),会去抢触发的是 diagnosing-bugs、tdd、code-review 这类允许模型自动调用的(截至 2026-10,v1.3.1)。

怎么做

定一个主引擎负责自动触发,其余框架降为只能手动调用。我现在的主引擎是 Matt Pocock skills(试用中)。试用中

推荐:按项目只启用一套。在项目的 .claude/settings.json(团队共享)或 .claude/settings.local.json(只对你生效)里,用 enabledPlugins 把另一套设为 false:

{
  "enabledPlugins": {
    "mattpocock-skills@claude-plugins-official": true,
    "superpowers@claude-plugins-official": false
  }
}

插件整个关掉,它的 skill 和 hook 都不会再加载。

想保留手动调用、只禁止模型自动触发:在 permissions.deny 里按插件名拦住 Skill 工具。模型调不了,你手动输入 /superpowers:brainstorming 这类命令仍然可用:

{
  "permissions": {
    "deny": ["Skill(superpowers:*)"]
  }
}

注意这条规则只拦 Skill 调用,superpowers 的 SessionStart hook 照常运行、照常注入引导。想彻底安静,用上一步的做法。

skillOverrides 只管普通 skill。它对插件里的 skill 无效,只作用于放在 ~/.claude/skills/ 或项目 .claude/skills/ 下的 skill。比如 gstack 装在 ~/.claude/skills/ 下,设成 user-invocable-only 后模型看不到它,你仍然可以手动敲 /investigate:

{
  "skillOverrides": {
    "investigate": "user-invocable-only",
    "review": "user-invocable-only"
  }
}

写进 CLAUDE.md 并验证。写明“本项目的流程引擎是哪一套、实质改动先走哪个命令”。改完开一个新会话,说一句“帮我 debug”,看接手的是不是你指定的那个 skill。

相关

本页目录