Literature PDF OCR Library Builder
LigphiDonk/Oh-my--paper
Searches and downloads legally accessible academic PDFs, OCRs them to Markdown, and organizes the results into a traceable, AI-readable literature library.
Creates a source-grounded Chinese-English reader for a research paper, with aligned text, figures, tables and equations, or answers questions about a given passage.
$ npx skills add Yuan1z0825/nature-skills --skill nature-reader -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-reader --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/nature-reader .claude/skills/nature-reader && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "nature-reader" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-reader into .claude/skills/nature-reader/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-reader", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-readerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Yuan1z0825/nature-skills --skill nature-reader -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-reader --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/nature-reader .agents/skills/nature-reader && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "nature-reader" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-reader into .agents/skills/nature-reader/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-reader", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Yuan1z0825/nature-skills --skill nature-reader -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-reader --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/nature-reader .cursor/skills/nature-reader && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "nature-reader" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-reader into .cursor/skills/nature-reader/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-reader", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Yuan1z0825/nature-skills.git --path skills/nature-reader--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Yuan1z0825/nature-skills --skill nature-reader -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-reader --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/nature-reader .gemini/skills/nature-reader && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "nature-reader" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-reader into .gemini/skills/nature-reader/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-reader", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Yuan1z0825/nature-skills nature-readerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Yuan1z0825/nature-skills --skill nature-reader -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/nature-reader .github/skills/nature-reader && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "nature-reader" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-reader into .github/skills/nature-reader/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-reader", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Yuan1z0825/nature-skills --skill nature-reader -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Yuan1z0825/nature-skills nature-reader --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Yuan1z0825/nature-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/nature-reader .opencode/skills/nature-reader && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "nature-reader" agent skill from https://github.com/Yuan1z0825/nature-skills/tree/main/skills/nature-reader into .opencode/skills/nature-reader/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "nature-reader", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
nature-readerCreates a source-grounded Chinese-English reader for a research paper, with aligned text, figures, tables and equations, or answers questions about a given passage.
Before building anything, it decides what you are asking for: a full reader, an answer to a source-linked question, or the translation of one excerpt. Questions and excerpts get only the relevant source material and grounding rules, with no full reader built. A request for a reader or a full-paper translation follows a manifest-driven workflow.
It reads manifest.yaml, loads the core principles, workflow and output contract, and detects the source format: selectable-text PDF (the default), scanned PDF, publisher or preprint HTML, a bare DOI or arXiv link, or pasted text. It states the detected format in one line so you can correct it, and then loads only the matching fragment.
Core principles call for a bilingual reader that translates for meaning rather than summarizing, with caution around copyright. Reference files cover article structure, equations, figure extraction, grounding rules and the output spec, and scripts/validate_reader_math.py ships alongside them. A six-step workflow builds a source map first.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 163c497. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python, from the files we listed), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Bilingual Paper Reader loads about 961 tokens when it runs, and up to ~5.4k if it reads all its reference files. Until then it costs about 64 tokens; SKILL.md has 462 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from Yuan1z0825/nature-skills at commit 163c497, republished under its Apache-2.0 licence (© Yuan1z0825). 462 words, ~961 tokens.
.claude/skills/nature-reader/SKILL.md (or your agent's skills folder). This skill also uses 21 other files; get the full folder from GitHub.First distinguish creating a reader from answering a question or translating an excerpt.
For a source-linked question, read references/grounding-rules.md and inspect only the relevant
source material; reuse existing source-map IDs when available. Do not regenerate the reader or
require a full source map before answering. For an explicit excerpt request, apply extraction,
translation, and grounding rules to that excerpt. The full-artifact workflow below applies when
the user requests a reader or full-paper translation.
For a new task, load the core and matching resources below. Reuse already loaded guidance on follow-ups; load more only when the task needs it.
Read manifest.yaml. It declares the source_format axis, the allowed values, and the file paths each value maps to.
Also read every file listed under always_load. These hold the core principles, the reading workflow, and the output contract that apply to every reading job, plus the shared Terminology Ledger used to build the recurring-term table.
Decide the source_format value using the manifest's detect: hint and the user's input:
pdf-text — selectable-text PDF. Default.scanned-pdf — image-only or OCR-required PDF.html — publisher or preprint HTML page.doi-arxiv — a bare DOI or arXiv link that must be resolved first.pasted-text — pasted prose or notes with no retrievable original layout.State the detected value in one short line to the user before processing, so they can correct you cheaply. A source may map to more than one value (for example a DOI that resolves to a PDF); load the resolution fragment first, then the fragment for the resolved artifact.
Read the file mapped for the detected source_format. Do not read every fragment in static/. Load only what step 2 selected.
Apply the loaded fragments in this priority order:
core/principles.md) — bilingual reader by default, translate for meaning, never degrade to a summary, copyright caution.core/workflow.md) — the six-step source-map-first process.core/output-contract.md) — required files and the pre-response verification checklist.Build the Terminology Ledger as you translate (../nature-shared/core/terminology-ledger.md); it becomes the paper.md recurring-term table and the source_map.json glossary.
If constraints prevent full processing, still create a draft reader and label missing pages, figures, or low-confidence crops in translation_notes.md. Do not switch to summary mode.
The files under references/ are deep references, not defaults. Open them on demand per the references.on_demand table in the manifest:
references/figure-extraction.md.paper.md / source_map.json → references/output-spec.md.references/equation-handling.md.references/grounding-rules.md.© Yuan1z0825, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 21 other files (scripts, references) in skills/nature-reader of Yuan1z0825/nature-skills.
Open the folder on GitHubat commit 163c497
Bilingual Paper Reader next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Bilingual Paper Reader this skillYuan1z0825/nature-skills | 47k | — | ~961 | Automated safety check: Pass | Apache-2.0 | |
| Literature PDF OCR Library BuilderLigphiDonk/Oh-my--paper | 739 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Paper Figure Extractorjuliye2025/evil-read-arxiv | 1.7k | — | ~298 | Automated safety check: Pass | None | |
| Daily Paper DigestGalaxy-Dawn/claude-scholar | 5.7k | — | ~1k | Automated safety check: Pass | MIT | |
| Paper AnalyzerLigphiDonk/Oh-my--paper | 739 | 1 repos | ~973 | Automated safety check: Pass | MIT | |
| Nature Readeraiskillstore/marketplace | 433 | 1 repos | ~1.1k | Automated safety check: Pass | None |
LigphiDonk/Oh-my--paper
Searches and downloads legally accessible academic PDFs, OCRs them to Markdown, and organizes the results into a traceable, AI-readable literature library.
juliye2025/evil-read-arxiv
Pulls architecture, method and result figures from an arXiv paper or PDF into an Obsidian vault and writes an index of them.
Galaxy-Dawn/claude-scholar
Finds recent arXiv and bioRxiv papers on a topic, narrows them in stages to one pick per field, and writes bilingual Chinese and English summaries.
LigphiDonk/Oh-my--paper
Analyzes one research paper in depth, writing a structured note on its methods, experiments and limitations and adding it to a paper relationship graph.
aiskillstore/marketplace
Build full-paper Chinese-English side-by-side, figure/table-aware, source-grounded Markdown readers for journal or conference papers from PDF, DOI, arXiv, publisher HTML, or pasted text.
neflibata-feng/MyArxiv-Agent
Conduct comprehensive, systematic literature reviews using multiple academic databases (PubMed, arXiv, bioRxiv, Semantic Scholar, etc.).
Yuan1z0825/nature-skills
Builds a structured deep-reading card for one scientific paper, covering methods, how experiments support claims, limitations and research ideas, with a script to prepare the source.
Yuan1z0825/nature-skills
Creates, revises, audits and exports manuscript-ready scientific figures in Python or R, and routes AI-generated graphical abstracts to a separate workflow.
Yuan1z0825/nature-skills
Drafts Chinese invention patent applications and technical disclosures from research papers or inventor materials, tying each claim feature to source evidence.
Yuan1z0825/nature-skills
Composes, revises or audits research proposals and opening reports through an evidence-first state machine with argument maps, section contracts and dynamic expert reviewers.
Yuan1z0825/nature-skills
Routes literature requests to lawful full-text sources: open access, publisher APIs, CNKI and institutional browser access, with a supporting-information gate.
Yuan1z0825/nature-skills
Rebuilds slide images, screenshots, scanned PDFs or image-only PPTX files as PowerPoint with editable objects, using a local CLI with per-page manifests and QA.
Works with
Categories
Creates a source-grounded Chinese-English reader for a research paper, with aligned text, figures, tables and equations, or answers questions about a given passage. Before building anything, it decides what you are asking for: a full reader, an answer to a source-linked question, or the translation of one excerpt. Questions and excerpts get only the relevant source material and grounding rules, with no full reader built.
Bilingual Paper Reader fits situations like: producing a full bilingual reading copy of a journal article; translating a single section or excerpt of a paper with source links; asking a question about a paper and getting an answer tied to the original text; working from a DOI or arXiv link, a scanned PDF or pasted text.
Run `npx skills add Yuan1z0825/nature-skills --skill nature-reader -a claude-code`. Or copy the skill folder (skills/nature-reader in Yuan1z0825/nature-skills) into .claude/skills/nature-reader in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Yuan1z0825/nature-skills --skill nature-reader -a codex`. Or copy the skill folder (skills/nature-reader in Yuan1z0825/nature-skills) into .agents/skills/nature-reader in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Yuan1z0825/nature-skills --skill nature-reader -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/nature-reader, .gemini/skills/nature-reader, .github/skills/nature-reader and .opencode/skills/nature-reader in your project.
Going by SKILL.md and its folder, Bilingual Paper Reader needs Python for the scripts in its folder. Our summary lists: A paper as a PDF, HTML page, DOI or arXiv link, or pasted text; Python to run the bundled validation script.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Bilingual Paper Reader is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 961 tokens (SKILL.md is roughly 3.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.5k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Bilingual Paper Reader: Literature PDF OCR Library Builder (LigphiDonk/Oh-my--paper, 739 stars), Paper Figure Extractor (juliye2025/evil-read-arxiv, 1.7k stars), Daily Paper Digest (Galaxy-Dawn/claude-scholar, 5.7k stars) and Paper Analyzer (LigphiDonk/Oh-my--paper, 739 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Yuan1z0825 (a GitHub user) maintains it in Yuan1z0825/nature-skills, which has 47,016 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on October 10, 2026.
Source: Yuan1z0825/nature-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.