调研报告 · 2026-10-30

38 个技能,
你真正需要的是其中 3 个

全量读完了 mattpocock/skills 的每一个 SKILL.md,并对照 FF-AIO 的 7 个仓库、10 份项目规则和实际 CI 配置逐条比对。结论是:你已经有一套高度同构的流程, 缺的是语言层和护栏层。

01 / 结构

这个库押注的是基本功,不是让模型多写代码

理解下面三个结构特征,否则很容易用错。它刻意不做成 GSD / BMAD / Spec-Kit 那类"框架吃掉流程"的东西。

按调用权分两类

用户触发(disable-model-invocation: true)只能人打 /name,职责是编排;模型触发模型能自己够到,装的是可复用纪律。用户技能可以调用模型技能,但永远不能调用另一个用户技能。

有一个配置前置

setup-matt-pocock-skills 每个仓库跑一次,写三份配置:issue tracker、triage 标签词表、领域文档布局。没有它,to-spec / to-tickets / triage 会输出错误结果,而不只是不够精准。

底下垫着词汇层

grilling(访谈原语)、domain-modeling(领域语言)、codebase-design(深模块词汇)不是流程,是别的技能反复调用的底座。单独跑它们只在"问题出在词上"时才有意义。

02 / 流程

一条主流程,三个入口匝道

ask-matt 是路由器,它把整个库组织成下面的形状。注意它自己反复强调的一件事:流程 1 到 3 步要保持在一个不中断的上下文窗口里,别在中途 compact。

入口匝道 产生工作,然后汇入主流程
一堆 issuetriage汇入 implement
东西坏了diagnosing-bugs汇入 retro
雾太大wayfinder出决策,交棒给 to-spec
底层词汇 被反复调用,不单独跑
grilling访谈原语:按轮问完前沿,每题附推荐答案
domain-modeling挑战术语,写 GLOSSARY.md 和 ADR
codebase-design深模块:module / interface / depth / seam

要点wayfinder 路清了之后是交棒给 to-spec,不是直接进 implement。绕过这一步会把地图里那些互相引用的决策细节全丢掉。

03 / 技能全表

38 个技能,逐个说明并标注对你的适配度

适配度是本报告的核心判断,不是作者的分级。图例见下方筛选器。

筛选

Engineering · 用户触发

流程编排器 11 个
ask-matt

路由器。你描述处境,它告诉你该用哪个技能、哪条流。有一条硬规矩:在陈述某技能做什么之前,必须先读那个 SKILL.md 全文,不能靠摘要回答。

你已有 14 个项目技能,再加一个路由器只会让"该用哪个"更难判断。等你装完 10 个以上时再说。
可选
setup-matt-pocock-skills

一次性配置。探查仓库 → 确认 issue tracker(GitHub / GitLab / 本地 markdown / 自定义)→ 确认 triage 五个标签字符串 → 确认 GLOSSARY.md 单上下文还是多上下文 → 把摘要写进 AGENTS.md 或 CLAUDE.md 的 ## Agent skills 块。

关键细节:两个文件都已存在时只改已有的那个,绝不新建另一个;triage 标签只在装了 triage 技能时才问。

这是所有工程技能的前置。跳过它,to-spec / to-tickets 的输出是错的。tdd / code-review 用到的 /code-review 需要它。
立刻装
grill-with-docs

全文只有一句:调用 grilling 和 domain-modeling。它是"访谈 + 边聊边写 GLOSSARY.md 和 ADR"的组合入口。作者本人说这是整个库最酷的技术。

你的项目完全没有共享语言:7 层 DDD 分层、16 个生产库名、admin-edu / mall-order / admin-hr 一堆模块名,全部只活在人的脑子里。这是最大空白。
优先
to-spec

不访谈,只把已有对话综合成 spec 发到 tracker。模板含问题陈述、解决方案、超长用户故事清单、实现决策、测试决策、范围外、备注。硬性要求:先画出准备在哪几个 seam 上测,确认后再写,理想数量是 1 个。

