agentleFS
EthanReedLabsEthanReedLabs/sulde/skills/coordinator/multi-source-review/SKILL.md

multi-source-review

Skill99 starsChanged 24 days agoMITView on GitHub

多源评审 / 三角验证 / 防单源误判。用于重大文档、大改动、发版前检查和跨决策边界改动; 自动编排多源实证、区分代码与文档审查,并将 finding 分类为真实缺陷、上下文缺失、 用户语义决策和低优先级建议,拒绝盲目实施或表演式同意。

  • Deletes or force-pushes
  • Commits and pushes
Files
SKILL.md

multi-source-review — 多源评审 + 分类决策

Why this skill exists:单 reviewer 实证 critical claim 有失误风险(协议字段名错 / grep 范围漏 / context 偏差)。盲目接受全部 finding = 反向破坏。盲目推翻 = 错过真问题。本 skill 提供实证 + 三角 + 分类决策的可执行流程。


§-1 前置条件(plugin 依赖)

本 skill 引用以下外部 skill / subagent:

引用来源必装否
general-purpose subagentClaude Code 内置✅ 始终可用
Plan / Explore subagentClaude Code 内置✅ 始终可用
claude-code-guide subagentClaude Code 内置(部分版本)检查 Task tool schema;不可用 → Agent 改用当前宿主的通用审查能力并自行查官方文档
superpowers:receiving-code-reviewsuperpowers plugin强烈推荐(本 skill §5 引其方法论)
superpowers:verification-before-completion同上类 A 实施完后用
mattpocock-skills:grill-with-docsmattpocock-skills plugin§3 候选组合可选
mattpocock-skills:improve-codebase-architecture同上§3 候选组合可选
mattpocock-skills:zoom-out同上§3 候选组合可选;不能由 Agent 调用时选用等价的当前宿主审查能力

依赖处理:Agent 先发现当前宿主已有能力。缺少可选 plugin 时默认用内置审查能力降级;若安装确有材料收益且涉及外部变更,展示宿主原生 Allow/Deny,Allow 后由 Agent 安装并验证。不得把安装命令交给用户。


§0 触发条件

任一命中 → 启动本 skill:

触发例
重大 doc 起草后>500 行设计 doc / 涉及协议字段 / 含架构决策
重大 code merge 前>10 文件 / 跨模块 / breaking change / 第三方依赖切换
发版前 final checktag / release 前
用户主动问"现在有什么问题 / 哪里需要修 / review 一下"
自审触发你自己起草后觉得"是不是漏了什么"
跨决策边界改动public/private / license 切换 / scope 大调

不触发:小 bug fix / 一行改 / 局部 refactor / 临时实验。


§1 第一步:区分代码评估 vs 文档评估

不同目标维度不同,不可混评。

1.1 代码评估维度

维度检查点工具
协议合规API contract / framework convention / hook spec / schemaclaude-code-guide subagent(若是 Claude Code) / 官方 docs WebFetch
安全secrets / auth / injection / OWASP / XSS / SQLgrep secrets / 静态分析 / dep scan
性能算法复杂度 / 资源占用 / 并发 / 内存泄漏 / N+1profiler / benchmark / Diagnose skill
测试覆盖单测 / 集成 / edge cases / regressioncoverage report / TDD skill
runtime 实证build / install / 启动 / 跑得通verification-before-completion skill
依赖一致lock file / version drift / cyclic depdep tree / lock check

1.2 文档评估维度

维度检查点工具
路径实证每个引用 file path / URL / command 实测可达ls / find / curl / WebFetch
链接有效相对 / 绝对 / GitHub 渲染 / 跨 doc 引用grep \.md\) + 实测点击
内容准确claim vs 实际 codebase / 数字一致 / 段落间不矛盾grep + 计数 verify
PII / secrets真名 / email / API key / 绝对路径 / 公司内部 URLgrep -rE 多 pattern
reviewer contextreviewer 是否清楚 doc 服务的 audience / 决策边界跨 review 对照
可执行性跟着 doc 步骤走能完成目标吗?有断点吗?假装新用户走一遍
deprecation 链路老 doc 是否标 DEPRECATED 指向新 docgrep "DEPRECATED" + 头部 banner

