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):
# 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:
python ~/.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:
<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:
## [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:
# 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