你已经有了:docs/agents/workflow.md 的"定规格"一步,产出 spec 文件。它的模板可以借(尤其是用户故事清单的密度),但用它的流程反而更啰嗦。
不建议
to-tickets

把 spec 拆成追踪弹垂直切片,每张票声明阻塞边。核心纪律三条:一张票切穿所有层(不是后端票 / 前端票 / 测试票)、一张票一个上下文、一张票能独立演示。

最有价值的是那段例外:宽范围机械改动禁止切片(改字段名、批量换接口),因为任何一张票都无法独立转绿,要走"先并存 → 分批迁移 → 最后删旧形态"。拆完必须向用户确认粒度才能发布。

你的 docs/tickets 现在还是空的。它的阻塞边 + 前沿 + 宽改动例外,几乎可以原样搬进 workflow.md。
优先
implement

按 spec 或票实现。指定票时先报出票标题;逐处调用 tdd;经常跑类型检查和单文件测试,最后跑全量;收尾调用 code-review;提交到当前分支。总共不到十行,是个薄包装。

你已经有了"实现"这步。它里面唯一值得拿的是"经常跑单文件测试、最后跑全量"这个节奏,抄一句话即可。
不建议
implement-spec

整份 spec 一次性落地到一个集成分支。把票当任务图读,按前沿并发铺实现子代理,每个子代理独占 worktree 和分支;完成一个就用 merger 子代理合回集成分支,前沿变化后立刻补发新子代理。全部完成后对整个集成分支跑一次 code-review。通信靠上下文指针,不复制信息。

后端多模块 Maven 天然适合 worktree 并行,但它依赖两件事:docs/tickets 真的被用起来、票之间的阻塞边是对的。先手动跑顺 2~3 轮再说。
可选
wayfinder

处理"比一个会话大得多、且还没看清路"的工作。在 tracker 上画一张共享地图,子票是决策票(research / prototype / grilling / task 四型),一次只解一张。核心概念是战争迷雾:地图故意不完整,"Not yet specified" 记录你感觉到但还说不清的决策,能说清才开票。它只产出决策不产出交付物,路清了就交棒给 to-spec。

只在"说不清路"时用,比如 AI 教练要不要从 H5 迁到独立端这种横跨后端、两个前端、数据口径的大改造。作者明说它又慢又密,别对已想清楚的功能用。
可选
triage

issue 状态机:两个分类角色(bug / enhancement)+ 五个状态角色(needs-triage / needs-info / ready-for-agent / ready-for-human / wontfix)。动作序列是收集上下文 → 查重(按领域概念搜现有实现,不按请求字面)→ 查历史拒绝记录 .out-of-scope/ → 先验证再访谈(bug 要复现,PR 要跑)→ 需要时 grilling → 出 ready-for-agent 简报。所有评论必须以 AI 生成免责声明开头。

你们有 YouTrack。如果打算把"收到 bug 报告 → 变成可直接开工的任务"这步自动化,它是最成体系的参考。但现在没有这个链路的证据。
可选
improve-codebase-architecture

架构体检。先用 git log 找热点(YAGNI:只深挖近期改动多的区域,不搞全量扫描)→ 派子代理有机走查,找浅模块 → 生成自包含 HTML 报告写到操作系统临时目录(不进 repo),每个候选含前后对比图和建议强度徽章(Strong / Worth exploring / Speculative)→ 你挑一个,进入 grilling。会主动检查是否与已有 ADR 冲突。

mp-service 是典型高危对象:7 层 DDD × 大量微服务 × 499 个测试。它最可能撞上的三类浅模块在你这里都成立(见下方差距表)。建议每几周跑一次,作者原话是体检不是抢救。
优先
retro

回顾会,但改进对象是代理的环境而不是代码。七类候选:导航指针、自动化检查、编码标准、全局 AGENTS.md 瘦身、工具经济性、无效指令、信息获取。

两个核心论点值得直接采纳:① 机械性错误做成确定性检查,判断性错误才写进标准;② review 代理该背标准,实现代理不该,因为实现代理的上下文压力最大。

