---
id: gh-nature-reader
name: "nature-reader"
url: https://skills.yangsir.net/skill/gh-nature-reader
author: yuan1z0825
domain: science
tags: ["academic-papers", "literature-review", "document-processing", "translation", "research"]
install_count: 14700
rating: 4.50 (120 reviews)
github: https://github.com/yuan1z0825/nature-skills/tree/main/plugins/nature-skills/skills/nature-reader
---

# nature-reader

> 此技能能将 PDF、DOI、arXiv 链接、出版商 HTML 页面或粘贴文本等学术论文来源，转化为完整的 Markdown 阅读器。它能生成中英文对照的全文内容，智能提取并放置图表，保留原始排版和精确的源锚点，极大提升学术文献阅读和分析效率。该 Skill 帮助研究人员、学生和专业人士快速消化复杂论文，确保信息准确性和可追溯性，从而加速知识获取和研究进展。

**Stats**: 14,700 installs · 4.5/5 (120 reviews)

## Before / After 对比

### 学术论文处理效率

**Before**:

用户在没有这个技能之前，需要手动阅读、翻译学术论文，并耗费大量时间手动提取图表、整理排版，这不仅效率低下，还容易在复制粘贴过程中丢失原文的上下文和格式，导致理解偏差或数据引用错误。

**After**:

该 Skill 能够自动化生成高质量的中英文对照 Markdown 阅读器，自动提取并精准放置图表，并保留所有源锚点，大幅缩短了论文处理时间，确保了内容的准确性和完整性，让用户能更专注于内容理解和研究。

| Metric | Before | After | Change |
|---|---|---|---|
| 处理一篇论文所需时间 | 240分钟 | 15分钟 | -94% |

## Readme

# Full-Paper Markdown Reader — Router

This skill is split into two layers:

- A **static layer** under `static/` that holds versioned, reusable content fragments (core principles, the reading workflow, the output contract, and per-source-format extraction guidance).
- A **dynamic layer** (this file plus `manifest.yaml`) that detects the request's source format and loads only the fragments needed for the current job.

Do not try to apply the reading logic from memory or from this router. Always load fragments from disk as described below.

## Routing protocol

Follow these five steps every time the skill is invoked.

### 1. Load the manifest and the core layer

Read [manifest.yaml](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.

### 2. Detect the source format

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.

### 3. Load the matching fragment(s)

Read the file mapped for the detected `source_format`. Do **not** read every fragment in `static/`. Load only what step 2 selected.

### 4. Build the reader using the loaded material

Apply the loaded fragments in this priority order:

1. Core principles (`core/principles.md`) — bilingual reader by default, translate for meaning, never degrade to a summary, copyright caution.
2. Source-format fragment — how to extract text, figures, and tables for this input.
3. Reading workflow (`core/workflow.md`) — the six-step source-map-first process.
4. Output contract (`core/output-contract.md`) — required files and the pre-response verification checklist.

Build the Terminology Ledger as you translate (`../../_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.

### 5. Reach for references only when needed

The files under `references/` are deep references, not defaults. Open them on demand per the `references.on_demand` table in the manifest:

- detailed figure/table cropping and placement → `references/figure-extraction.md`.
- exact field schema for `paper.md` / `source_map.json` → `references/output-spec.md`.
- answering follow-up questions with source citations → `references/grounding-rules.md`.

## Why this split

- The static layer is versioned and reviewable. Adding a new source format is one new fragment plus one manifest line.
- The dynamic layer keeps each invocation cheap: only the fragment relevant to this input enters context.
- The router itself is short on purpose. Update fragments, not this file, when adding scope.
- This structure mirrors `nature-writing` and `nature-polishing` so shared content lives in `_shared/`.


---

# nature-reader

Markdown-first reading workflow for full papers.

## What it does

`nature-reader` turns a PDF, DOI, arXiv link, publisher HTML page, or pasted manuscript into a complete Markdown reading artifact with:

- paragraph-level original text and Chinese translation in prose form
- extracted figures and tables placed near the discussion that first substantively references them
- original captions plus Chinese caption translations
- stable page and block anchors for traceability
- tight figure crops and a full-document source map

## Primary outputs

- `paper.md`
- `source_map.json`
- `translation_notes.md`
- `assets/`

`reader.html` can be generated as a secondary preview, but the skill is Markdown-first and does not default to an interactive Q&A panel.

## Trigger phrases

Use this skill when the user asks for:

- full-paper translation
- 原文对照
- 中英文对照
- 图文对应
- 图表提取
- 翻译解读
- 全文 Markdown
- paper md
- source-grounded reading notes

## Notes

Do not use this skill for summaries, keyword bullets, or citation-only search tasks.
When triggered, do not output only a Chinese summary. The default artifact is `paper.md` with visible `Original` / `中文` pairs and figure/table cards inserted at the relevant source locations.


---
*Source: https://skills.yangsir.net/skill/gh-nature-reader*
*Markdown mirror: https://skills.yangsir.net/api/skill/gh-nature-reader/markdown*