skills/tools/document/paper-parse-guide/SKILL.md
Deep dual-mode reading of academic papers from PDF or URL sources
npx skillsauth add wentorai/research-plugins paper-parse-guideInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Perform structured, dual-mode deep reading of academic papers from PDF files or URLs. Mode A provides a rapid overview suitable for screening during literature reviews. Mode B delivers exhaustive section-by-section analysis for papers central to your research.
Reading academic papers efficiently is a core research skill, yet the density and conventions of scholarly writing make it time-consuming. A typical researcher reads dozens of papers per week during a literature review phase, requiring different levels of depth for different papers. Some need only a quick scan to determine relevance; others demand line-by-line scrutiny of methods and results.
This skill implements a dual-mode reading system. Mode A (Survey Mode) extracts key metadata, the main argument, methods summary, and key findings in under two minutes of processing time. Mode B (Deep Analysis Mode) performs exhaustive section-by-section analysis including methodology critique, statistical evaluation, figure interpretation, and connection to broader literature.
Both modes begin by parsing the paper's structure from its PDF or HTML source, extracting clean text with section boundaries, figures, tables, equations, and references. The parsing pipeline handles the common challenges of academic PDFs: two-column layouts, footnotes, headers/footers, embedded equations, and supplementary materials.
| Source | Method | Notes |
|--------|--------|-------|
| Local PDF | Direct file path | Best quality, no network needed |
| DOI | Resolve via CrossRef/Unpaywall | Auto-fetches open access version |
| arXiv ID | https://arxiv.org/pdf/{id} | Always available |
| URL | Direct download | May require institutional access |
| OpenAlex ID | OpenAlex API + OA link | Includes metadata |
from pathlib import Path
import fitz # PyMuPDF
def parse_paper(pdf_path: str) -> dict:
doc = fitz.open(pdf_path)
sections = []
current_section = {"title": "Header", "content": []}
for page in doc:
blocks = page.get_text("dict")["blocks"]
for block in blocks:
if block["type"] == 0: # Text block
for line in block["lines"]:
text = " ".join(span["text"] for span in line["spans"])
font_size = max(span["size"] for span in line["spans"])
is_bold = any("Bold" in span["font"] for span in line["spans"])
# Detect section headings
if font_size > 11 and is_bold:
if current_section["content"]:
sections.append(current_section)
current_section = {"title": text.strip(), "content": []}
else:
current_section["content"].append(text)
sections.append(current_section)
return {
"title": extract_title(doc),
"authors": extract_authors(doc),
"sections": sections,
"references": extract_references(doc),
"page_count": len(doc)
}
For higher-quality structural parsing, use GROBID (GeneRation Of BIbliographic Data):
# Start GROBID server
docker run --rm -p 8070:8070 lfoppiano/grobid:0.8.0
# Parse a paper
curl -X POST "http://localhost:8070/api/processFulltextDocument" \
-F "[email protected]" \
-F "consolidateHeader=1" \
-F "consolidateCitations=1" \
-H "Accept: application/xml" \
-o parsed_paper.xml
GROBID returns TEI XML with structured sections, author affiliations, parsed references, and figure/table captions. It handles two-column layouts, footnotes, and complex formatting better than simple text extraction.
Designed for rapid screening. Produces a structured summary in 5 components:
Title: [Extracted title]
Authors: [First author et al., year]
Venue: [Journal/Conference name]
DOI: [DOI if available]
Pages: [Page count]
Type: [Empirical / Theoretical / Review / Methods]
Extract from abstract + introduction: What is the main claim?
Extract from results section and abstract.
Exhaustive section-by-section reading with critical evaluation.
## [Paper Title] ([Year])
**Authors**: [Authors]
**Venue**: [Venue]
**DOI**: [DOI]
### Summary
[2-3 sentence summary]
### Key Contributions
1. [Contribution 1]
2. [Contribution 2]
### Methodology
[Methods description]
### Strengths
- [Strength 1]
- [Strength 2]
### Weaknesses
- [Weakness 1]
- [Weakness 2]
### Relevance to My Research
[How this paper connects to your work]
### Key Quotes
> "[Notable quote]" (p. X)
### References to Follow
- [Ref 1]: [Why relevant]
- [Ref 2]: [Why relevant]
Automatically extract or generate a BibTeX entry for the parsed paper, including all available fields (author, title, journal, year, volume, pages, doi).
For systematic reviews, process multiple papers in sequence:
papers = ["paper1.pdf", "paper2.pdf", "paper3.pdf"]
summaries = []
for pdf in papers:
parsed = parse_paper(pdf)
summary = mode_a_survey(parsed)
summaries.append(summary)
# Generate comparison matrix
comparison = create_comparison_table(summaries,
columns=["methods", "sample_size", "key_finding", "relevance"])
documentation
Write Tsinghua University theses using the ThuThesis LaTeX template
development
Templates, formatting rules, and strategies for thesis and dissertation writing
documentation
Set up LaTeX templates for PhD and Master's thesis documents
documentation
Write SJTU theses using the SJTUThesis LaTeX template with full compliance