Paper Review Helper
Guide user through structured paper review, logging issues and generating formal review response.
Phase 1: Setup
- •
Locate paper from
$ARGUMENTS:- •If PDF file: create
<paper-name>-review/folder, copy PDF into it - •If folder: search for
.texfirst (prioritize over PDF) - •No paper found →
AskUserQuestion: "No paper detected. Please provide path to paper."
- •If PDF file: create
- •
Convert PDF → LaTeX (if no .tex exists):
bash# Check credentials [ -n "$MATHPIX_APP_ID" ] && [ -n "$MATHPIX_API_KEY" ] && echo "OK" || echo "MISSING"
- •If MISSING → notify user: "Set MATHPIX_APP_ID and MATHPIX_API_KEY for PDF→LaTeX. Proceeding with direct PDF (figures not extractable)."
- •If OK → run conversion:
bashpython ~/.claude/plugins/science-skill/skills/paper-review-helper/scripts/pdf2tex.py "<pdf_path>" "<paper-folder>"
Output structure:
<paper-folder>/<pdf_id>/<pdf_id>.texwithimages/subfolder for figures. - •
Initialize workspace:
text
<paper-folder>/ ├── <pdf_id>/ # Mathpix output (if converted) │ ├── <pdf_id>.tex # Converted LaTeX │ └── images/ # Extracted figures ├── artifact/ │ ├── review-log.md # Conversation log │ ├── issues-major.md # Major issues │ ├── issues-minor.md # Minor issues │ └── programs/ # Math verification scripts └── original.pdf # Source PDF (if applicable)
Phase 2: Section-by-Section Review
Parse LaTeX structure: \section, \subsection, \begin{abstract}. For each section:
- •
Chunk appropriately:
- •Section ≤5 paragraphs: review whole
- •Section >5 paragraphs: split by
\subsectionor paragraph groups
- •
Present section with:
- •Section text - save the partial tex to markdown format.
- •Inline markers for issues (see Grammar Check Markers) in the markdown file.
- •and provide the user with a path link to the file in the workspace.
- •Figure refs:
[Figure X: images/<filename> - <caption>]with a path link to the file in the workspace.
- •
Ask user via
AskUserQuestion:- •"Questions about this section?"
- •"Any concerns or unclear points?"
- •"Rate clarity: clear / somewhat unclear / confusing"
- •
Respond to requests:
- •Citations:
WebSearchfor DOI, author names, paper titles - •Background:
WebSearch,WebFetchfor concepts - •Math check: write script to
artifact/programs/, run with Python/SymPy - •Figures: read from
images/folder, describe or use/visionskill
- •Citations:
- •
Log to
artifact/review-log.md:
markdown
## [Section Name] - [Timestamp] ### User Questions - Q: ... - A: ... ### Issues Identified - [MAJOR] ... - [MINOR] ... ### Tools Used - WebSearch: "query" → finding
- •Classify issues:
- •Major →
issues-major.md: methodology flaws, unsupported claims, logical errors - •Minor →
issues-minor.md: grammar, typos, unclear wording
- •Major →
Skip Supplementary/Appendix unless user requests.
Phase 3: Review Generation
- •
Gather context via
AskUserQuestion:- •"Overall impression? (accept / minor revision / major revision / reject)"
- •"Editor's specific questions?"
- •"Journal level? (top-tier / mid-tier / specialized)"
- •
Generate review to
artifact/REVIEW.md:
markdown
# Review of [Paper Title] ## Summary [1-2 sentences] ## Overall Recommendation [User's decision + justification] ## Major Issues 1. **Issue**: [description] - **Location**: Section X, paragraph Y / Equation N - **Impact**: [why this matters] - **Suggestion**: [fix or note if unfixable] ## Minor Issues [Grouped by type: grammar, clarity, formatting] ## User Misunderstandings Analysis [If user had confusion during review:] - **Confusion**: [what] - **Cause**: paper vagueness / reader knowledge gap - **Recommendation**: [should paper clarify?] ## Constructive Feedback [Positives + specific improvements] ## Editor Questions Response [If provided]
Grammar Check Markers
Inline markers when presenting text:
- •
[G: ...]- grammar error - •
[C: ...]- clarity issue - •
[?]- ambiguous/unsupported claim - •
[REF?]- missing or questionable citation - •
[EQ?]- equation to verify