1.3 混合(代码 + 文档)

实际项目常混(代码改 + doc 同步)。先分,再合:列出代码维度 finding + 文档维度 finding,不要混在同一份 review prompt(reviewer 会顾此失彼)。


§2 第二步:候选 skill / Agent 矩阵(按能力)

启动 review 前先列候选(按 angle / 能力),不要一上来就 spawn 全部。

skill / agent强项适合工时
claude-code-guide subagent(若可用)Claude Code 协议层(hook / skill / plugin / API)代码评估 — 协议合规5-10 min
general-purpose + WebFetch 官方 docs(fallback)同上,若 claude-code-guide 不可用代码评估 — 协议合规8-12 min
general-purpose subagent(fresh context)独立视角 / 不读本 session 历史 / 综合判断文档评估 — 内容质量 + 隐私 + 体验10-15 min
mattpocock:grill-with-docs对照已有 docs / ADR / 哲学一致性文档评估 — 跨 doc 一致10-15 min
mattpocock:improve-codebase-architecture重构 / 合并 / DRY 机会代码评估 — 架构层10 min
mattpocock:zoom-out拉高视角看整体方向通用 — 防陷局部5-10 min
superpowers:receiving-code-review元 review — 处理 review feedback 不盲目通用 — 必配5 min
superpowers:verification-before-completionclaim 完工前自检通用 — 必配5 min
Plan subagent架构师视角 / trade-off / 实施风险通用 — 大改动前10 min
Explore subagent快速 grep / read 全 codebase 找 pattern代码评估 — 探索5-10 min
宿主原生高阶 review多 Agent 云审 + 可能计费代码评估 — 终审先展示原生计费/高风险决策,Allow 后由 Agent 启动;不可用则降级

禁忌:不要一次 spawn ≥4 subagent — 信息过载,你无法消化。


§3 第三步:组合 ROI 推荐 + 让用户选

按 angle 给 候选组合表 + 工时 + ROI 理由,让用户挑(不是抛 N 选 1,是基于实证给推荐 + 备选)。

推荐组合模板

顺序skill 组合目的工时
★ 1元 review + 拉高视角process 已有 finding 分类 + 整体方向 check~10 min
2协议层 + 内容质量 双 subagent 并行第一轮覆盖代码 + 文档 双维度~15 min
3域一致性(grill-with-docs)防 v2 doc 改动破坏 v1 哲学~10-15 min
4三角验证 subagent防单源 reviewer 误判(见 §4)~10 min
5架构 refactor大改动后的 DRY 机会~10 min

给推荐 + trade-off + 等用户选(不直接 spawn 全部),例:

"推荐 ★ 1 + 2 并行(~25 min)— 元 review process finding + 双 subagent 覆盖代码 + 文档双维度。 若担心单源风险,加 4 三角验证(~10 min);若想拉高看方向 add ★ 1 already 含 zoom-out。 不推荐一次 spawn ≥4 subagent(信息过载消化不了)。 跑 ★ 1+2 还是加 4 三角验证?"


§4 第四步:三角验证铁律(critical claim 必)

单 reviewer 实证 critical claim 不够。任一命中 → 必三角:

触发例
协议字段 / 字段名reviewer 说 "API X 字段是 Y" → 必 WebFetch 官方 docs 原文 quote
数字 / 计数reviewer 说 "N 处文件含 X" → 必自己 grep 复核
路径 / URLreviewer 说 "path Z 是 standard" → 必实测 ls / find
推翻之前决策reviewer 说 "之前 architectural decision 是错的" → 必让独立 reviewer 二次确认
协议未明 / 行为不定reviewer 说 "协议没说清楚" → 必 WebFetch 找更细 docs(可能 reviewer 漏看)

