adversarial-review
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseAdversarial Review
对抗式评审
Spawn reviewers on the opposite model to challenge work. Reviewers attack from distinct
lenses grounded in brain principles. The deliverable is a synthesized verdict — do NOT make
changes.
Hard constraint: Reviewers MUST run via the opposite model's CLI ( or
). Do NOT use subagents, the Agent tool, or any internal delegation mechanism as
reviewers — those run on your own model, which defeats the purpose.
codex execclaude -p在对立模型上生成评审者对工作内容提出质疑。评审者基于brain原则从不同视角发起审视。交付物是一份综合判定结果——请勿直接修改内容。
严格约束: 评审者必须通过对立模型的CLI( 或 )运行。请勿使用子Agent、Agent工具或任何内部委派机制作为评审者——这些都运行在你自身的模型上,违背了本流程的目的。
codex execclaude -pStep 1 — Load Principles
步骤 1 —— 加载原则
Read . Follow every and read each linked principle file.
These govern reviewer judgments.
brain/principles.md[[wikilink]]阅读 。跟随所有 阅读每个被链接的原则文件。这些文件是评审者判定的依据。
brain/principles.md[[wikilink]]Step 2 — Determine Scope and Intent
步骤 2 —— 确定范围和意图
Identify what to review from context (recent diffs, referenced plans, user message).
Determine the intent — what the author is trying to achieve. This is critical: reviewers
challenge whether the work achieves the intent well, not whether the intent is correct.
State the intent explicitly before proceeding.
Assess change size:
| Size | Threshold | Reviewers |
|---|---|---|
| Small | < 50 lines, 1–2 files | 1 (Skeptic) |
| Medium | 50–200 lines, 3–5 files | 2 (Skeptic + Architect) |
| Large | 200+ lines or 5+ files | 3 (Skeptic + Architect + Minimalist) |
Read for lens definitions.
references/reviewer-lenses.md从上下文(最近的diff、引用的计划、用户消息)中确定需要评审的内容。
确定意图——作者尝试达成的目标。这一点至关重要:评审者质疑的是工作内容是否很好地达成了既定意图,而非意图本身是否正确。在继续流程前请明确陈述意图。
评估变更规模:
| 规模 | 阈值 | 评审者数量 |
|---|---|---|
| 小 | < 50 行,1-2个文件 | 1名(怀疑者视角) |
| 中 | 50-200 行,3-5个文件 | 2名(怀疑者 + 架构师视角) |
| 大 | 200+ 行或5个以上文件 | 3名(怀疑者 + 架构师 + 极简主义者视角) |
阅读 了解各视角的定义。
references/reviewer-lenses.mdStep 3 — Detect Model and Spawn Reviewers
步骤 3 —— 检测模型并生成评审者
Create a temp directory for reviewer output:
sh
REVIEW_DIR=$(mktemp -d /tmp/adversarial-review.XXXXXX)Determine which model you are, then spawn reviewers on the opposite:
If you are Claude → spawn Codex reviewers via :
codex execsh
codex exec --skip-git-repo-check -o "$REVIEW_DIR/skeptic.md" "prompt" 2>/dev/nullUse only if the reviewer needs to run tests. Default to read-only.
Run with , monitor via with .
--profile editrun_in_background: trueTaskOutputblock: true, timeout: 600000If you are Codex → spawn Claude reviewers via CLI:
claudesh
claude -p "prompt" > "$REVIEW_DIR/skeptic.md" 2>/dev/nullRun with .
run_in_background: trueName each output file after the lens: , , .
skeptic.mdarchitect.mdminimalist.md创建临时目录存储评审输出:
sh
REVIEW_DIR=$(mktemp -d /tmp/adversarial-review.XXXXXX)确定你当前使用的模型,然后在对立模型上生成评审者:
如果你是 Claude → 通过 生成 Codex 评审者:
codex execsh
codex exec --skip-git-repo-check -o "$REVIEW_DIR/skeptic.md" "prompt" 2>/dev/null仅当评审者需要运行测试时使用 ,默认使用只读模式。
设置 后台运行,通过 监控,配置 。
--profile editrun_in_background: trueTaskOutputblock: true, timeout: 600000如果你是 Codex → 通过 CLI 生成 Claude 评审者:
claudesh
claude -p "prompt" > "$REVIEW_DIR/skeptic.md" 2>/dev/null设置 后台运行。
run_in_background: true每个输出文件以对应视角命名:、、。
skeptic.mdarchitect.mdminimalist.mdReviewer prompt template
评审者提示词模板
Each reviewer gets a single prompt containing:
- The stated intent (from Step 2)
- Their assigned lens (full text from references/reviewer-lenses.md)
- The principles relevant to their lens (file contents, not summaries)
- The code or diff to review
- Instructions: "You are an adversarial reviewer. Your job is to find real problems, not validate the work. Be specific — cite files, lines, and concrete failure scenarios. Rate each finding: high (blocks ship), medium (should fix), low (worth noting). Write findings as a numbered markdown list to your output file."
Spawn all reviewers in parallel.
每名评审者收到的提示词包含以下内容:
- 既定意图(来自步骤2)
- 分配给他们的评审视角(references/reviewer-lenses.md中的完整文本)
- 与他们视角相关的原则(文件原文,而非摘要)
- 待评审的代码或diff
- 指令:"你是一名对抗式评审者。你的工作是发现真实存在的问题,而非验证工作内容的正确性。请具体表述——引用文件、行号和具体的失败场景。为每个发现的问题评级:高(阻塞发布)、中(应当修复)、低(值得注意)。将发现的问题以编号markdown列表的形式写入你的输出文件。"
并行生成所有评审者。
Step 4 — Verify and Synthesize Verdict
步骤 4 —— 验证并综合判定结果
Before reading reviewer output, log which CLI was used and confirm the output files exist:
sh
echo "reviewer_cli=codex|claude"
ls "$REVIEW_DIR"/*.mdIf any output file is missing or empty, note the failure in the verdict — do not silently skip
a reviewer.
Read each reviewer's output file from . Deduplicate overlapping findings.
Produce a single verdict:
$REVIEW_DIR/undefined在阅读评审者输出前,记录使用的CLI并确认输出文件已存在:
sh
echo "reviewer_cli=codex|claude"
ls "$REVIEW_DIR"/*.md如果任何输出文件缺失或为空,请在判定结果中注明该失败——不要静默跳过某名评审者。
读取 下每名评审者的输出文件。去重重叠的问题。
生成一份统一的判定结果:
$REVIEW_DIR/undefinedIntent
意图
<what the author is trying to achieve>
<作者尝试达成的目标>
Verdict: PASS | CONTESTED | REJECT
判定结果:通过 | 存疑 | 驳回
<one-line summary>
<单行摘要>
Findings
发现的问题
<numbered list, ordered by severity (high → medium → low)>
For each finding:
- [severity] Description with file:line references
- Lens: which reviewer raised it
- Principle: which brain principle it maps to
- Recommendation: concrete action, not vague advice
<编号列表,按严重程度排序(高 → 中 → 低)>
每个问题的格式:
- [严重程度] 问题描述,附带文件:行号引用
- 视角:提出该问题的评审者视角
- 原则:对应哪条brain原则
- 建议:具体可执行的动作,而非模糊的建议
What Went Well
做得好的地方
<1–3 things the reviewers found no issue with — acknowledge good work>
**Verdict logic:**
- **PASS** — no high-severity findings
- **CONTESTED** — high-severity findings but reviewers disagree on them
- **REJECT** — high-severity findings with reviewer consensus<1-3项评审者没有提出异议的内容,肯定优秀的工作>
**判定逻辑:**
- **通过**——无高严重程度问题
- **存疑**——存在高严重程度问题但评审者对此存在分歧
- **驳回**——存在高严重程度问题且评审者达成共识Step 5 — Render Judgment
步骤 5 —— 输出最终判定
After synthesizing the reviewers, apply your own judgment. Using the stated intent and brain
principles as your frame, state which findings you would accept and which you would reject —
and why. Reviewers are adversarial by design; not every finding warrants action. Call out
false positives, overreach, and findings that mistake style for substance.
Append to the verdict:
undefined综合评审者意见后,给出你自己的判定。以既定意图和brain原则为框架,说明你会接受哪些问题、拒绝哪些问题——以及原因。评审者天生具有对抗性;并非每个发现的问题都需要采取行动。请指出误报、过度延伸以及将风格混淆为实质的问题。
追加到判定结果中:
undefinedLead Judgment
主导判定
<for each finding: accept or reject with a one-line rationale>
```
<针对每个问题:说明接受或拒绝,附带单行理由>
undefined