nature-downloader (nature-skills): a Claude skill that downloads paper full text through open access, publisher APIs and your library login
nature-downloader makes Claude fetch the full text of papers you name, using open-access sources, publisher APIs, CNKI or your own library login.
- Installs
- 12.4K
- on skills.sh
- Stars
- 51.7K
- on GitHub
- Files
- 60+
- besides SKILL.md
- Updated
- Nov 2026
- last repo commit
Give Claude a list of DOIs or exact titles and it runs a batch script that tries the lawful routes in order. Chinese papers go to CNKI. For Elsevier, Springer Nature and IEEE it tries the publisher API first, then open-access sources such as PMC, Unpaywall and arXiv. Other publishers go to open access first, then to your institution's access in your own Chrome.
Before it downloads anything, Claude asks whether you also want Supporting Information. It needs Node.js 22+ and Python 3. The CNKI, institutional and Supporting Information routes also need Chrome with remote debugging turned on and you logged in. Each run writes a manifest.json that lists what came from where.
Good for
- Researchers who need the PDFs for a list of DOIs or titles
- Chinese-language researchers who pull papers from CNKI through their university
- Students whose library gives access through CARSI, EZproxy or WebVPN
Install nature-downloader
Claude Code
- 1
Download the skill folder from https://github.com/yuan1z0825/nature-skills/tree/HEAD/skills/nature-downloader.
- 2
Put it at ~/.claude/skills/nature-downloader/ so that SKILL.md sits directly inside.
- 3
Start a new session; the skill loads when its description matches the task.
The Claude app ZIP upload is not offered here, because the skill needs Node.js, Python and a local Chrome. The skill also expects a separate web-access skill for its Chrome proxy.
Built from the package data we hold. Not yet tested by us.
What's in the skill
When it loads
Use when a user needs lawful academic full text, CNKI institutional access, English OA retrieval, publisher API access, institutional browser fallback, or supporting information downloads.
Sections in SKILL.md
- Download Intake and First-Run Configuration
- Paid Library Resource Configuration
- API-First and Open-Access Fallback
- Publisher API Credentials
- Resource URL Triage
- Institution-Specific Domains
- Boundaries
- Preconditions
- Batch Scope
- Status Categories
- Start Browser Control
- Fast Batch Path (default for 2+ papers — fast & token-efficient)
- Advanced Browser and Delivery Routes
Key facts
- Author
- yuan1z0825 (GitHub)
- License
- Apache-2.0
- Installs on skills.sh
- 12,385 as of 2026-11-02
- GitHub stars
- 51,696 (whole repo) as of 2026-11-02
- Last repo commit
- 2026-11-01
- Folder contents
- 71 files including SKILL.md: 39 Node scripts, 12 Python files, 7 Markdown files, config data, example templates and tests
- Python packages
- pdfplumber, pypdf, PyYAML, jsonschema (requirements.txt)
- skills.sh audits
- Gen Agent Trust Hub pass, Socket fail, Snyk pass
What it includes
Asks first whether you want Supporting Information, then runs with --si or --no-si.
SI confirmation gatePicks CNKI, publisher API, open access or institutional browser by language and publisher.
Route selectionDownloads by DOI list, title, PDF URL or Web of Science topic, with a manifest.
Runs code ·
batch_download.mjsSearches PMC, Unpaywall, publisher OA pages, arXiv and other repositories.
Runs code ·
Open-access lookupUses an Elsevier, Springer Nature or IEEE key; falls back to open access on failure.
Runs code ·
Publisher API downloadDownloads Chinese papers through your logged-in Chrome session.
Runs code ·
CNKI routeUses your library login in Chrome, only after you confirm when an API failed.
Runs code ·
Web access fallbackInfers your library route from a resource URL and saves it as a config file.
Runs code ·
configure_school.pySaves, validates and deletes publisher keys and a contact email.
Runs code ·
configure_credentials.pyRecords one of 29 statuses per paper in manifest.json.
Write ·
Status codes and manifestFinds and downloads supplement files from the article page when you ask.
Runs code ·
Supporting InformationChecks each file is a real PDF and names it for delivery.
Files ·
Verification and naming
From the official docs
Permissions
High risk
This skill runs scripts, controls your logged-in Chrome and saves publisher API keys on your disk, so a mistake touches your institutional account. Confirm the paper list yourself, and stop if your library or publisher shows a security warning.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It drives your logged-in Chrome session
For CNKI, institutional access and Supporting Information it attaches to your Chrome through remote debugging. SKILL.md says it must not read cookies or session files. Download only papers you are entitled to.
It stores publisher API keys on disk
`configure_credentials.py` saves keys to ~/.config/lit-dl/credentials.json. SKILL.md says a key you paste into chat is saved as sent, so use the hidden prompt instead.
It tries to pass robot checks
SKILL.md tells Claude to try visible slider, checkbox and Verify controls up to twice per tab. Check your library and publisher terms first, since automated access can breach them.
It sends your contact email to Unpaywall and Crossref
The open-access lookup calls api.unpaywall.org with your contact email, and the Crossref metadata lookup puts it in a mailto parameter or User-Agent header. You set it with `configure_credentials.py contact-email` or UNPAYWALL_EMAIL.
It installs and runs local code
It runs Node.js 22+ and Python scripts, and its requirements.txt lists pdfplumber, pypdf, PyYAML and jsonschema. It also expects a separate web-access skill for the Chrome proxy.
Technical details
| Talks to | api.elsevier.com. api.springernature.com. ieeexploreapi.ieee.org. api.crossref.org. api.unpaywall.org. www.ncbi.nlm.nih.gov. ftp.ncbi.nlm.nih.gov. www.ebi.ac.uk. export.arxiv.org. arxiv.org. doi.org. kns.cnki.net. www.webofscience.com. 127.0.0.1:3456 (local Chrome proxy). your library and publisher sites |
|---|---|
| Sign-in and keys | Publisher keys are saved in ~/.config/lit-dl/credentials.json with mode 0600, according to SKILL.md. Library access reuses your logged-in Chrome session. |
Questions
What does nature-downloader do?
It downloads the full text of papers you name by DOI, PMID or exact title. It tries open-access sources and publisher APIs first, and uses CNKI or your institution's login in Chrome when it has to. Each run saves a manifest with the route, file hash and result for every paper.
How do I install it?
Use the install box above. It is one folder in the nature-skills repo. The skill also needs Node.js 22+ and Python 3. If you use the Python helpers, install the four packages in its requirements.txt.
Does it need an API key?
Not for open access. Elsevier, Springer Nature and IEEE downloads use a key from that publisher, which you save once with the skill's configure_credentials.py script. SKILL.md says not to paste keys into chat, though it saves a key you send voluntarily.
Will it bypass a paywall?
No. SKILL.md says it uses only lawful open access, publisher APIs and your own institutional access, and that it must not bypass paywalls, DRM or two-factor authentication. If your library has no entitlement, the paper is marked library_no_permission.
Does it solve CAPTCHAs for me?
Partly. SKILL.md tells Claude to try a visible slider, checkbox or Verify button in your Chrome session, at most twice per tab, before asking you. It hands over to you for image choices, QR codes, SMS codes and two-factor prompts.
Is it safe?
It drives your logged-in Chrome session and saves publisher API keys on your disk, so review what you approve. SKILL.md says it must not export cookies or ask for institutional passwords, and it limits downloads to the list you confirm. Use it only where your institution's terms allow automated downloading.
What is the web-access skill it mentions?
For the browser route, SKILL.md expects a separate web-access skill that provides a local Chrome proxy on port 3456. That skill is not in this repo, and nature-downloader does not install it for you.
Does it work in Codex?
Yes. The nature-skills README documents installing the skill for Codex, and SKILL.md lists .codex\skills and .agents\skills as install locations. The Claude Code path in the box above puts it in ~/.claude/skills.
Information
updated Nov 2, 2026
- Repository
- yuan1z0825/nature-skills
- Folder
skills/nature-downloader
Sources
Docs, issue trackers and discussions this page is built from.
Show all 5Hide
- nature-skills README · github.com
- nature-downloader SKILL.md · github.com
- delivery-verification-and-failures.md · github.com
- requirements.txt · github.com
- nature-downloader on skills.sh · skills.sh