paper-reviewer — deep pre-submission review
A reimplementation of the Paper Assistant Tool (PAT) architecture (Jayaram et
al., Google Research, arXiv:2606.28277) on Claude Code subagents in place of
Gemini Deep Think.
The premise from PAT, which is what makes this skill worth more than "read the
paper and criticize it": a single reading pass spends its reasoning budget
uniformly and shallowly. Segmenting the manuscript, giving each reviewer the
whole text as context but only one segment to verify, then consolidating with
deduplication and grounding checks, raises real-error detection substantially. On
the Math/CS subset of the SPOT benchmark, this orchestration took the same model
from 55.2% to 89.7% detection.
It produces no score, no ranking and no accept/reject recommendation. It produces
objective errors and actionable improvements.
Writing counterpart: paper-writer. Writing and reviewing are separate passes by
design; whoever writes does not approve their own text in the same context.
Stage 0 — Resolve the target
- If the user named a file, use it. Otherwise look for the most likely
manuscript in the current directory (a
.tex with \documentclass, or a long
.md) and confirm with the user before spending agents if there is more
than one candidate.
- Accepted formats are
.tex, .md, .pdf and .docx, and source beats the
rest. PAT lists PDF parsing failure among its three most reported
limitations, and a .docx costs a conversion the source does not. If a .tex
or .md exists, use it and ignore the compiled PDF.
- Read the whole manuscript before segmenting. Without that, the
segmentation comes out wrong.
- Locate verification inputs, if they exist:
- the
.bib or reference file;
- data, result tables or experiment outputs in the repository (for example
data/outputs/), which allow checking number by number;
- previous reviews, audits or referee reports (for example
reviews/,
response_*.md, HANDOFF.md), which serve to avoid repeating a point
already resolved.
Stage 1 — Segmentation
Break the manuscript into semantic segments, not into equal-sized chunks. A
segment is a set of sections that share a logical theme and are verified
together. Segments may be non-contiguous: if the abstract quotes a number
from Section 7, both belong to the same segment.
Typical segmentation of an empirical paper:
| Segment |
Usually gathers |
| Framing |
Abstract, Introduction, Conclusion, claimed contributions |
| Related work |
State of the art, positioning of the gap |
| Method / architectures |
What was built or compared |
| Metric definition |
Every metric the authors propose, with its formalization |
| Data |
Datasets, provenance, construction, licensing |
| Experimental protocol |
What was held fixed, configuration, statistical analysis |
| Results |
Tables, figures, numbers in the body text |
| Discussion and limitations |
Interpretation, threats to validity, future work |
Adjust to the actual manuscript. A theoretical paper swaps "Results" for
"Proofs"; a bibliometric one swaps "Architectures" for "Search protocol".
Stage 2 — Adaptive budget
Assign each segment an effort tier according to the density of verifiable
claims. This is what PAT calls Light/Medium/High Thinking.
- HIGH — wherever an error invalidates the paper. Metric definitions, proofs,
statistical protocol, results tables, any number appearing in more than one
place. These segments go to reviewers with
model: opus and an explicit
instruction to reason line by line.
- MEDIUM — method, data, experimental configuration, discussion.
model: opus, normal verification.
- LOW — framing, related work, acknowledgements and declarations.
model: sonnet is enough.
Announce the segmentation and the budget to the user in a short table before
dispatching. It is the last cheap chance to fix the cut.
Stage 3 — Deep review in parallel
Dispatch one subagent per segment, all in the same message so they run in
parallel. Use subagent_type: general-purpose with the model set in Stage 2.
The list below goes into every prompt in full — not summarized, and never
assumed to be inherited from your context. That is deliberate: an instruction
sitting next to the task is followed, while the same instruction far upstream of
it decays as the session grows.
Every reviewer prompt must contain, without exception:
- The whole manuscript (the file path; the agent reads it), with the
instruction that it is context, not target.
- The assigned segment, by section and line range, as the only verification
target.
- READ ONLY — Write, Edit and NotebookEdit are forbidden. The reviewer
reports; it does not fix.
- The paths to the verification inputs from Stage 0.
- The finding contract below.
Finding contract
Every returned finding must have:
- Severity —
CRITICAL (invalidates a conclusion), HIGH (requires
substantive rewriting), MEDIUM (weakens the argument or clarity), LOW
(local correction).
- Location — file and line.
- A literal quote of the problematic passage. Without a quote, the finding
does not exist.
- The defect, in one sentence.
- Confidence —
CONFIRMED (verified against the source, the data or the
.bib) or PLAUSIBLE (grounded suspicion, not verified).
- What would have to be true for this finding to be wrong — one line. This
field is what separates useful criticism from noise.
What to hunt
Generic, in any manuscript:
- Cross-numeric consistency. Every number in the abstract, the body, the
tables and the figures must agree. Where raw data exist in the repository,
check against them. This is the most common error class and the cheapest to
detect.
- Claims beyond the evidence. A causal claim supported by a correlational
result; "demonstrates" where "suggests" belongs; generalization beyond the
tested conditions.
- Claimed versus delivered contributions. Does each item in the contribution
list have a corresponding section that fulfils it?
- Orphan research questions. Is each RQ answered explicitly? Does each answer
point to specific evidence?
- References. Every
\cite has an entry in the .bib; every entry is cited;
the cited work supports what the text says it supports. Flag entries that look
fabricated (missing DOI, vague authorship, generic title).
- Arithmetically small and logically fatal errors — flipped sign, inverted
inequality, unit error, off-by-one, overloaded notation. PAT reports these as
the most frequent and most underestimated finding.
- Missing limitation. An obvious threat to validity the text does not
acknowledge.
- Methodological leakage. Was the evaluation instrument built using the thing
it evaluates? Circularity between what is measured and what is used to measure.
- Provenance and licensing of data and corpora, when the text describes them.
Anti-hallucination guards
PAT documents three failure modes of its own. Instruct every reviewer against all
three:
- Do not claim something is outdated — a date, a version, "state of the art"
— without checking. If it could not be checked, the finding is
PLAUSIBLE and
is phrased as a question.
- Do not invent a reference, theorem or related work. If external literature
is cited, it must be something the reviewer can locate.
- Do not declare an argument incorrect for having failed to understand it.
Before marking a piece of reasoning
CRITICAL, the reviewer must reconstruct
the author's argument in their own words and only then point to where it
breaks. If the reconstruction does not close, the finding becomes PLAUSIBLE
with the doubt made explicit.
No praise. The report has no strengths section.
Stage 3.5 — Automated language signature
One dedicated reviewer, over the whole manuscript. This is not a segment: the
signals are signals of frequency, and frequency is only measurable across the
entire text. It reads the manuscript file and nothing else — no version history,
no internal project notes, no external service.
The instrument itself — Band A and Band B, the calibrated thresholds, the
measurement notes and the three refusals — lives in
references/stage-3-5-language-signature.md.
The dispatching prompt must carry that path, plus the lexicon matching the
manuscript's language — references/lexicons-en.md
for English or references/lexicons-pt.md for
Brazilian Portuguese — and the instruction to read both in full before
measuring. Running the wrong lexicon does not measure a little; it measures
nothing (AUC 0.500). This stage does not run from a memory of this file.
Two things have to reach the report whether or not that file was opened.
A scrubbable criterion informs only when it fires. When it passes, it informs
nothing.
Band A — connectives, lexical absolutism, dash density — is removable by
find-and-replace. So when it does not fire, the report says exactly that:
"criteria 1 and 3 do not fire; they are removable by find-and-replace and are
therefore non-diagnostic when they pass, and the low count licenses no
inference." Never as "checked and clean". Reporting a quiet Band A as good news
issues a certificate of cleanliness the instrument cannot give, and that is worse
than not measuring, because it reassures.
These markers do not prove AI authorship.
A rushed human produces all of them; a well-revised assisted text produces none.
What they actually measure is weak writing: structural predictability,
artificial emphasis, claims without backing. Report them as writing defects,
which is what holds up and what is actionable, and never as an accusation of
authorship, which is indefensible and offensive if wrong.
Stage 4 — Global synthesis
Done by you, in the main context, after all reviewers return.
- Deduplicate. The same defect seen from two segments becomes one finding,
with both locations.
- Drop the unfounded. A finding without a literal quote, or whose quote does
not match the real text, is discarded, not downgraded. Open the file and
confirm the
CRITICAL and HIGH findings by sampling.
- Verify the grounding. For findings that depend on an external fact (does a
reference exist? does a number match the data?), confirm it yourself before
reporting. Use WebSearch for literature and file reading for data. This is
PAT's
search grounding.
- Reorder by real severity, not by segment order.
- Separate error from improvement. Two distinct lists: what is wrong and what
would be better.
Output
Write to reviews/review_<manuscript-name>_<YYYY-MM-DD>.md, next to the
manuscript, and summarize in chat only the CRITICAL and HIGH findings.
# Pre-submission review — <manuscript>
<date> · <N> segments · <N> reviewers · <N> findings after deduplication
## Verdict
<2-4 sentences: what blocks submission today, if anything does.>
## Errors
### [CRITICAL] <short title>
**Where:** file:line
**Text:** "<literal quote>"
**Defect:** <one sentence>
**Confidence:** CONFIRMED — <how it was verified>
**I would be wrong if:** <one line>
**Suggested fix:** <actionable>
## Improvements
<same structure, without severity>
## Checked and clean
<short list of what was checked and showed no problem: numbers verified against
data, citations matched against the .bib. This tells the user what they do NOT
need to re-check by hand.>
Operating notes
- A short manuscript (under ~15 pages) can go with 4 or 5 segments. A thesis or a
long paper asks for 8 to 10.
- If the user asks for focus (
only the statistics), reduce the segments to the
requested scope and say explicitly in the report what was left out.
- If there is a previous audit, the report must say which findings are new and
which recur.
- Re-running after fixes is cheap and is the intended use. PAT gave one pass per
manuscript; this skill has no such limit.
1---2name: paper-reviewer3description: Deep pre-submission review of a scientific manuscript, modeled on Google's Paper Assistant Tool (PAT). Segments the manuscript, allocates a reasoning budget per segment, dispatches deep reviewers in parallel (each with the full text as context), and consolidates into a single report with severity, quoted evidence, and anti-hallucination checks. Use when asked to review, audit, critique, or validate a paper, thesis, dissertation, chapter, or proposal before submission. Works in English and Brazilian Portuguese.4license: MIT5---67# paper-reviewer — deep pre-submission review89A reimplementation of the **Paper Assistant Tool (PAT)** architecture (Jayaram et10al., Google Research, arXiv:2606.28277) on Claude Code subagents in place of11Gemini Deep Think.1213The premise from PAT, which is what makes this skill worth more than "read the14paper and criticize it": a single reading pass spends its reasoning budget15uniformly and shallowly. Segmenting the manuscript, giving each reviewer **the16whole text as context but only one segment to verify**, then consolidating with17deduplication and grounding checks, raises real-error detection substantially. On18the Math/CS subset of the SPOT benchmark, this orchestration took the same model19from 55.2% to 89.7% detection.2021It produces no score, no ranking and no accept/reject recommendation. It produces22**objective errors and actionable improvements**.2324Writing counterpart: `paper-writer`. Writing and reviewing are separate passes by25design; whoever writes does not approve their own text in the same context.2627---2829## Stage 0 — Resolve the target30311. If the user named a file, use it. Otherwise look for the most likely32 manuscript in the current directory (a `.tex` with `\documentclass`, or a long33 `.md`) and **confirm with the user before spending agents** if there is more34 than one candidate.352. **Accepted formats are `.tex`, `.md`, `.pdf` and `.docx`, and source beats the36 rest.** PAT lists PDF parsing failure among its three most reported37 limitations, and a `.docx` costs a conversion the source does not. If a `.tex`38 or `.md` exists, use it and ignore the compiled PDF.393. Read the **whole** manuscript before segmenting. Without that, the40 segmentation comes out wrong.414. Locate verification inputs, if they exist:42 - the `.bib` or reference file;43 - data, result tables or experiment outputs in the repository (for example44 `data/outputs/`), which allow checking number by number;45 - previous reviews, audits or referee reports (for example `reviews/`,46 `response_*.md`, `HANDOFF.md`), which serve to **avoid repeating** a point47 already resolved.4849---5051## Stage 1 — Segmentation5253Break the manuscript into **semantic segments**, not into equal-sized chunks. A54segment is a set of sections that share a logical theme and are verified55together. Segments may be **non-contiguous**: if the abstract quotes a number56from Section 7, both belong to the same segment.5758Typical segmentation of an empirical paper:5960| Segment | Usually gathers |61|---|---|62| Framing | Abstract, Introduction, Conclusion, claimed contributions |63| Related work | State of the art, positioning of the gap |64| Method / architectures | What was built or compared |65| Metric definition | Every metric the authors propose, with its formalization |66| Data | Datasets, provenance, construction, licensing |67| Experimental protocol | What was held fixed, configuration, statistical analysis |68| Results | Tables, figures, numbers in the body text |69| Discussion and limitations | Interpretation, threats to validity, future work |7071Adjust to the actual manuscript. A theoretical paper swaps "Results" for72"Proofs"; a bibliometric one swaps "Architectures" for "Search protocol".7374---7576## Stage 2 — Adaptive budget7778Assign each segment an effort tier according to the density of verifiable79claims. This is what PAT calls Light/Medium/High Thinking.8081- **HIGH** — wherever an error invalidates the paper. Metric definitions, proofs,82 statistical protocol, results tables, any number appearing in more than one83 place. These segments go to reviewers with `model: opus` and an explicit84 instruction to reason line by line.85- **MEDIUM** — method, data, experimental configuration, discussion.86 `model: opus`, normal verification.87- **LOW** — framing, related work, acknowledgements and declarations.88 `model: sonnet` is enough.8990Announce the segmentation and the budget to the user in a short table before91dispatching. It is the last cheap chance to fix the cut.9293---9495## Stage 3 — Deep review in parallel9697Dispatch **one subagent per segment**, all in the same message so they run in98parallel. Use `subagent_type: general-purpose` with the `model` set in Stage 2.99100The list below goes into every prompt **in full** — not summarized, and never101assumed to be inherited from your context. That is deliberate: an instruction102sitting next to the task is followed, while the same instruction far upstream of103it decays as the session grows.104105Every reviewer prompt must contain, without exception:1061071. **The whole manuscript** (the file path; the agent reads it), with the108 instruction that it is context, not target.1092. **The assigned segment**, by section and line range, as the only verification110 target.1113. **READ ONLY** — Write, Edit and NotebookEdit are forbidden. The reviewer112 reports; it does not fix.1134. The paths to the verification inputs from Stage 0.1145. The finding contract below.115116### Finding contract117118Every returned finding must have:119120- **Severity** — `CRITICAL` (invalidates a conclusion), `HIGH` (requires121 substantive rewriting), `MEDIUM` (weakens the argument or clarity), `LOW`122 (local correction).123- **Location** — file and line.124- **A literal quote** of the problematic passage. Without a quote, the finding125 does not exist.126- **The defect**, in one sentence.127- **Confidence** — `CONFIRMED` (verified against the source, the data or the128 `.bib`) or `PLAUSIBLE` (grounded suspicion, not verified).129- **What would have to be true for this finding to be wrong** — one line. This130 field is what separates useful criticism from noise.131132### What to hunt133134Generic, in any manuscript:135136- **Cross-numeric consistency.** Every number in the abstract, the body, the137 tables and the figures must agree. Where raw data exist in the repository,138 check against them. This is the most common error class and the cheapest to139 detect.140- **Claims beyond the evidence.** A causal claim supported by a correlational141 result; "demonstrates" where "suggests" belongs; generalization beyond the142 tested conditions.143- **Claimed versus delivered contributions.** Does each item in the contribution144 list have a corresponding section that fulfils it?145- **Orphan research questions.** Is each RQ answered explicitly? Does each answer146 point to specific evidence?147- **References.** Every `\cite` has an entry in the `.bib`; every entry is cited;148 the cited work supports what the text says it supports. Flag entries that look149 fabricated (missing DOI, vague authorship, generic title).150- **Arithmetically small and logically fatal errors** — flipped sign, inverted151 inequality, unit error, off-by-one, overloaded notation. PAT reports these as152 the most frequent and most underestimated finding.153- **Missing limitation.** An obvious threat to validity the text does not154 acknowledge.155- **Methodological leakage.** Was the evaluation instrument built using the thing156 it evaluates? Circularity between what is measured and what is used to measure.157- **Provenance and licensing** of data and corpora, when the text describes them.158159### Anti-hallucination guards160161PAT documents three failure modes of its own. Instruct every reviewer against all162three:1631641. **Do not claim something is outdated** — a date, a version, "state of the art"165 — without checking. If it could not be checked, the finding is `PLAUSIBLE` and166 is phrased as a question.1672. **Do not invent a reference, theorem or related work.** If external literature168 is cited, it must be something the reviewer can locate.1693. **Do not declare an argument incorrect for having failed to understand it.**170 Before marking a piece of reasoning `CRITICAL`, the reviewer must reconstruct171 the author's argument in their own words and only then point to where it172 breaks. If the reconstruction does not close, the finding becomes `PLAUSIBLE`173 with the doubt made explicit.174175No praise. The report has no strengths section.176177---178179## Stage 3.5 — Automated language signature180181One dedicated reviewer, over the **whole manuscript**. This is not a segment: the182signals are signals of **frequency**, and frequency is only measurable across the183entire text. It reads the manuscript file and nothing else — no version history,184no internal project notes, no external service.185186The instrument itself — Band A and Band B, the calibrated thresholds, the187measurement notes and the three refusals — lives in188[`references/stage-3-5-language-signature.md`](references/stage-3-5-language-signature.md).189The dispatching prompt must carry that path, plus the lexicon matching the190manuscript's language — [`references/lexicons-en.md`](references/lexicons-en.md)191for English or [`references/lexicons-pt.md`](references/lexicons-pt.md) for192Brazilian Portuguese — and the instruction to **read both in full before193measuring**. Running the wrong lexicon does not measure a little; it measures194nothing (AUC 0.500). This stage does not run from a memory of this file.195196Two things have to reach the report whether or not that file was opened.197198> **A scrubbable criterion informs only when it fires. When it passes, it informs199> nothing.**200201Band A — connectives, lexical absolutism, dash density — is removable by202find-and-replace. So when it does not fire, the report says exactly that:203*"criteria 1 and 3 do not fire; they are removable by find-and-replace and are204therefore non-diagnostic when they pass, and the low count licenses no205inference."* Never as "checked and clean". Reporting a quiet Band A as good news206issues a certificate of cleanliness the instrument cannot give, and that is worse207than not measuring, because it reassures.208209> These markers **do not prove AI authorship**.210211A rushed human produces all of them; a well-revised assisted text produces none.212What they actually measure is **weak writing**: structural predictability,213artificial emphasis, claims without backing. Report them as writing defects,214which is what holds up and what is actionable, and never as an accusation of215authorship, which is indefensible and offensive if wrong.216217---218219## Stage 4 — Global synthesis220221Done by you, in the main context, after all reviewers return.2222231. **Deduplicate.** The same defect seen from two segments becomes one finding,224 with both locations.2252. **Drop the unfounded.** A finding without a literal quote, or whose quote does226 not match the real text, is discarded, not downgraded. Open the file and227 confirm the `CRITICAL` and `HIGH` findings by sampling.2283. **Verify the grounding.** For findings that depend on an external fact (does a229 reference exist? does a number match the data?), confirm it yourself before230 reporting. Use WebSearch for literature and file reading for data. This is231 PAT's `search grounding`.2324. **Reorder by real severity**, not by segment order.2335. **Separate error from improvement.** Two distinct lists: what is wrong and what234 would be better.235236### Output237238Write to `reviews/review_<manuscript-name>_<YYYY-MM-DD>.md`, next to the239manuscript, and summarize in chat only the `CRITICAL` and `HIGH` findings.240241```markdown242# Pre-submission review — <manuscript>243<date> · <N> segments · <N> reviewers · <N> findings after deduplication244245## Verdict246<2-4 sentences: what blocks submission today, if anything does.>247248## Errors249### [CRITICAL] <short title>250**Where:** file:line251**Text:** "<literal quote>"252**Defect:** <one sentence>253**Confidence:** CONFIRMED — <how it was verified>254**I would be wrong if:** <one line>255**Suggested fix:** <actionable>256257## Improvements258<same structure, without severity>259260## Checked and clean261<short list of what was checked and showed no problem: numbers verified against262data, citations matched against the .bib. This tells the user what they do NOT263need to re-check by hand.>264```265266---267268## Operating notes269270- A short manuscript (under ~15 pages) can go with 4 or 5 segments. A thesis or a271 long paper asks for 8 to 10.272- If the user asks for focus (`only the statistics`), reduce the segments to the273 requested scope and say explicitly in the report what was left out.274- If there is a previous audit, the report must say which findings are **new** and275 which **recur**.276- Re-running after fixes is cheap and is the intended use. PAT gave one pass per277 manuscript; this skill has no such limit.