你 1451 行规则靠 @ 引入常驻上下文,正是它说的"该瘦身"。这是最能立刻产生结构性收益的一个。
优先

Engineering · 模型可自动触发

可复用纪律 9 个
domain-modeling

主动打磨领域模型。术语与 GLOSSARY.md 冲突时当场指出;模糊词提出精确规范词("你说的 account 是 Customer 还是 User?");用构造的边界场景压测概念;与代码对照,发现矛盾就摊开。术语一敲定立刻写进去,不攒批。

ADR 只在三条同时满足时才提议:难以回退、脱离上下文会让人困惑、是真实权衡的结果。任何一条不满足就跳过。

你的 admin-edu / mall-order / admin-hr 之间"课程 / 培训单 / 测评"的边界从来没被写下来过。这是它最高价值的落点。
优先
codebase-design

深模块词汇表,且明确禁止你说 component / service / API / boundary,只准用 module / interface / depth / seam / adapter / leverage / locality。核心判据三条:删除测试(删掉这个模块,复杂度是消失了还是转移了?消失就是直通层)、接口即测试面、一个 adapter 是假 seam,两个才是真 seam。

附 DEEPENING.md(按依赖类型深挖)和 DESIGN-IT-TWICE.md(并行派子代理用几种截然不同的方式设计同一接口再比较)。

它服务的是 TS 语境,但"删除测试"和"接口即测试面"两条判据对你的防腐层直接适用。当作阅读材料,不必装。
场景触发
tdd

红绿循环参考手册。三个反模式写得很准:实现耦合(重构就挂说明测错了)、同义反复(expect(add(a,b)).toBe(a+b),断言用代码的方式重算期望值,构造上就不可能失败)、横向切片(先写一堆测试再写实现,等于在理解实现之前就锁死测试结构)。改走垂直切片。它还明确说:重构不属于这个循环,归 review。

你有 499 个测试文件,但流水线从不跑它们。装上 tdd 之前,先把"绿"这件事变成机器认可的事实,否则红绿循环没有意义。
优先
diagnosing-bugs

硬 bug 的诊断纪律,六阶段严格闸门。Phase 1 就是全部:必须造出一个"已经在这个 bug 上变红"的紧致反馈环,列出 10 种造法(失败测试 / curl / CLI / 无头浏览器 / 回放抓包 / 一次性 harness / 模糊测试 / 二分 harness / 差分对比 / 人工脚本兜底),并要求继续收紧:更快、信号更尖、更确定。

完成判据是四条勾选:红能力、确定性、秒级、可无人值守。建不出环就停下来说,绝不允许"先读代码猜原因",那正是它要防的失败模式。后面才是复现 → 最小化 → 3~5 个可证伪假设 → 插桩(日志必须带 [DEBUG-xxxx] 前缀,收尾一次 grep 清干净)→ 修 + 回归。

这是对你的边际收益最高的一个,因为造环所需的工具你全都有:mp-api-test 造 curl 环、mp-db-test / adb-prod-query 造数据态环和差分环、bruno-test 造可重复回归、agent-browser 造无头浏览器环、alibabacloud-sls-query 回放真实日志。问题是它们现在是散的。
立刻装
prototype

一次性原型回答设计问题。先分叉:问"逻辑 / 状态模型对不对"→ 单文件 HTML(按钮 + 标签页引导,非程序员也能开);问"该长什么样"→ 同一路由下几套截然不同的 UI,URL 参数切换。

铁律:明确标记一次性、一条命令能跑、默认不持久化、跳过打磨、每次操作后把状态全打出来、做完把结论折回真代码、原型本身留到 prototype/<name> 分支当一手来源。