三角验证 prompt 模板

独立三角验证 [target] 的 [N] 项 critical claim。**不读本 session 上下文,只看 codebase + 官方 docs 实证**。

前 [N] 份 review 给 [M] 项 finding,其中 [K] 项 critical claim:
1. [claim 1]
2. [claim 2]
...

前 reviewer 可能偏差:
- reviewer 1: [可能偏差]
- reviewer 2: [可能偏差]

三角验证 [K] 项:
### V1. [claim 1]
实证命令:[精确 bash command 或 WebFetch URL]
判定:✅ 真 / ❌ 误 / ⚠️ 部分

### V2. ...

输出综合判定:[K] 项中真正必修哪几项 / 哪几项 reviewer 误判。

实战教训(本 skill 来源 case)

Case错三角验证 catch
1单 reviewer 说"协议没说清楚同 name skill 行为"WebFetch 官方原文 quote:Plugin skills use a plugin-name:skill-name namespace — reviewer 漏看
2单 reviewer 说"N 处含 X token"自己 grep -rln "X" . 复核;reviewer 可能漏 grep 范围 / 用错 file glob → 数字偏高或偏低
3单 reviewer 实证不存在的协议字段(statusMessage)第二 reviewer WebFetch 官方表 — 字段不存在

§5 第五步:用 receiving-code-review 4 类分类 finding

review 结果到手后 不盲目实施 / 不盲目推翻。按 4 类分:

🔴 类 A — 真 bug(无论 context 都修)

  • 协议错(JSON 字段名错 / schema 不合规)
  • broken reference(引用不存在 file / tag / URL)
  • runtime 失败(装上跑必坏)
  • 绝对路径写死(换机器坏)
  • 安全漏洞

处理:立即修,不需用户确认。

🟡 类 B — Reviewer 缺 context(不修 + 标 reasoning)

  • 基于错误假设的 finding(reviewer 不知 audience / 决策边界)
  • 跟用户之前决策冲突的"建议"
  • 重新发明轮子的"professional feature"(YAGNI)

处理:不修 + 文档/commit message 标 "push back reasoning: reviewer 不了解 [X]"。

不要 performative agreement(避免:"You're absolutely right" / "Great point" / 然后全实施)。

🟠 类 C — 跨决策边界(必用户拍)

  • 涉及 architectural decision(public/private / license / scope)
  • 涉及 trade-off(性能 vs 可读性 / 短期 vs 长期)
  • 涉及第三方影响(团队成员 PII / 已 release 用户兼容)

处理:STOP 实施,列出 trade-off + 推荐路径 + 等用户拍。

🟢 类 D — Nit / 可选(列出供参考)

  • 措辞 / 格式
  • 风格偏好
  • 边缘 edge case

处理:列出,不一定修。若工时短(<5 min)且无害,顺手改。


§6 第六步:跨决策边界识别(stop and discuss)

任何 finding 命中以下 → 停,问用户:

边界例
public / private"应该转 private repo" / "应该公开"
license"应该切 BSL / 应该 MIT"
scope"应该删 / 应该加 feature"
breaking change"应该 force push / rewrite history"
第三方 PII"应该删真名 / email"
架构"应该重写 / 应该 deprecate"

禁忌:reviewer 推荐的 architectural change 绝不直接实施,即使听起来合理。


§7 第七步:输出最终决策矩阵

完成上述步骤后,给用户清晰的 决策矩阵(template):

## 最终决策矩阵(综合 N 份 review + 实证)

### 🔴 类 A — 必修(M 项,立即实施)
| # | finding | 实证理由 |
| A1 | ... | ... |
...

### 🟡 类 B — 不修(K 项)
| # | finding | push back reasoning |
| B1 | ... | reviewer 缺 [context] |
...

### 🟠 类 C — 用户拍(P 项)
| # | finding | 决策路径(P1/P2/P3 + trade-off)|
| C1 | ... | P1: 操作 X, trade-off Y; P2: ... |
...

