ethanreedlabs/sulde/multi-source-review

Claude Code and agent skill by ethanreedlabs/sulde

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

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

Install

npx vskill@latest install ethanreedlabs/sulde/multi-source-review

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 也是反模式。

Security

  • Security scanPassed, 95 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/ethanreedlabs/sulde/multi-source-review/badge)](https://verified-skill.com/skills/ethanreedlabs/sulde/multi-source-review)

Something wrong with this skill or its page? Tell us.