你前端已有 tests/ai-coach/*.test.mjs 这种 harness 思路,和它的逻辑分支很接近。做成两类分支都跑过一次再判断是否常驻。
场景触发
research

派后台代理去查,你继续干活。只信一手来源(官方文档、源码、规范、一方 API),每条论断追到拥有它的源头,产出带引用的 Markdown 落到 repo 已有的笔记位置,没有约定就放个合理位置并说明。

短小无机制,一句话就能抄走:"查证只认一手来源,产出带引用。"不值得为它建一套基建。
场景触发
code-review

双轴审查,从固定基点(commit / branch / tag / merge-base)取 diff:Standards 轴看是否遵守本仓文档化标准 + 一套 Fowler 坏味道基线;Spec 轴看是否忠实实现原始 issue / spec。两轴并行子代理跑,绝不合并、绝不跨轴排名。

这个设计理由很实在:只过一轴是常态("完全合规但做错了事" / "做对了事但破坏了约定"),合并会互相掩盖。坏味道基线里"仓库已文档化的标准永远覆盖基线"这条很关键。

你的 review.md 已经在两轴上分开了,但缺并行子代理这个机制。同一个上下文审两轴会互相污染,这是唯一必须补的一环。
优先
pr

PR 正文模板三段:Summary(选最小的可视化:伪代码 / 调用树 / 组件树 / 文件树 / Mermaid / diff)、Evidence(before + after)、Merge Danger(单向门还是双向门 + 爆炸半径一个词)。

你全部在自建 GitLab 上,模板可以直接落成 .gitlab/merge_request_templates/。对你们特别有用,因为爆炸半径是真的:proda / prodb 灰度、切流量,一次合错就是资损。
场景触发
wizard

生成交互式 bash 脚本,带人走只有人能做的事:开基础设施、配凭据 / CI secret、点不熟悉的第三方后台、跑一次性迁移或割接。模板 template.sh 已经把进度、确认闸门、跨平台开 URL、隐藏输入密钥、幂等写 .env、gh secret 写入、收尾汇总做好了,你只负责划阶段,绝不手改模板库。

你的 branch-naming / prod-deploy 里那些"必须人亲自点"的环节正是靶心:阿里云 DMS 授权、Yearning 工单确认、Nacos 改配置、七牛密钥。gh secret 那部分要换成 GitLab 变量。
场景触发

Productivity

通用工作流 · 含访谈原语 7 个
grilling

访谈原语。把设计当成决策树,按轮推进:每一轮问完当前前沿(所有前置已定的问题),每题编号并附上推荐答案,然后等回答再算下一轮。铁律是找事实是代理的活,不是用户的:需要环境事实就派子代理去查,别问用户;决策才是用户的。

这是全库复用率最高的一块,grill-me / grill-with-docs / triage / wayfinder / improve-codebase-architecture 全都在内部调它。
优先
grill-me

全文一句:调用 grilling。无状态,不落任何文件。给"没有工作目录"的场景用:打磨方案、设计、一篇文稿。

你在任何仓库里工作时都应该用 grill-with-docs 而不是它,因为后者跑同一套访谈还会留下文档,严格更优。
可选
handoff

把当前对话压成交接文档存到操作系统临时目录(不是工作区)。三条要求:不重复其他产物已有的内容(spec / 计划 / ADR / issue / commit / diff 用路径或 URL 引用)、脱敏、末尾附建议调用的技能清单。

你跨 7 个仓库、会话切换频繁,存到 $TMPDIR 而不是工作区这点正好合适。不依赖任何配置,可以随手用。
场景触发
teach

把当前目录变成有状态的私人课堂。产物结构:MISSION.md(为什么想学)、RESOURCES.md、lessons/0001-*.html(每课一个自包含 HTML)、reference/*.html(速查表,可打印)、learning-records/(类似 ADR 的学习记录)、assets/(可复用组件)。

理论内核是区分流畅度强度(当场想起来)和存储强度(长期留存),靠"合意困难"(提取练习、间隔、交错)来造后者。它还强调"绝不相信自己的参数化知识",一切以一手资源为准。

非工程用途。但它的课程结构(MISSION + learning-records + 可复用 assets)如果你要给团队做培训,是很好的参考。
不建议
to-questionnaire

把"你一个人答不了的决定"变成给别人的问卷。关键反直觉点:只访谈"发送"这件事,不访谈主题:问清对方是谁、你要拿回什么,然后问题瞄准两者之间的缺口。

偶尔有用。比如要问业务方"培训单和课程的边界到底是什么",用它比直接在群里问要好。
可选
wait-what

全文一段话,纯纠正机制:"刚才那条我没听懂,重讲一遍:给点上下文,用 ASD-STE100 简化技术英语,用 GLOSSARY.md 的词汇。"

机制极轻(就是一句 prompt),但它依赖 GLOSSARY.md 存在才有威力。你先建字典,这个才有意义。
场景触发
writing-for-agents

写给代理读的文档的方法论,全库理论密度最高的一篇。要点:上下文指针(一行 AGENTS.md 引用的措辞而非目标,决定代理会不会去读;必须前置引导词、每个分支一个触发词);两种负载(上下文负载 = 常驻 token;认知负载 = 人要知道有哪些文档);信息层级(文件内步骤 > 文件内参考 > 披露式参考)。

反直觉的两条:否定式指令是反模式("别想大象",禁令把被禁行为拉进上下文反而更可得,要正面描述目标行为);逐句猎杀 no-ops(模型默认就会照做的指令,付了负载却没改变行为)。

你的 AGENTS.md + 1451 行规则正是它的靶子。不用装,读一遍就能立刻改进你的规则文件结构。这是本报告建议你最快完成的一项。
优先

In-progress · Beta

插件默认不装 7 个
chief-of-staff

用子代理在单会话内推进长期目标。双轨思维:战术(怎么完成眼前任务)+ 战略(怎么改造环境让下一个任务更好)。核心是 wiki:互相链接的 markdown 页面文件夹,跨会话存活。三条铁律是"写历史不写现在":每条断言带日期,涉及代码的必须引用 commit,变化时新增带日期的断言并把旧的标为 superseded,不要改写旧的。

跟你的多仓库工作区模型不匹配,收益小于成本。但"写历史不写现在"这条,你写决策记录时可以直接用。
不建议
claude-handoff

handoff 的加强版:写完摘要直接用 claude --bg --name "<名字>" 拉起一个后台代理接着干,参数用文件传入(避免 shell 解释反引号和 $)。

绑死 Claude Code CLI。你用 DSH,机制不对应。
不建议
loop-me

只产出工作流 spec 的有状态 grilling。用"人生是环环相扣的循环"这个透镜找值得委托的重复模式,词表是 trigger / checkpoint / push right(把人介入点尽量推后,一次问、晚点问、带齐东西问)/ brief(人读的是决策级摘要,不是草稿)。完成判据:实现代理拿到能不问任何问题就开工。

个人生活工作流,非工程。
不建议
setup-ts-deep-modules

给 TS 仓库装 dependency-cruiser,把每个 package 变成深模块:package 根目录文件是入口点(公开),任何子目录都是私有。四条 error 级规则(入口点边界 / 包内自由 / 测试只穿入口点 / 无环)。

最值得抄的是它的验收方式:要求证明规则真的会咬人,先通过 → 故意加一个深层 import 必须失败 → 回滚必须再通过,三步全部观察到才算完成。

绑 dependency-cruiser + TS monorepo,你后端是 Maven。但那个"证明规则会咬人"的三步验收,可以搬到 maven-enforcer-plugin 上。
不建议
writing-fragments

写作"探索"阶段:只挖碎片不做结构。碎片用 --- 分隔,不写小标题不打标签。最值钱的碎片类型是引导词:一个能承担整篇文章的紧凑隐喻。

写作专用。三个 writing-* 都属此类,不展开。
可选
writing-beats

把素材堆成一段段节拍,选自己的冒险式推进。每次只写当前这一拍,写完停下来给 2~3 个下一拍候选。核心约束是接地:每个概念要么是读者自带的前置,要么已被前面某一拍接住,否则读者会掉线。

写作专用。
可选
writing-shape

把素材整理成文章,逐段进行,每一段都要论证格式选择(散文还是列表?引用还是转述?表格还是重复结构?)。对弱过渡句很强硬:"删掉这段会坏什么?"

写作专用。但它"论证格式选择"的思路,写技术文档时同样成立。
可选

Misc · 强绑定 TS

作者自用为主 4 个
git-guardrails-claude-code

装 PreToolUse hook,在 Claude 执行前拦截危险 git 命令:git push(含 --force)、reset --hard、clean -f/-fd、branch -D、checkout . / restore .。被拦时告诉 Claude 它没有权限。会问清装本仓库还是全局,合并进已有 settings 不覆盖。

你根 AGENTS.md 里写着「Git 反向合并红线:禁止把集成分支反向合进 feature/release」。这条现在靠"代理记住了"来保障,但它是可以被 reset --hard 或 branch -D 一次性破坏的。做成机械拦截,正是 retro 说的"机械性错误做成确定性检查"。
立刻装
setup-pre-commit

装 Husky + lint-staged(Prettier)+ 在 pre-commit 里跑 typecheck 和 test。先探测包管理器(看 lock 文件),没有 typecheck / test 脚本就省略并告知。

前端 operation 已经有 husky + lint-staged 了,h5 用 Biome。真正缺的是pre-commit 里跑测试,这才是补护栏的动作。
场景触发
migrate-to-shoehorn

把测试里的 as 断言迁到 @total-typescript/shoehorn:fromPartial() 传部分数据、fromAny() 故意传错类型、fromExact() 强制全量。只在测试代码用。

TS 专用,你的 h5 用 Biome 管,没有这类断言问题。
不建议
scaffold-exercises

造课程练习目录(XX-section/XX.YY-exercise/{problem,solution,explainer}),靠 pnpm ai-hero-cli internal lint 校验。

作者自己课程的脚手架,对你无意义。
不建议
04 / 你的项目

实测出来的 FF-AIO 现状

下面每个数字都是在本机实际跑命令得到的,不是推测。

7
独立 git 仓库,全部托管在自建 GitLab
git.fastfish.com
499
mp-service 里的 *Test.java 文件
find · 86 个 src/test 目录
0
进流水线的测试。CI 里是 -Dmaven.test.skip=true
.gitlab-ci.yml
1451
行项目规则,靠 @ 引入常驻上下文
.claude/rules/*.md
0
份 GLOSSARY.md 或 ADR,共享语言完全空白
ls GLOSSARY.md docs/adr
0
个 ticket 文件,docs/tickets 只有 .gitkeep
find docs/tickets
14
个自建项目技能,工具链其实很完整
.claude/skills/
2
套前端测试已存在(h5 的 harness、operation 的 playwright)
tests/ai-coach · tests/playwright
05 / 差距

你已经有一套同构的流程,缺的是三处

最关键的一点:docs/agents/workflow.md 的四步跟它的主流程几乎就是同一件事,所以不需要换框架。

你现在有的 对应的技能 差距 / 该补什么
workflow.md 四步 to-spec to-tickets implement code-review 缺两样:阻塞边 + 前沿(谁可以先开工)、宽范围机械改动禁止切片的例外。expand–contract 那段可以原样搬进去。
review.md code-review 双轴 你已经在两轴上分开了,但缺并行子代理机制。同一上下文审两轴会互相污染。只借这一点即可。
verification.md tdd + diagnosing-bugs 你的文档回答"怎么证明做完了",这两个技能回答"过程中怎么持续拿到反馈"。互补,不替代。
.claude/rules 1451 行 writing-for-agents 负载理论 1451 行常驻是实打实的上下文负载。该留的只有导航指针,标准交给 review 代理去读。
14 个项目技能 wizard + retro branch-naming、prod-deploy 里"必须人亲自点"的环节正是 wizard 的靶心。
06 / 落地方案

按投入产出排序的行动清单

P0 是三件成本低、收益直接的事。做完再谈 P1。

P0立刻做

给代码建一套共享语言

拿一个你最近真在改的业务跑一次 grill-with-docs。推荐 AI 教练 coach:你前端已经有 tests/ai-coach/、scripts/verify/coach-state.verify.mjs、src/views/coach/ 一整套,上下文最完整。

产出会直接改善三件事:变量和函数命名一致、代理导航更快、代理思考更省 token。

为什么这是 P0:7 层 DDD 分层、16 个生产库名、admin-edu / mall-order / admin-hr 之间"课程 / 培训单 / 测评"的边界,现在只活在人的脑子里。这是全工作区最大的空白。
P0立刻做

让测试真的跑起来

后端:把 CI 的 -Dmaven.test.skip=true 拿掉,或者至少分层跑(先只跑改动的模块)。前端 h5:package.json 里连 test 脚本都没有,但 tests/ai-coach/*.test.mjs 是存在的。

这不是"用某个技能",而是 retro 的核心论点:仓库里没有护栏,本身就是一条发现,不是中性默认。

为什么要在 tdd 之前做:你现在有 499 个测试从没进过流水线,它们的真实状态是未知的,而且会持续腐坏。红绿循环的前提是"绿"这件事在你机器外也被认可。
P0立刻做

把 git 红线变成机械拦截

装 git-guardrails-claude-code,装到项目级 .claude/settings.json。你 AGENTS.md 里写着的「禁止反向合并」这条,从"代理记住了"变成"代理做不到"。

需要改一处:原脚本是给 Claude Code 的 hook 格式。如果你主要用 DSH,要么改用你们的 hook 机制,要么至少把 block-dangerous-git.sh 的匹配规则抄过来。
P1下次中等功能时

用 diagnosing-bugs 的 Phase 1 治线上排查

把你的工具明确列为"造环工具箱":mp-api-test 造 curl 环、mp-db-test / adb-prod-query 造数据态环和差分环、bruno-test 造可重复回归、agent-browser 造无头浏览器环、alibabacloud-sls-query 回放真实日志。

然后立一条规矩:没有一条已经在这个 bug 上变红的命令,不许开始猜原因。

P1下次中等功能时

跑一次架构体检

improve-codebase-architecture 会先用 git log 找热点,只挖近期真在动的区域。根据你项目结构,最可能撞上的是三类:

  • 防腐层里的透传 Facade(删除测试会直接暴露它)
  • 为可测性硬抽的纯函数,但真 bug 藏在调用侧,locality 丢失
  • inf 与 inf-db 之间的 seam 泄漏
P1下次中等功能时

把 PR 模板落到 GitLab

把 pr 的三段模板写进 .gitlab/merge_request_templates/。重点保留 Merge Danger 那一段:单向门还是双向门 + 爆炸半径。你们的 proda / prodb 灰度和切流量,一次合错就是资损。

P2场景触发

按需再上

  • wizard:把 branch-naming / prod-deploy 里人必须亲自点的环节脚本化(阿里云 DMS 授权、Yearning 工单确认、Nacos 改配置、七牛密钥)。
  • wayfinder:只在你说不清路时用,比如 AI 教练要不要从 H5 迁到独立端。
  • implement-spec:先手动跑顺 2~3 轮 to-tickets + implement 再上。
  • handoff:跨仓库切换会话时随手用,存到 $TMPDIR 正好合适。
07 / 安装

不要一次灌 38 个

会把你现有的 14 个项目技能冲乱,而且 in-progress 那 7 个根本不该装。

01

先装 setup-matt-pocock-skills

issue tracker 选 GitLab(你 glab 已装、remote 指向 git.fastfish.com),triage 标签保留默认五个,领域文档用单上下文。

两个坑要提前知道:
① mp-service 是独立 git 仓库,而工作区根 AGENTS.md 不是。setup 会改"已存在的那个文件",所以两个位置是两套配置。建议先只配 mp-service。
② docs/adr/ 会落在 mp-service/ 下,跟现有的 wiki/、doc/、work-log/ 并存,先看一眼会不会打架。
02

再装模型触发那批

tdd、code-review、diagnosing-bugs、domain-modeling、codebase-design、prototype、research、wizard、pr、grilling、writing-for-agents。

这一批是纪律,装了就一直有用。

03

用户触发那批按需

wayfinder 和 implement-spec 最后再说。

装的时候走你已有的 manage-skills 技能,比手工 copy 好:能保留来源元数据、支持按 agent 部署和下线、以后好统一升级。