### 🟢 类 D — Nit(Q 项,可选)
- ...

## 推荐
基于实证 trade-off,推荐 [路径]。理由:[1-2 句]。

然后:

  1. 不等用户:类 A 立即实施(短的 inline,长的下个 message commit)
  2. 等用户:类 C 必等拍
  3. 不实施:类 B 不修(commit message / doc 内标 reasoning)
  4. 可选:类 D 列供参考

§8 反模式(本 skill 防止的 case)

反模式 1:Performative agreement

❌ 看 reviewer finding → "都对!实施!" → 全改 → 引入新 bug + 推翻自己之前决策

✅ 实证每项 → 分 4 类 → 类 A 改 / 类 B 不改 / 类 C 等用户

反模式 2:单源协议实证

❌ 派 1 个 claude-code-guide → "官方说 X 字段" → 信仰 → 实施 → P1 翻车

✅ 派 2 个独立 subagent (或 1 个 + 自己 WebFetch 二次)→ 对比 quote → 一致才信

反模式 3:Reviewer 跨决策边界,盲目接受

❌ reviewer 说"应该 force push rewrite history" → 立即跑 git push --force → 团队炸锅

✅ 识别"force push" = 跨架构边界 → 类 C → 列 trade-off → 等用户拍

反模式 4:代码评估 + 文档评估 混 prompt

❌ "review 这个 PR" → reviewer 顾代码漏 doc / 顾 doc 漏代码

✅ 分两个 prompt:一个聚焦代码(协议 / 安全 / 性能),一个聚焦文档(路径 / 链接 / PII)

反模式 5:数字 / 计数 finding 不自己 grep verify

❌ reviewer 说 "8 处含 X" → 直接信 → 列入修 list

✅ 自己 grep -rln "X" . → 实证后再 list(reviewer 可能漏 grep 范围 / 用错 glob,数字易偏)


§9 触发例(自检该不该用本 skill)

该用

  • "我刚把 v0.2.0 设计 doc 改完,review 一下"
  • "这个 PR 改了 15 个 file,merge 前 review"
  • "现在有什么问题?"(用户主动问)
  • "应该 commit + push 吗?"(claim 完工前)

不该用

  • "改个 typo"
  • "这一行能不能这样写?"
  • "解释一下这段代码"

§10 与其他 skill 配合

skill何时配合
superpowers:receiving-code-review本 skill §5 4 类分类引用其方法论
superpowers:verification-before-completion类 A 实施完后用它 verify
mattpocock:grill-with-docs§3 推荐组合的候选之一
writing-task-md(若 sulde-cc 装)review 类 A 修复若 >30 行,走 task md

§11 输出 commit 时

类 A 修复后 commit message 必含:

  • review source(哪几个 reviewer / subagent)
  • 接受的 finding(哪几项,简号 A1-AN)
  • push back 的 finding(哪几项 + reasoning)
  • 等用户拍的 finding(哪几项 — commit 时未实施)

真实例(取自一次 plugin v0.1.x review,作为格式参考 — 你的项目用对应 finding 编号填):

fix: address multi-source review findings A1-A7

Reviewers: <protocol-review-subagent> + <content-review-subagent> +
<triangulation-subagent>.

Accepted (N fixes):
  A1: <finding 1 short description> → <action taken>
  A2: <finding 2> → <action>
  ...

Pushed back (M findings):
  B1: "<finding>" — reviewer assumed <X>; user decision: <Y>
  B2: ...

Deferred to user decision (K):
  C1: <decision-boundary finding> — see follow-up <doc / issue>

⚠️ 上面是模板示例,不是硬性 require 字段。关键纪律是 3 段:Accepted / Pushed back / Deferred(每个 finding 都要给个明确的"我做了什么")。


Final rule:本 skill 的目的不是"做全所有 review",而是用最少 token + 最准确 finding 出可执行决策。Over-review 也是反模式。

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.