| name | academic-research |
| description | Nested swiss-knife reference for academic literature work — find papers, fetch full-text PDFs, trace citations, write LaTeX manuscripts. **First action for any "get me this paper" request:** `python3 <skill-path>/scripts/fetch_paper.py <DOI|arXiv-ID|PMID>` — walks arXiv → Unpaywall → Europe PMC → CORE → in-house publisher-page extraction (Nature/APS/AIP/IOP/Cambridge) → authorized institutional publisher → LibGen and saves the paper, metadata, and a resumable manifest under `papers/{slug}/`. Read the body when you need to escape the script: custom query shapes, citation networks, scholar analysis, LaTeX writing, or a tier-specific API call. Indexes 13 deep-dive API references and 6 pipeline workflows under `reference/`.
|
| version | 3.0.0 |
| allowed-tools | Bash(python3 *) Bash(curl *) Bash(pip *) Bash(pip3 *) |
| tags | ["academic","research","arxiv","crossref","openalex","semantic-scholar","core","pubmed","unpaywall","doi","pdf","citation","pipeline","europe-pmc","nasa-ads","inspire-hep","nested-skill"] |
| last_changed_at | 2026-07-18T00:00:00Z |
| maintenance | If you find stale or incorrect information here, use the lingtai-issue-report skill to assemble evidence and obtain per-issue human consent before filing an issue. Never include secrets, credentials, tokens, or private paths. |
Academic Research
Nested swiss-knife reference. A modular skill: try the bundled script
first, then load specific reference files only when you need to escape it.
Try this first
For 80% of "get me this paper" requests, the bundled script is the right answer.
It walks the open-access ladder, falls back automatically, and writes a manifest
the next session can resume from.
python3 <skill-path>/scripts/fetch_paper.py 10.1103/PhysRevLett.125.015001
python3 <skill-path>/scripts/fetch_paper.py arXiv:2301.00001
python3 <skill-path>/scripts/fetch_paper.py PMID:12345678
python3 <skill-path>/scripts/fetch_paper.py --batch dois.txt --out papers/
python3 <skill-path>/scripts/fetch_paper.py 10.1038/nature12373 --dry-run
python3 <skill-path>/scripts/fetch_paper.py <id> --no-libgen
Output layout (idempotent — re-runs skip entries with status: ok):
papers/{first-author-year-firstword}/
├── paper.pdf | paper.md # full-text artifact
├── metadata.json # CrossRef-normalized
└── manifest.json # {status, tier, source, ts, doi}
Tier ladder (script stops at first hit):
| Tier | Source | Best for |
|---|
| 1 | arXiv direct | Preprints (physics, CS, math, q-bio, econ) |
| 2 | Unpaywall | Publisher-blessed gold/green OA |
| 3 | Europe PMC | Biomedical full-text + PMC mirror |
| 4 | CORE | Institutional repositories (needs $CORE_API_KEY) |
| 5 | Publisher-page extract | Nature/APS/AIP/IOP/Cambridge → in-house extractor (stdlib + requests, no third-party deps). Fetches the already-accessible official article / DOI landing page and parses citation_* metadata + the article body into structured Markdown. No paywall/CAPTCHA bypass, no cookies/credentials — official pages only. A login/paywall page is a clean miss; the ladder then falls through. Opt out with . |