self-review
Automatically review an academic paper using the NeurIPS review form with three reviewer personas, ensemble scoring, and reflection refinement. Extracts text from PDF, runs structured review, and outputs actionable feedback. Use when the user wants to review a paper before submission or get feedback on a draft.
What this skill does
# Self-Review Review an academic paper using a structured review form with multiple reviewer personas. ## Input - `$ARGUMENTS` — Path to PDF file or `.tex` file ## Scripts ### Extract text from PDF ```bash python ~/.claude/skills/self-review/scripts/extract_pdf_text.py paper.pdf --output paper_text.txt python ~/.claude/skills/self-review/scripts/extract_pdf_text.py paper.pdf --format markdown ``` Tries pymupdf4llm (best) → pymupdf → pypdf. Install: `pip install pymupdf4llm pymupdf pypdf` ### Parse PDF into structured sections ```bash python ~/.claude/skills/self-review/scripts/parse_pdf_sections.py \ --pdf paper.pdf --output sections.json ``` Extracts title (via font size), section headings, and section text. Requires: `pip install pymupdf` Key flags: `--format text`, `--verbose` ## Workflow ### Step 1: Load Paper - If PDF: use `extract_pdf_text.py` to extract text - If `.tex`: read the LaTeX source directly ### Step 2: Three-Persona Review Run three independent reviews using different personas (from `references/review-form.md`): 1. **Harsh but fair reviewer**: Expects good experiments that lead to insights 2. **Harsh and critical reviewer**: Looking for impactful ideas in the field 3. **Open-minded reviewer**: Looking for novel ideas not proposed before For each persona, generate a review following the NeurIPS review JSON format in `references/review-form.md`. ### Step 3: Reflection Refinement (up to 3 rounds per reviewer) After each review, apply the reflection prompt: re-evaluate accuracy and soundness, refine if needed. Stop when "I am done". ### Step 4: Aggregate - Combine all three reviews - Average numerical scores (round to nearest integer) - Synthesize a meta-review finding consensus - Weight scores using AgentLaboratory weights: Overall (1.0), Contribution (0.4), Presentation (0.2), others (0.1 each) ### Step 5: Actionable Report Output format: ``` ## Review Summary - **Overall Score**: X/10 (Weighted: Y/10) - **Decision**: Accept / Reject - **Confidence**: Z/5 ## Strengths (consensus across reviewers) 1. ... 2. ... ## Weaknesses (consensus across reviewers) 1. ... 2. ... ## Questions for Authors 1. ... ## Specific Suggestions for Improvement 1. [Section X, Page Y]: ... 2. [Section Z, Page W]: ... ## Score Breakdown | Dimension | R1 | R2 | R3 | Avg | |-----------|----|----|-----|-----| | Overall | ... | ... | ... | ... | | Contribution | ... | ... | ... | ... | | ... | ... | ... | ... | ... | ``` ## References - NeurIPS review form, scoring weights, personas, reflection prompts: `~/.claude/skills/self-review/references/review-form.md` - PDF text extraction: `~/.claude/skills/self-review/scripts/extract_pdf_text.py` ## Missing Sections Check You MUST verify that all required sections are present: Abstract, Introduction, Methods/Approach, Experiments/Results, Discussion/Conclusion. Reduce scores if any are missing. ## Related Skills - Upstream: [paper-compilation](../paper-compilation/) - Downstream: [paper-revision](../paper-revision/), [rebuttal-writing](../rebuttal-writing/) - See also: [slide-generation](../slide-generation/)
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.