返回 Skills 目录
yuan1z0825/nature-skills已通过检查

SKILL DETAIL

nature-shared

yuan1z0825/nature-skills/nature-shared

nature-shared 是已安装 Nature 技能(包括 nature-writing、nature-polishing、nature-response、nature-reader 和 nature-paper2ppt)的内部共享参考支持包。它提供核心定义和期刊格式文件,供其他技能在需要时引用。 此包不应作为独立用户工作流调用。仅当其他 Nature 技能请求时,加载指定的核心或期刊格式文件。核心文件(如 main-text-discipline、nature-results-discussion 等)提供基于语料库的 Nature 风格写作指导,而 journal-formats 目录包含针对特定期刊(如 Nature 和 Nature Machine Intelligence)的格式要求。所有内容均为共享定义,而非独立流程,最终任务逻辑、输出格式和质量检查由请求技能负责。

安装量 · 110查看来源

Installation

npx skills add https://github.com/yuan1z0825/nature-skills --skill nature-shared

技能文件

SKILL.md

最近同步 · 2026年8月29日

agents/openai.yaml
interface:
  display_name: "Nature Shared References"
  short_description: "Shared references for dependent Nature Skills only"
  default_prompt: "Use $nature-shared only as a support package requested by another Nature Skill."
policy:
  allow_implicit_invocation: false
core/consistency-sweep.md
# Consistency Sweep

A retrospective audit of a manuscript that already exists. `terminology-ledger.md` is preventive:
it fixes the vocabulary before drafting. This file is detective: it finds the drift that a
manuscript has already accumulated, which is what happens to every manuscript that has been revised
more than once.

Use it when polishing or proofreading a full manuscript, when self-reviewing before submission, when
auditing a revision, or whenever multiple rounds of editing have touched the same document. Do not
use it as a substitute for building a ledger on a fresh draft.

Two facts drive the method:

- **Multi-round editing fragments a manuscript.** Each round produces wording that fits its local
  context and diverges from the rest. Nobody notices, because nobody re-reads the whole document
  after each small edit.
- **Reviewers verify arithmetic and cross-check tables.** Numbers that do not reconcile and claims
  that contradict the paper's own data are the cheapest possible findings for a referee, and they
  cast doubt on everything that is harder to check.

## 1. Sweep, then inspect

Count variants mechanically first, then read the contexts before changing anything. Raw counts
over-report: Title Case in captions and headings, sentence-initial capitals, first-use acronym
expansions, and grammatically required inflections are legitimate variation.

For each axis, count every variant, then open the contexts of the minority forms. A term used 33
times one way and once another way is almost always a real slip; a term split 5/4 usually means two
different concepts are being conflated.

Start the mechanical pass with the bundled checker, resolving it relative to the
`nature-shared` package directory:

```bash
python scripts/check_consistency.py manuscript.tex tables.tex \
  --term-group 'test-object=specimen|sample|test article' \
  --term-group 'method-name=GraphNet|Graph Net'
```

The checker reports built-in self-reference and standard-deviation variants, user-supplied term
groups, equal numeric values printed at different precision, and equivalent lengths written in
different units. Use `--json` for machine-readable results or `--fail-on-findings` in a local
quality gate. Findings are warnings, not automatic corrections: identical numbers may denote
different quantities, and two terms may represent a real conceptual distinction. Inspect every
reported context before editing. This first pass does not replace the claim, tense, acronym,
cross-reference, or redundancy checks below.

## 2. Axes

| Axis | What to look for | Typical real finding |
| --- | --- | --- |
| Experimental factors | Every name used for one variable | One factor under four names, while a fifth name denotes a *different* concept |
| Physical objects | One word denoting two things | `specimen` meaning both a physical test article and a row in the test set |
| Acronyms | Definition site vs first use | Abbreviation used pages before it is defined; defined twice; never expanded |
| Model and method names | Expansion and capitalization at each mention | `Multi-Layer Perceptron` vs `Multilayer Perceptron`; `Extreme` vs `eXtreme Gradient Boosting` |
| Units | The **same quantity** in two units | `35 mm` cover in one section, `3.5 cm` cover in another |
| Statistical terms | Abbreviation and technical precision | `SD` in one table, `Std` in another; `confidence interval` where `prediction interval` is meant |
| Number formatting | Decimal places per metric; percent spacing | `8.26` in a table against `8.258` in the text |
| Self-reference | `this study` / `this paper` / `this work` / `this article` | One stray variant among many |
| Tense | Parallelism inside a list | Three conclusion items in past tense, one in present |
| Hyphenation | Compound modifiers | Genuine distinction: `residual-capacity check` (modifier) vs `the residual capacity` (noun) |
| Spelling variety | `-ise`/`-yse` vs `-ize`/`-yze`, `-our` vs `-or` | New text in British spelling inside a US-spelling manuscript |
| Cross-references | Non-breaking space before the number | `Figure~\ref` vs `Figure \ref` mixed |

Two axes are technical errors rather than style, and reviewers treat them as competence signals:

- **Interval terminology.** A confidence interval covers a parameter; a prediction interval covers a
  future observation. A paper reporting per-observation uncertainty must say *prediction interval*.
  `confidence level` for the alpha level is a different, correct term — do not "fix" it.
- **Same quantity, two units.** Converting for local readability forces the reader to verify that the
  two numbers match, and invites the suspicion that they do not.

Run several passes. Each pass surfaces axes the previous one did not, because fixing one axis makes
the next one visible. In practice a heavily revised manuscript yields findings on at least three
successive passes before converging.

## 3. Numeric self-consistency

- **Headline counts must be derivable from the Methods.** A design described as "640 samples covering
  32 states, four positions and four orientations" invites the reader to compute 512. If the real
  design is 32 x 4 positions x 5 signals (four orientations plus an averaged waveform), say so in
  the abstract and conclusion, not only in the Methods.
- **One metric, one precision, everywhere.** Cross-check every number that appears in more than one
  place — abstract, results prose, tables, conclusion — mechanically, not from memory.
- **Reused numbers must denote the same thing.** When two different quantities happen to share a
  value, label them distinctly; the same integer meaning "design combinations" in one section and
  "test-set size" in another will be read as one quantity.

## 4. Claims versus the paper's own data

Check every superlative against the table behind it.

- "Consistently highest across all three methods" fails if one column shows another item higher.
  State what the data supports and name the exception explicitly. A reviewer who finds the exception
  unaided assumes nothing else was checked either.
- Overlapping error bars do not support "outperformed". Use "statistically indistinguishable".
- Check for **under**claiming too. A conclusion saying "matched the best conventional model" when the
  results section reports first place on every metric throws away a real result.
- Internal summaries must agree with each other. If the results section concludes that features A and
  B are jointly dominant, the abstract and conclusion cannot credit only A.

## 5. Redundancy between prose and displays

Prose that restates a table's numbers adds length without information. Keep in the text only what the
display cannot show: the interpretation, the comparison, the reason a value matters.

The same applies within a paragraph — a sentence that re-states the immediately preceding sentence in
different words is padding, and it is easy to introduce when adding material in response to a
comment. After any insertion, re-read the neighbouring sentences and check that the new text is not
saying what the old text already said.

## 6. Order of operations

1. Numeric self-consistency and claims-versus-data (sections 3 and 4). Fix content before wording.
2. Terminology sweep (sections 1 and 2), repeated until a pass finds nothing new.
3. Redundancy pass (section 5).
4. Recompile and re-verify anything that depends on pagination.

Content fixes change wording, and wording fixes change pagination, so this order avoids redoing work.
Any downstream artifact that quotes the manuscript — a response letter, a cover letter, a slide deck
— must be re-synchronized after every change; see `nature-response/references/package-consistency-audit.md`
when a revision package is involved.
core/discussion-argument-language.md
# Discussion Argument and Language Calibration

Use this reference when drafting, restructuring, or polishing a scientific
Discussion. It applies across journals; journal-specific article structures,
word limits, and reporting requirements still take precedence.

This is **writing guidance, not an official Nature Portfolio requirement**.
Its functional model is informed in part by the author-supplied public article
[“学术训练 | How to Write the Discussion?”](https://mp.weixin.qq.com/s/exPlMmjkrDPchE6dCfjINw)
(22 August 2026), which summarizes material from *Science Research Writing for
Non-native Speakers of English*. The rules below are a selective,
accuracy-checked synthesis rather than a transcription of that article or book.

## Contents

- [Use the reverse funnel as a direction, not a template](#use-the-reverse-funnel-as-a-direction-not-a-template)
- [Build the Discussion from four functions](#build-the-discussion-from-four-functions)
- [Separate interpretation from Results replay](#separate-interpretation-from-results-replay)
- [Calibrate modality to evidence strength](#calibrate-modality-to-evidence-strength)
- [Write limitations as claim boundaries](#write-limitations-as-claim-boundaries)
- [Make future work resolve an uncertainty](#make-future-work-resolve-an-uncertainty)
- [Run the sentence-function audit](#run-the-sentence-function-audit)

## Use the reverse funnel as a direction, not a template

Introduction usually narrows from the field to the paper's precise question.
Discussion generally moves in the opposite epistemic direction:

`specific findings -> integrated interpretation -> relation to the field -> bounded implications`

This is a reader-orientation principle, not a demand that every Discussion
begin with a Results summary or end with a grand claim. Expand only as far as
the evidence permits. A narrow study may properly end with a narrow
implication.

Choose the opening anchor that best restores the central context:

- revisit the unresolved problem when solving that problem is the main advance
- revisit the design or method when the method changes what can be inferred
- state the central finding when the discovery itself is the main advance

Use one compressed anchor. Do not repeat the Introduction's background or the
Results section's full evidence chain.

## Build the Discussion from four functions

Treat the following as functions, not four mandatory paragraphs. Combine,
reorder, or omit a function when the paper does not need it.

### 1. Anchor

State the central advance in one bounded judgement and identify the specific
Results claims that must be understood together. One indispensable anchor
number is acceptable; replaying all effect sizes, intervals, tests, or panels is
not.

### 2. Position

Place the finding on the scholarly map. Specify whether the work:

- supports or independently confirms earlier evidence
- extends an earlier result to a new mechanism, population, scale, or regime
- qualifies the conditions under which an earlier claim holds
- conflicts with prior work and requires reconciliation
- connects findings that were previously treated separately

Do not use citation clusters as decoration. Every literature comparison should
state the relationship that matters for the current claim.

### 3. Interpret and contribute

Explain what the integrated findings make newly supportable. Separate three
levels:

1. **Established contribution** — directly supported by the paper's design and
   evidence.
2. **Supported interpretation** — a mechanism or explanation favoured by the
   evidence but not uniquely proven.
3. **Open implication** — a plausible broader consequence that requires a new
   test.

Name credible rival explanations before presenting a non-unique mechanism as
the preferred interpretation. Make novelty explicit when it is defensible, but
do not substitute “first”, “novel”, or “unprecedented” for the actual
conceptual or practical advance.

### 4. Bound and extend

State where the inference may fail, what that limitation changes, what remains
valid, and which next experiment or analysis would reduce the uncertainty.
Keep speculation and future work proportional to the demonstrated contribution.

A useful overall move order is:

`central finding anchor -> cross-Results synthesis -> position in prior work -> interpretation and contribution -> boundary -> next discriminating question`

## Separate interpretation from Results replay

Results and Discussion may refer to the same finding, but the sentence must do
a different job:

- **Results:** `A exceeded B under condition C; this establishes X within C.`
- **Discussion:** `Taken together with Y, X favours interpretation Z and
  qualifies the prevailing account of Q.`

Delete a Discussion sentence when it only repeats a comparison, number, test,
or local inference already used to establish the result. Retain recap only when
the reader needs it to understand the synthesis that follows.

## Calibrate modality to evidence strength

Choose the strongest wording the evidence justifies, not the strongest wording
that sounds persuasive.

| Evidence status | Typical language | Gate |
|---|---|---|
| Directly established within the tested design | `shows`, `establishes`, `demonstrates` | The design directly tests the proposition and important alternatives do not support a weaker reading. |
| Supported but not uniquely established | `supports`, `indicates`, `suggests`, `is consistent with`, `is likely to reflect` | At least one credible alternative remains or the mechanism is inferred indirectly. |
| Plausible interpretation or extrapolation | `may`, `might`, `could`, `appears to`, `raises the possibility` | The statement goes beyond the direct test and is clearly marked as provisional. |
| Near-necessity or exclusion | `must`, `cannot` | Use only when logic, design, or physical constraints genuinely exclude reasonable alternatives; rarity is expected. |

### Modal safeguards

- `may not` means that something is possibly not true; `cannot` expresses
  impossibility or inability and is much stronger.
- `must not` normally expresses prohibition, not absence of necessity. Use
  `need not`, `does not need to`, or `is not required to` for the latter.
- Do not teach spaced `can not` as a routine hedge. Write `may not` when the
  intended meaning is possibility of non-occurrence.
- Distinguish a community recommendation (`future studies should test X`) from
  an author commitment (`we will test X`). Do not promise work unless the
  authors have actually committed to it.
- Avoid hedge stacking such as `may perhaps suggest that`. Usually one modal or
  calibrated reporting verb is enough. Multiple qualifiers are justified only
  when they express genuinely different uncertainties.
- Do not attach a hedge mechanically to every interpretive sentence. Excessive
  hedging obscures the claim just as overstatement distorts it.

Before using `must`, `cannot`, `demonstrates`, or a causal verb, state the
specific design feature that licenses that strength. If no such feature can be
named, step down one level.

## Write limitations as claim boundaries

Avoid generic limitation inventories. Use this sequence:

`claim affected -> untested or constrained condition -> consequence for interpretation -> what remains supported -> resolving test or data`

For example, a single-site sample is not merely “a limitation”; it limits the
population or setting to which the claim can be generalized. Say whether it
threatens the central inference, only its transportability, or neither.

Do not use a positive result to cosmetically cancel a serious limitation.
Conversely, do not describe a boundary as fatal when it leaves the central
within-design conclusion intact.

## Make future work resolve an uncertainty

Future work should follow from an unresolved inference, boundary, or capability
revealed by the paper. For every proposal, specify:

- the open question
- why the current evidence cannot answer it
- the discriminating experiment, dataset, comparison, or analysis
- how the outcome would change the interpretation or application

Prefer one or two consequential next tests over a shopping list. Avoid generic
calls for larger samples, more datasets, or broader applications unless their
scientific purpose is stated.

## Run the sentence-function audit

Label each Discussion sentence with one primary function:

`anchor | synthesize | position | interpret | contribute | qualify | bound | extend`

Then apply these checks:

1. **Reverse-funnel direction:** does the section move from the paper's specific
   findings toward broader meaning without outrunning the evidence?
2. **Function coverage:** are the necessary anchor, positioning,
   interpretation/contribution, and boundary functions present?
3. **No Results replay:** does every repeated finding enable a new synthesis?
4. **Literature relationship:** does each citation-bearing comparison say how
   the current result relates to prior work?
5. **Modality fit:** could every strong verb or modal survive an evidence audit?
6. **Boundary consequence:** does each limitation identify which claim or scope
   it changes?
7. **Future-work necessity:** does each proposed next step resolve a named
   uncertainty rather than advertise the topic?
8. **Sentence economy:** can duplicate functions, stacked hedges, or generic
   transitions be deleted without loss?
core/ethics.md
# Citation, ethics, and AI boundaries

## Intellectual debt

Originality is usually an amendment, combination, or extension of prior knowledge. A careful writer acknowledges that debt openly. Do not minimize others' contributions just to make the present work seem more original.

## Position attribution clearly

Make it obvious:

- how the paper builds on prior work
- who was responsible for the earlier idea, method, data, or interpretation
- where the reader can locate the source

## Cite the source you actually read and verified

- Cite paper `A` for `A`'s own data, methods, claims, or conclusions.
- Cite paper `B` for `B`'s interpretation, comparison, critique, or commentary on `A`.
- Avoid leaning on secondary sources when the source article can be cited directly.

## What needs citation

- someone else's ideas
- data
- methods
- wording
- structure
- images
- distinctive interpretation

Do not assume internet material is public domain just because it is online.

## Proofreading checks

Always verify:

- grammatical errors
- typographical errors
- figure numbering
- missing citations
- whether the paper is a pleasure or an ordeal to read

## AI risk and disclosure boundary

Nature Portfolio applies a risk-based framework. Keep human accountability and
verification explicit at every level.

`Green — assistive`: generally acceptable with author verification

- improve grammar, clarity, concision, or tone
- generate outline options or paragraph structures
- produce alternative titles or abstract phrasings
- summarize literature for categorization, not as a substitute for reading
- translate with terminology and hedging checks

`Amber — evaluative or interpretive`: allowed only with strong human control,
verification and transparent disclosure

- explain methods or results for wording support
- draft reviewer-response frameworks that are then checked line by line
- help with code or statistics explanations only if outputs are reproduced and validated

`Red — AI replacing scholarly judgement or lacking transparency`: not permitted

- ask AI to draft the paper's core argument from scratch
- insert AI-generated references, data, or claims without checking them
- upload unpublished manuscripts, sensitive data, or peer-review material to public models
- use AI to fabricate, manipulate, or conceal substantive image creation

## Nature Portfolio submission gate

- AI systems and LLMs do not satisfy authorship criteria and must not appear in
  the author list.
- Human authors remain accountable for originality, accuracy, integrity,
  interpretation and every submitted conclusion.
- For a flagship Nature submission, document LLM use in Methods or, if no
  Methods section exists, in a suitable alternative section.
- Disclose evaluative or interpretive AI use clearly enough that an editor can
  understand what the system contributed and how humans verified it.
- Do not upload an unpublished manuscript, peer-review report, sensitive data
  or confidential editorial material to an unsecured or public AI system.
- Do not present AI-generated hypotheses, analyses, conclusions, references,
  data or photorealistic images as accountable human work.

The main danger is not that AI cannot write. The main danger is that it can write incorrectly with great confidence.

Current policy source, verified 2026-08-08:
<https://www.nature.com/nature-portfolio/editorial-policies/ai>.
core/main-text-discipline.md
# Main-Text Discipline for Scientific Papers

Use this shared contract when drafting, restructuring, compressing, or revising
the main text of a scientific manuscript, especially Results. It operationalizes
an author-supplied writing discipline; it is not a journal policy. Current
journal instructions and field-specific reporting standards override it when
they require information in the main text.

## Contents

- [1. Separate evidence completeness from main-text completeness](#1-separate-evidence-completeness-from-main-text-completeness)
- [2. Classify every result before placement](#2-classify-every-result-before-placement)
- [3. Build the shortest sufficient evidence chain](#3-build-the-shortest-sufficient-evidence-chain)
- [4. Prevent revision accretion](#4-prevent-revision-accretion)
- [5. Separate main text, captions, and SI](#5-separate-main-text-captions-and-si)
- [6. Apply statistical reporting discipline](#6-apply-statistical-reporting-discipline)
- [7. Run the paragraph necessity test](#7-run-the-paragraph-necessity-test)
- [8. Stop explanatory recursion](#8-stop-explanatory-recursion)
- [9. Audit claim repetition](#9-audit-claim-repetition)
- [10. Return an auditable compression record](#10-return-an-auditable-compression-record)
- [Non-negotiable exceptions](#non-negotiable-exceptions)

## 1. Separate evidence completeness from main-text completeness

Preserve the complete evidential record across the manuscript, figures, tables,
Methods, source data, and Supplementary Information (SI). Do not force that full
record into the main text. Reserve main-text space for evidence that establishes,
advances, or materially bounds the central claim.

Do not use compression to hide inconvenient evidence. If an observation changes
the direction, magnitude, scope, or credibility of the central conclusion, keep
it visible in the main text even if it is nominally a robustness or subgroup
analysis.

## 2. Classify every result before placement

Build a result-allocation table before drafting or restructuring Results:

| Class | Decision test | Default destination |
|---|---|---|
| `core_discovery` | Does it advance the paper's central conclusion? | Main text, with adequate evidence |
| `necessary_support` | Must the reader see it to accept the core discovery? | Main text briefly |
| `qualification` | Does it materially bound or alter the central interpretation? | Main text if yes; otherwise SI |
| `robustness` | Does it show the result survives an alternative specification, estimator, seed, threshold, or inference procedure without changing the conclusion? | SI, with a concise pointer when useful |
| `heterogeneity` | Is variation across groups, settings, tasks, or models itself part of the central claim? | Main text if central; otherwise SI |
| `provenance_detail` | Does it document traceability, preprocessing, implementation, or audit detail without advancing the conclusion? | Methods, Source Data, repository, or SI |
| `alternative_inference` | Does it test the same claim using a secondary inferential route? | SI unless it changes acceptance of the claim |
| `edge_case` | Does it define a failure boundary that changes how the claim must be read? | Main text if interpretation changes; otherwise SI |

Classify by function in this paper, not by analysis name. An ablation can be a
core discovery in a mechanism paper; heterogeneity can be the headline result;
a confidence interval can be the primary inferential evidence.

## 3. Build the shortest sufficient evidence chain

After classification, write the minimum ordered chain that lets the reader:

1. understand the central observation
2. see the decisive comparison or mechanism evidence
3. judge the primary uncertainty or inference
4. understand any boundary that changes the conclusion

Do not reproduce the chronological record of analyses. Route supporting checks
to SI with stable pointers. Draft the final Results narrative only after the
analysis and result-allocation table are stable.

## 4. Prevent revision accretion

Every requested addition triggers a deletion check across the whole affected
paragraph:

1. State what new function the proposed sentence serves.
2. Find existing sentences that already serve that function.
3. Prefer replacement, combination, or compression before appending.
4. Re-read the paragraph after the edit and delete any sentence made redundant.
5. Re-run the paragraph necessity test and claim-repetition audit below.

For reviewer-driven edits, ask:

> Does this sentence tell the reader what was discovered, or does it mainly tell
> a reviewer why an objection does not overturn the result?

Keep the first in the main text when necessary. Route the second to SI or the
response letter unless the objection is essential to the central inference.
Answer every reviewer fully in the response letter even when the manuscript
change is deliberately short.

## 5. Separate main text, captions, and SI

- **Main text:** what was found, the decisive support, and what it means for the
  central claim.
- **Figure or table caption:** what is shown and how to read it, including
  definitions needed to interpret the display.
- **SI:** why the conclusion survives deeper scrutiny, including secondary
  analyses, robustness, implementation detail, extended diagnostics, and
  non-central edge cases.

Do not repeat a full set of effect sizes, confidence intervals, and P values in
both the main text and caption. Choose one authoritative location for the full
numeric report and use the other location for the minimum narrative or reading
cue. Preserve journal-mandated caption content.

## 6. Apply statistical reporting discipline

Compute and retain every analysis required by the design, protocol, reporting
standard, and integrity audit. In the main text, normally report:

- the descriptive quantity needed to understand the effect
- the primary inferential statistic or interval needed to support the claim

Route secondary intervals, alternative estimators or inference procedures,
multiplicity checks, sensitivity analyses, and model-level heterogeneity to SI
unless they change the conclusion or are required in the main text. Never select
only the most favorable statistic. Record the complete analysis family and the
reason for each reporting location.

## 7. Run the paragraph necessity test

For every Results paragraph, ask:

> If this paragraph were removed, would the reader still understand and have
> adequate evidence for the paper's central claim?

- **No:** keep it.
- **Yes, but a reviewer might ask for it:** route it to SI or the response letter.
- **Yes, and the point appears elsewhere:** delete it.

When only one sentence is necessary, keep that sentence and relocate the rest.
Do not preserve an unnecessary paragraph merely because one clause matters.

## 8. Stop explanatory recursion

Do not explain an explanation in the main text. If a statistical or graphical
detail needs several sentences to reconcile it with the main result, state the
result and any conclusion-changing boundary simply, then move the extended
reconciliation to SI. Keep the longer explanation in the main text only when the
reconciliation itself is part of the discovery.

## 9. Audit claim repetition

A major claim may be introduced, demonstrated, and synthesized, but each
appearance must perform a different function. Build a claim-location map across
the heading, transition, figure/table caption, Results paragraph, Discussion,
and closing sentence. For each occurrence, mark `introduce`, `demonstrate`,
`interpret`, `synthesize`, `shorten`, or `delete`.

Delete or compress restatements that add no new evidence, boundary, or
interpretation. Do not force the same full claim into every rhetorical slot.

## 10. Return an auditable compression record

For a Results or full-manuscript restructuring task, return or maintain:

1. **Result-allocation table:** result, class, effect on central interpretation,
   destination, and SI/caption pointer.
2. **Shortest evidence chain:** ordered main-text claims and their decisive
   evidence.
3. **Deletion log:** appended, replaced, compressed, relocated, or deleted text,
   with a short reason.
4. **Statistics-location record:** primary main-text report and secondary SI
   analyses.
5. **Claim-repetition map:** retained rhetorical function at each location.
6. **Word-count delta:** before and after for every revised Results subsection.

The prose remains the deliverable. Keep the audit compact unless the user asks
for the full table.

## Non-negotiable exceptions

- Do not move information required for reproducibility, research integrity,
  participant safety, ethics, or a mandatory reporting checklist merely to save
  words.
- Do not bury contradictory or conclusion-changing evidence in SI.
- Do not strip a qualification that prevents a misleading causal, clinical,
  societal, or generalization claim.
- Do not remove statistics required by the target journal, study design, or
  field standard.
- When the user or editor explicitly requires a point in the main text, comply
  but still replace or compress neighboring redundancy before appending.
core/nature-abstract.md
# Nature Abstract Corpus Guidance

Use this reference when drafting, restructuring, or polishing an abstract for
flagship **Nature**, **Nature Communications**, **Nature Machine Intelligence**,
or another **Nature Portfolio** title. The patterns were initially distilled
from an author-supplied reading set of published NMI papers and are generalized
here as Nature-style defaults. They are **corpus-derived writing guidance, not
official journal requirements**. Current target-journal instructions,
article-type rules, reporting standards, and the paper's actual evidence always
take precedence.

## Contents

- [Treat the abstract as the shortest evidence chain](#treat-the-abstract-as-the-shortest-evidence-chain)
- [Use a discovery-centred architecture](#use-a-discovery-centred-architecture)
- [Make the gap sharp and brief](#make-the-gap-sharp-and-brief)
- [Keep only answer-enabling method logic](#keep-only-answer-enabling-method-logic)
- [Select one main claim](#select-one-main-claim)
- [Use numbers by necessity](#use-numbers-by-necessity)
- [End with the conceptual payoff](#end-with-the-conceptual-payoff)
- [Align the abstract with the manuscript](#align-the-abstract-with-the-manuscript)
- [Run the Nature abstract audit](#run-the-nature-abstract-audit)

## Treat the abstract as the shortest evidence chain

Do not write the abstract as a compressed Introduction or a catalogue of
sections. Compress the entire paper into the shortest chain that makes the
central discovery understandable, credible, and consequential:

`precise problem or gap -> what the study does to resolve it -> main discovery -> decisive support or boundary -> what the discovery establishes -> why it matters`

Draft the abstract after the Introduction question, Results evidence chain,
and Discussion synthesis are stable. The abstract should reveal the paper's
argument, not the chronology of the research process.

## Use a discovery-centred architecture

Use this default move order for a Nature Portfolio research article:

1. known phenomenon or important problem
2. precise unresolved question
3. study design or conceptual move used to answer it
4. main discovery
5. one or two critical supporting findings or boundaries
6. conceptual, technical, or field-level implication

Move rapidly into the present study. Spend only enough background to make the
gap intelligible. The centre of gravity must be `we found X`, not `we evaluated
many models and datasets` or `we propose a framework`.

This move order is rhetorical guidance, not a requirement for six sentences.
Combine moves when needed to satisfy the current target-journal abstract limit.

## Make the gap sharp and brief

Use one sentence, or at most the minimum needed, to join the known phenomenon
to the exact unknown. Prefer:

`X is increasingly used or observed, but whether, why, or under what conditions Y remains unclear.`

Do not spend abstract space proving that the whole field is important,
summarizing several generations of prior work, or rehearsing the Introduction
funnel. Avoid generic gaps such as `existing methods still face challenges`
when the paper addresses a precise source, condition, mechanism, or boundary.

## Keep only answer-enabling method logic

Describe the method at the minimum level needed to understand why the design
can answer the stated question. Include, when central:

- the controlled factor or contrast that identifies the claim
- the perturbation, intervention, or decomposition that tests the proposed
  source or mechanism
- the scope needed to judge generalization
- the theoretical property needed to understand the contribution

Omit learning rates, hardware, routine data splits, implementation modules,
and dataset-by-dataset detail unless one of them defines the discovery or its
boundary. The abstract is not a Methods summary.

## Select one main claim

Choose one central claim and at most one or two supporting claims. Compress the
remaining Results into evidence categories or omit them.

Use this hierarchy:

| Role | Abstract decision |
|---|---|
| Main claim | State explicitly and give it the most space |
| Decisive support | Keep when needed to make the main claim credible |
| Boundary | Keep when it materially changes how the claim must be read |
| Scope credential | Mention briefly only when breadth itself supports the inference |
| Secondary analysis | Omit or reserve for the main text/SI |

Do not give every Results subsection one sentence. Experimental scale is a
credibility cue, not the protagonist: use `across ... settings` only when that
scope is necessary to understand generality or confidence.

## Use numbers by necessity

Nature Portfolio abstracts do not require a numeric result merely to appear
empirical.
Include a number only when it performs one of these functions:

- defines the strength or threshold of the main discovery
- is itself the paper's principal law, prediction, or selection result
- makes a decisive comparison interpretable
- establishes a boundary that qualitative wording would obscure

Omit numbers when the conceptual or mechanistic claim is the contribution and
the number would displace the evidence logic. Comparative wording may be
adequate when the exact effect size is not the headline claim.

If several numbers compete for space, keep the one that most changes the
reader's understanding of the central claim. Do not report sample counts,
benchmarks, models, metrics, and multiple effect sizes simply because they are
available.

## End with the conceptual payoff

Use the final sentence to state what the findings change, enable, connect, or
make predictable. Prefer a bounded field-level payoff over self-evaluation:

- a mechanism or principle becomes identifiable
- a design or architecture choice becomes predictable
- a method becomes applicable to a previously inaccessible regime
- two areas become conceptually connected
- a practical decision gains a quantitative or mechanistic basis

Do not end with `the proposed method achieves superior performance` or a broad
promise unsupported by the tested scope.

## Align the abstract with the manuscript

Treat the four sections as different compressions of the same central claim:

- **Abstract:** the manuscript's shortest claim–evidence–implication chain
- **Introduction:** why the exact question must be asked
- **Results:** the full escalating evidence chain that answers it
- **Discussion:** what the answers mean together

Every abstract claim must map to visible Results evidence. The final implication
must match the Discussion synthesis without exceeding its boundaries. Do not
introduce a claim, mechanism, or application in the abstract that the main text
does not establish.

## Run the Nature abstract audit

Build this compact map before sentence polishing:

| Abstract move | Content | Manuscript support | Keep test |
|---|---|---|---|
| Gap | Exact unresolved question | Introduction | Can it be stated in one sharp sentence? |
| Design | Answer-enabling logic | Methods/Results | Does it explain why the question is answerable? |
| Main discovery | One central claim | Results | Is this the paper's real advance? |
| Support/boundary | One or two decisive findings | Results | Does each materially strengthen or bound the claim? |
| Payoff | What the finding changes | Discussion | Is it important and scope-calibrated? |

Then delete or compress:

- background already implied by the title
- implementation detail that does not explain identification or inference
- experiment inventory presented instead of a discovery
- secondary Results included only for completeness
- numbers that do not define, support, or bound the main claim
- a final sentence that merely says the method performs well

Read the abstract once with all method and dataset names hidden. If the central
discovery and why it matters are no longer clear, the abstract is organized
around implementation rather than insight.
core/nature-introduction.md
# Nature Introduction Corpus Guidance

Use this reference when drafting, restructuring, or polishing an Introduction
for flagship **Nature**, **Nature Communications**, **Nature Machine
Intelligence**, or another **Nature Portfolio** title. The patterns were
initially distilled from an author-supplied reading set of published NMI papers
and are generalized here as Nature-style defaults. They are **corpus-derived
writing guidance, not official journal requirements**. Current target-journal
instructions, article-type rules, reporting standards, and the paper's actual
evidence always take precedence.

## Contents

- [Make the Introduction converge](#make-the-introduction-converge)
- [State an exact knowledge gap](#state-an-exact-knowledge-gap)
- [Use literature to construct the gap](#use-literature-to-construct-the-gap)
- [Frame a scientific question](#frame-a-scientific-question)
- [Let the answer emerge late](#let-the-answer-emerge-late)
- [End with a compact research route](#end-with-a-compact-research-route)
- [Align Introduction, Results, and Discussion](#align-introduction-results-and-discussion)
- [Run the Nature Introduction audit](#run-the-nature-introduction-audit)

## Make the Introduction converge

Build a narrowing argument rather than an extended topic overview:

`important problem -> specific phenomenon or difficulty -> what existing approaches establish -> unresolved limitation or tension -> exact unknown -> research question or hypothesis -> what this study does`

Move quickly. Assume the target journal's readers understand the broad field's
importance; use only enough context to make the specific unresolved problem
intelligible. By the end of the opening paragraph, expose the concrete
phenomenon, contradiction, failure condition, or bottleneck whenever the
material permits it.

Delete or compress background that neither narrows the problem nor makes the
eventual question necessary. A history of the field is not a substitute for a
problem funnel.

## State an exact knowledge gap

Express the gap as something genuinely unknown, disputed, or untested. Prefer:

- what causes an observed advantage or failure
- under what conditions a claimed benefit appears or disappears
- which mechanism, information source, or design choice is necessary
- why two credible bodies of evidence disagree
- whether a proposed representation or signal adds information beyond the
  current baseline

Avoid `existing methods have limitations` unless the next clause names the
specific limitation and why resolving it matters. The reader should be able to
complete the sentence:

> It remains unclear whether, why, or under what conditions ______.

Do not define the gap as the absence of the author's method. `No one has used
our architecture for this task` is not yet a scientific unknown.

## Use literature to construct the gap

Organize citations by argumentative function, not as an author-by-author
catalogue:

1. establish the known capability, phenomenon, or prevailing explanation
2. show what prior work has already resolved
3. expose the unresolved condition, boundary, or contradiction
4. make the present research question unavoidable

When the literature contains tension, state both sides fairly and use the
tension to motivate a discriminating question. Avoid generic transitions such
as `substantial progress has been made, but challenges remain` when the cited
work supports a more exact conflict or boundary.

Every literature paragraph must earn its place by narrowing the question. Move
material that only demonstrates breadth to Related Work, Methods context, or a
shorter citation cluster.

## Frame a scientific question

Prefer a question about a phenomenon, condition, mechanism, or boundary over a
method-demand claim:

- weak: `Existing methods are limited; therefore, a new method is needed.`
- stronger: `Performance improves in some settings but deteriorates in others;
  which condition determines whether the proposed mechanism is beneficial?`

Let novelty arise from the unanswered question and the study design capable of
answering it. Remove unsupported novelty adjectives such as `novel`,
`groundbreaking`, `unprecedented`, or `innovative` when the question,
controlled comparison, or diagnostic perturbation already demonstrates the
advance.

## Let the answer emerge late

Do not force the paper's preferred concept, mechanism, or framework into the
opening before the problem logic has motivated it. First establish the
phenomenon, limitation, and exact unknown; then introduce the study's conceptual
move as the natural way to resolve that unknown.

Use transitions such as `To address this question`, `To test this possibility`,
or `To this end` only after the question is explicit. Do not use the transition
to conceal a missing gap.

## End with a compact research route

Prefer one connected closing paragraph over a ceremonial contribution list for
a Nature Portfolio research article, unless the target journal, article type,
editor, or user requires another structure. The paragraph should state:

`research question -> study design or conceptual move -> decisive evaluation route -> principal scope of inference`

Preview the logic of the Results without replaying all findings, metrics, or
figure-level detail. A restrained result-level statement is acceptable when it
clarifies the paper's answer, but do not turn the final paragraph into an
abstract or Discussion.

The route should tell the reader why the chosen comparisons, perturbations,
decompositions, or boundary tests can answer the stated question. Method names
alone do not provide that logic.

## Align Introduction, Results, and Discussion

Treat the three sections as one story at different levels:

- **Introduction:** establish why each central question must be asked.
- **Results:** answer the questions through an escalating evidence chain.
- **Discussion:** synthesize what those answers mean together.

Draft backward from the paper's actual Results claims. For every central
Results subsection, identify the question that the Introduction must motivate.
For every question or hypothesis introduced, identify the Results subsection
that answers it. Do not create parallel stories.

A useful alignment pattern is:

`Introduction: phenomenon -> unresolved source -> necessary-condition question -> decomposition question`

`Results: establish phenomenon -> identify source -> perturb or test necessity -> decompose contributions -> establish boundaries`

`Discussion: synthesize the answers -> relate to theory and prior work -> state implications and limits`

## Run the Nature Introduction audit

First state the paper's exact unknown in one sentence. If that sentence is
vague, repair the gap before polishing prose.

Then build this reverse-outline table:

| Introduction unit | Narrowing move | Literature function | Question motivated | Results answer |
|---|---|---|---|---|
| Paragraph or sentence block | What becomes more specific here? | Establish, resolve, contrast, or expose gap | Which exact question follows? | Which Results subsection answers it? |

Flag and revise any unit that:

- adds field background without narrowing the problem
- lists studies without constructing a known–unknown transition
- introduces the solution before the reader can see why it is needed
- claims novelty mainly through adjectives
- previews a Results claim for which no question has been motivated
- motivates a question that the Results never answer

Before finalizing, run a deletion test: if removing a paragraph leaves the
exact gap, research question, and Results roadmap intact, compress, relocate, or
delete that paragraph.
core/nature-results-discussion.md
# Nature Results–Discussion Corpus Guidance

Use this reference when drafting, restructuring, or polishing Results and
Discussion for flagship **Nature**, **Nature Communications**, **Nature Machine
Intelligence**, or another **Nature Portfolio** title. The patterns were
initially distilled from an author-supplied NMI reading set and reinforced by a
second author-supplied comparison set of flagship Nature papers. They are
generalized here as Nature-style defaults and remain **corpus-derived writing
guidance, not official journal requirements**. Current target-journal
instructions, article-type rules, reporting standards, and the paper's actual
evidence always take precedence.

## Contents

- [Core division of labour](#core-division-of-labour)
- [Build Results as claim escalation](#build-results-as-claim-escalation)
- [Choose an evidence-chain archetype](#choose-an-evidence-chain-archetype)
- [Prevent same-level repetition](#prevent-same-level-repetition)
- [Prefer diagnostic experiments when mechanism matters](#prefer-diagnostic-experiments-when-mechanism-matters)
- [End evidence units with an inference](#end-evidence-units-with-an-inference)
- [Apply the local-interpretation gate](#apply-the-local-interpretation-gate)
- [Write Discussion as synthesis, not re-demonstration](#write-discussion-as-synthesis-not-re-demonstration)
- [Run the Nature claim-escalation audit](#run-the-nature-claim-escalation-audit)

## Core division of labour

- **Results:** establish and advance the paper's scientific claims through an
  evidence chain. Results may include comparison, ablation, perturbation,
  robustness, failure analysis, directly evidence-bound interpretation, and a
  local inference.
- **Discussion:** synthesize several established claims into a higher-order
  understanding, relate that understanding to prior work, explain its
  importance, and bound its implications.

Do not enforce the mechanical split `Results = facts only` and
`Discussion = all interpretation`. The operative boundary is local versus
synthetic interpretation: keep an explanation in Results when it directly
resolves the experiment just reported; move broader theory, literature
integration, general implications, and extended speculation to Discussion.

## Build Results as claim escalation

Make each Results subsection answer one scientific question and establish one
new claim. Prefer a conclusion-bearing heading over a procedural experiment
label when the evidence supports it.

Order adjacent subsections so that each result creates the next question:

`observation -> unresolved question -> targeted experiment -> comparison or perturbation -> local interpretation -> stronger claim -> next question`

At paper level, prefer an escalating arc such as:

`phenomenon -> source -> necessary condition or mechanism -> decomposition -> boundary or robustness`

Do not substitute repeated demonstrations of the same claim for escalation.
Two subsections may share data, conditions, or methods; they become redundant
only when they collapse to the same inferential conclusion.

## Choose an evidence-chain archetype

Organize Results by inferential function, not by a routine inventory such as
`system description -> benchmark -> ablation`. Select or combine the archetype
that matches the scientific claim:

### Discovery loop

Use when evidence changes what should be tested next:

`initial hypothesis -> real or decisive test -> analyse the resulting evidence -> refine the hypothesis -> next test -> architecture or mechanism validation`

The Results should preserve the epistemic loop without becoming a chronological
lab notebook. Keep only iterations that change the claim or the next scientific
question.

### Core capability and validation envelope

Use when the paper establishes one central capability, then asks whether it is
reliable, safe, general, or confounded:

`establish core capability -> validate in decisive settings -> test safety or bias -> rule out central alternatives -> define limits`

Treat medication, subgroup, decision, bias, or perturbation analyses as the
validation envelope of the main story when they answer whether the same core
capability survives important conditions. Do not present each check as an
unrelated second discovery.

### Capability ladder

Use when a system or model supports progressively stronger claims:

`quantitative performance -> robustness to data properties -> stronger competitors or tuned ensembles -> interpretability -> broader foundation or transfer abilities`

Each rung must justify a stronger inference. More datasets or another benchmark
at the same inferential level do not automatically create a new rung.

Across archetypes, the most common functional chain is:

`establish the phenomenon -> stress-test it -> rule out alternatives -> broaden it -> interpret it -> bound it`

Not every paper needs every move. Preserve the shortest chain sufficient for
the central claim.

## Prevent same-level repetition

A later subsection may reuse an earlier baseline, control, or reference
contrast, but it must not present the same comparison and conclusion as a new
result. Treat reused conditions as **necessary comparators**, not as the centre
of the later subsection.

Ask what deeper discriminator the later analysis adds:

- content versus correct correspondence
- association versus necessity
- nominal performance versus robustness
- apparent gain versus a data, compute, or tuning confound
- one setting versus the boundary of generalization

Make the new perturbation, falsification, stronger comparator, or boundary test
the subsection's decisive evidence. If two adjacent subsections can both be
summarized as `X helps`, merge them, compress the repeated contrast, or move the
weaker demonstration to SI. A valid progression looks like:

`X is associated with the effect -> disrupting the proposed relation removes the effect -> therefore the relation, not merely the presence of X, is necessary within the tested design`

## Prefer diagnostic experiments when mechanism matters

When the claim concerns why a result occurs, do more than show performance with
and without a component. Where scientifically valid, perturb, shuffle, mask,
misalign, remove, or otherwise disrupt the proposed information or mechanism,
then test whether the predicted degradation occurs.

Use the logic:

`association -> targeted disruption -> predicted degradation -> bounded mechanism inference`

Do not turn this pattern into automatic causal language. Calibrate the
inference to the intervention, controls, design, and alternative explanations.

## End evidence units with an inference

After a coherent group of measurements, state what the evidence establishes;
do not stop at a sequence of numbers. The inference must be no broader than the
evaluated conditions.

Report failures, reversals, anomalous scaling, weak subgroups, and performance
trade-offs when they materially define where the claim holds, weakens, or
fails. Do not hide a conclusion-changing boundary in Supplementary
Information.

Place robustness in the main text when it establishes a necessary condition,
rules out a central alternative, reveals a failure boundary, or otherwise
creates an independent scientific inference. Route it to SI when it only adds
reassurance that the same conclusion survives another seed, estimator,
threshold, or secondary specification.

## Apply the local-interpretation gate

Results may use calibrated language such as `suggests`, `indicates`, `likely
because`, `probably owing to`, or `we speculate that` only when all of the
following hold:

1. the interpretation answers the question raised by the immediately preceding
   result
2. the evidence for it is visible in the current subsection
3. uncertainty and alternative explanations remain explicit
4. the passage closes the local evidence unit instead of opening a broad field
   discussion

If several sentences are needed to reconcile theory, prior literature, or
competing mechanisms, state the bounded local inference in Results and move the
extended synthesis to Discussion or SI as appropriate.

## Write Discussion as synthesis, not re-demonstration

Use the move order:

`brief central finding anchor -> cross-Results synthesis -> relation to prior work or theory -> importance -> boundary conditions and limitations -> broader implications or future directions`

Open by redefining the paper's central discovery in one compressed judgement.
A short recap—and occasionally one indispensable anchor number—is acceptable.
Then move immediately to mechanism or conceptual interpretation, significance,
limitations, and future directions. Do not repeat the full comparison, effect
size, statistical test, and inference already used to demonstrate the claim in
Results.

Distinguish:

- **necessary recap / anchor:** `Results establishes X; taken together, X implies Y`
- **redundant re-demonstration:** Results and Discussion both replay
  `A versus B -> effect -> test -> therefore X`

Some published Nature Portfolio content types may use a Conclusion rather than
a standalone Discussion. Treat that as corpus variation, not permission to
ignore the current target-journal article-type instructions or an
editor-provided template.

## Run the Nature claim-escalation audit

For each Results subsection, record:

| Audit field | Question |
|---|---|
| Scientific question | What unresolved question does this subsection answer? |
| New claim | What proposition becomes supportable here that was not supportable before? |
| Evidence-chain role | Establish, stress-test, discriminate, broaden, interpret, or bound? |
| Decisive evidence | Which comparison, perturbation, or analysis establishes it? |
| Inference gain | What independent inference would disappear if the subsection were removed? |
| Next question | What uncertainty naturally motivates the following subsection? |

Flag adjacent subsections when their `New claim` or `Inference gain` entries are
substantively identical. Merge, compress, or move the weaker repetition to SI.

Before finalizing Discussion, map every repeated claim to a distinct rhetorical
function: `anchor`, `synthesize`, `relate`, `bound`, or `extend`. Delete any
repetition that only re-demonstrates the Results evidence.
core/paper-type-taxonomy.md
# Paper-type taxonomy

Canonical 5-type vocabulary used by both `nature-polishing` and `nature-writing` (and any future skill on the `paper_type` axis).

## The five types

| Type | One-line definition | Reader's central question |
|---|---|---|
| **research** | Reports a phenomenon, mechanism, or finding from primary observation or experiment. | What was found and what does it mean? |
| **methods** | Proposes a new method, protocol, or measurement and demonstrates its advantage. | Does it work? Is it better? Is it reproducible? |
| **hypothesis** | Establishes or rules out a causal explanation through targeted evidence. | Is the proposed mechanism the right one? |
| **algorithmic** | Proposes a procedure, model, system, or device and shows it performs reliably and advantageously. | Does it perform under fair comparison? Where does it fail? |
| **review** | Synthesizes the state of a field, organizing the literature by argument, not by paper. | What is known, where is the disagreement, what is open? |

## Detection guidance

- If the user names a paper type, use it.
- If the manuscript reports experiments testing a stated mechanism → **hypothesis**.
- If the manuscript proposes a procedure/model and reports comparisons → **algorithmic**.
- If the manuscript proposes a measurement or protocol and reports validation → **methods**.
- If the manuscript synthesizes prior literature without new primary data → **review**.
- Otherwise → **research** (default).

## Notes on legacy vocab

Some older notes use a longer taxonomy (mechanism / method / resource / device / model / clinical / materials / computational / interdisciplinary). Map onto the five canonical types:

- mechanism, clinical, materials → **research** or **hypothesis** depending on whether a causal claim is central
- method → **methods**
- model, device, computational → **algorithmic**
- resource → usually **methods** (a dataset/benchmark paper) or **research**
- interdisciplinary → use the dominant argument structure, not the field label

## Skill-specific action layers

Each skill's `static/fragments/paper_type/<type>.md` adds the **action layer** for that skill on top of this taxonomy:

- `nature-polishing` adds diagnostic rules (what to look for, what to fix).
- `nature-writing` adds constructive rules (argument chain, drafting order).

The taxonomy here is the **shared vocabulary**; the action is skill-specific.
core/reader-workflow.md
# Reader workflow

Used by both `nature-polishing` and `nature-writing`. Always-loaded shared core.

## The reader's question sequence

Most readers of a scientific paper follow a stable sequence:

1. **Relevance** — Is this for me?
2. **Novelty** — What is new here?
3. **Trust** — Do I believe it?
4. **Reuse** — Can I use it?
5. **Meaning** — What does it mean, and where are the boundaries?

Whether the task is drafting from scratch or polishing existing prose, the paper should help the reader answer these questions in this order.

## Implications

- A draft that buries novelty (question 2) behind methods detail (which serves question 3) will lose readers in the first paragraph.
- A polish that improves sentence-level fluency without surfacing relevance (question 1) earlier may still fail with broad-audience readers.
- "Where are the boundaries" (question 5) is the most commonly skipped. Both drafting and polishing should expose it, not paper over it.
core/research-compliance.md
# Nature Portfolio research-compliance routing

Use this conditional reference when a manuscript involves regulated research,
specialist reporting forms, sensitive images, structures, samples or materials.
It is a readiness screen, not legal, clinical or ethics-board advice.

## Contents

1. Applicability gate
2. Reporting summaries
3. Human-participant research
4. Animal research
5. Clinical research
6. Image integrity
7. Structures, chemistry and materials
8. Taxonomy and provenance-sensitive samples
9. Audit output
10. Official sources

## 1. Applicability gate

Classify every item as `required`, `not applicable`, or
`AUTHOR_INPUT_NEEDED`. Never infer an approval, consent, registration, permit,
protocol, accession, validation report or exemption.

Open only the relevant blocks below. Do not burden a computational or
theoretical manuscript with unrelated biomedical requirements.

## 2. Reporting summaries

Require the relevant current Nature Portfolio form when the study is:

- life sciences
- behavioural or social sciences
- ecology, evolution or environmental science
- a physical-science Article in a specifically covered area, including solar
  cells or claims of lasing

The form is supplied to editors and reviewers and published with accepted
manuscripts. Advanced form features require Adobe Reader. Treat the form as a
substantive cross-check against Methods, statistics and figure legends, not as
a checkbox exercise.

## 3. Human-participant research

Check that the submitted manuscript states:

- compliance with the Declaration of Helsinki where applicable
- the approving ethics committee's name and reference number
- details of any formally granted exemption and the committee granting it
- that informed consent was obtained from all participants
- consent for publication of identifiable information or images when relevant
- how population categories such as race, ethnicity, sex and gender were
  defined, justified and handled analytically when they are used
- safeguards for vulnerable groups, privacy and sensitive data

Route controlled-access data wording to `nature-data`.

## 4. Animal research

For experiments involving live vertebrates or higher invertebrates, check:

- the corresponding author's confirmation of compliance with relevant rules
- the institutional or licensing committee and relevant approval details
- sex and other animal characteristics that may affect results
- housing and husbandry details where they may influence results
- reporting against ARRIVE 2.0 where applicable
- accepted anaesthesia and euthanasia practice

Flag methods that appear inconsistent with accepted welfare norms rather than
trying to repair the wording.

## 5. Clinical research

### Registration

- register every qualifying prospective clinical trial in an acceptable WHO
  primary registry or ClinicalTrials.gov before enrolment of the first
  participant
- state the trial number clearly in both the abstract and Methods
- treat primary results from an unregistered qualifying trial as a blocking
  issue

### Submission files

Clinical trial reports should include:

- the latest English protocol, signed and dated
- all amendments plus a summary and rationale for changes
- the latest English statistical analysis plan when separate
- machine-readable versions of original documents not written in English
- visible design, analysis and outcome-reporting content even when sensitive
  material is redacted

Confirm that the primary analysis matches the prespecified protocol and SAP.
Explain deviations in Methods. Label unplanned post-hoc or exploratory analyses
in the abstract and manuscript.

### Study-type reporting

Use the current guideline that matches the design, including:

- CONSORT 2025 and relevant extensions for randomized trials
- CONSORT-AI for clinical trials involving AI interventions
- STROBE for observational studies
- PRISMA for systematic reviews and meta-analyses
- STARD or REMARK for diagnostic/prognostic biomarker studies
- TRIPOD or TRIPOD-AI for prediction models
- TARGET for observational target-trial emulation
- CARE or the applicable N-of-1 CONSORT extension for case reports/series
- BRISQ Tier 1 characteristics for human biospecimens when relevant

Do not provide clinical-statistical advice beyond manuscript reporting checks
without the protocol and SAP.

## 6. Image integrity

At review and revision, verify that:

- submitted images are minimally processed and faithfully represent originals
- unprocessed data and metadata are retained and can be supplied on request
- acquisition tools, software, settings and processing are described in Methods
- images gathered at different times or locations are not combined without
  disclosure and clear boundaries
- cloning, healing or tools that obscure manipulation are not used
- brightness and contrast changes are global, applied equally to controls and
  do not remove data
- pseudocolour, nonlinear/gamma changes and channel-specific adjustments are
  disclosed

For gels and blots, record lane rearrangement, loading controls, crop boundaries,
parallel processing and duplication checks. Accepted life-science papers require
unprocessed original gel and western-blot images for Supplementary Information.

## 7. Structures, chemistry and materials

### Small-molecule crystallography

Require at submission when applicable:

- a standard `.cif` file
- a structural figure with probability ellipsoids for Supplementary Information
- structure factors for every structure
- IUCr CheckCIF validation output as a PDF
- explanations for all A- or B-level alerts

### Other structures and materials

- obtain official wwPDB validation reports for macromolecular structures when
  required for peer review
- deposit electron-microscopy density maps and coordinate data in the required
  repositories
- identify individual organic and inorganic compounds in order of first
  appearance with logical bold numerals; do not number standard buffers,
  reagents or solvents
- for new compounds central to the conclusions, provide structure, synthesis
  and characterization in enough detail for reproduction
- use RRIDs or other persistent identifiers for key biological resources where
  available
- report cell-line source, authentication and distribution restrictions

## 8. Taxonomy and provenance-sensitive samples

- new or revised formal animal taxonomy may require registration and LSIDs from
  ZooBank
- geological, archaeological and palaeontological samples need transparent
  provenance, permits and compliance with local laws
- palaeontological and type specimens should be deposited in a recognized
  museum or collection with accession codes where applicable
- flag protected-site materials without documented permission

## 9. Audit output

Return a compact table:

| Requirement | Applies? | Evidence in manuscript/files | Status | Required action |
|---|---|---|---|---|

Use `blocked` for missing registration, approval, consent, essential protocol,
mandatory repository deposit, validation report or unavailable original data.
Use `AUTHOR_INPUT_NEEDED` when applicability or administrative facts are not
known.

## 10. Official sources

Verified 2026-08-08:

- Research ethics: <https://www.nature.com/nature-portfolio/editorial-policies/ethics-and-biosecurity>
- Clinical research: <https://www.nature.com/nature-portfolio/editorial-policies/clinical-research>
- Reporting and availability: <https://www.nature.com/nature-portfolio/editorial-policies/reporting-standards>
- Image integrity: <https://www.nature.com/nature-portfolio/editorial-policies/image-integrity>
- Nature initial submission: <https://www.nature.com/nature/for-authors/initial-submission>
core/terminology-ledger.md
# Terminology Ledger

A manuscript must use one name for one thing. The same method, model, dataset,
gene, metric, or concept must not drift across shifting names, spellings, or
capitalisation. Reviewers read inconsistent terminology as careless work, and a
term that changes between sections forces the reader to re-learn it.

Build the ledger **before** drafting or polishing prose, and treat it as the
single source of truth for the rest of the job. Consistency against a standard
is impossible if the standard was never written down.

## 1. Build the ledger on first contact

When you first receive a manuscript, draft, or set of notes, extract every
recurring domain term into a ledger before editing any prose:

- methods, models, systems, algorithms, modules, frameworks
- datasets, benchmarks, cohorts, materials, reagents
- genes, proteins, species, cell lines (respect established field nomenclature)
- metrics, units, statistical symbols, mathematical notation
- abbreviations and acronyms, each with its full form
- key concepts the paper defines or repeatedly relies on

For each term, record its canonical form, its first-use expansion (for
abbreviations), and any variants already present in the source.

## 2. Present the ledger to the user

Show a compact table before or alongside the first output:

| Canonical term | First-use definition | Variants seen in source | Decision |
|---|---|---|---|
| scRNA-seq | single-cell RNA sequencing (scRNA-seq) | "single cell RNA-seq", "scRNAseq" | spell out once, then use "scRNA-seq" |

Flag every collision explicitly: the same concept under different names, or one
name reused for two different concepts. Ask the user to confirm the canonical
choice only when the decision is genuinely ambiguous or domain-sensitive.
Otherwise adopt the form the source uses most often and state that choice.

## 3. Lock and enforce

Once set, the ledger is fixed for the whole job:

- Use only canonical forms in every output. Do not introduce synonyms to vary
  the prose. Terminology consistency outranks lexical variety in scientific
  writing.
- Define each abbreviation once, at first use, then use the short form.
- Keep units, symbols, and notation identical across every section.
- When drafting or polishing a later section, reference the ledger built from
  the earlier sections instead of re-deciding term by term.
- If the user later renames a term, change every occurrence in the manuscript,
  not just the current passage, and update the ledger.

## 4. Do not invent terms

Do not coin new names for the author's methods, modules, or concepts. If a term
is missing, undefined, or used inconsistently in ways you cannot resolve from
the source, ask the user or flag it. Never fill the gap with a guessed name.
journal-formats/nat-comms.md
# Nature Communications — formatting facts

Authoritative facts about Nature Communications formatting requirements. Used by both `nature-polishing` and `nature-writing` when `journal=nat-comms`. This file holds the **facts**; each skill's `static/fragments/journal/nat-comms.md` adds the **action layer**.

> Always verify against the journal's current guidelines before final submission. Limits change. The numbers below are accurate as of early 2026.

## Article types and limits

| Article type | Body words | Abstract | References | Display items | Methods placement |
|---|---|---|---|---|---|
| **Article** | ~5,000 (incl. Methods) | 150 words | ~60 | up to 10 (figures + tables combined) | within main text |
| **Brief Communication** | ~2,000 (incl. Methods) | 100 words | ~20 | up to 4 | within main text |
| **Review** | ~6,000 | 200 words | ~100 | flexible | N/A |
| **Perspective** | ~4,000 | 150 words | ~50 | flexible | N/A |
| **Correspondence** | ~500 | none | ~10 | 1 | within main text |

### Critical word-count quirk (Articles)

The ~5,000-word limit **includes Methods**. This is the single biggest practical difference from *Nature* (where Methods sits after references with its own ~3,000-word allowance).

Budget upfront, e.g.:
- ~3,500 words for Introduction + Results + Discussion
- ~1,500 words for Methods

A paper with 4,800 words of Intro/Results/Discussion plus 1,500 words of Methods is **30% over the limit**.

## Abstract

- 150 words maximum
- Unstructured single paragraph
- No citations
- Spell out abbreviations at first use
- Keywords are assigned by editorial staff, not submitted
- Include quantitative results where possible (`94% conversion with 99% selectivity`, not `significant improvement`)
- Lead with the finding, not the background — editors triage on the abstract

## Figures and display items

- **Up to 10 display items** in the main article (figures + tables combined)
- **No Extended Data tier** (unlike *Nature*). Items beyond 10 go into Supplementary Information (downloadable, but still peer-reviewed)

### Resolution and format

| Parameter | Requirement |
|---|---|
| Line art resolution | 1,200 dpi minimum |
| Halftone / photo resolution | 300 dpi minimum |
| Combination (line + halftone) | 600 dpi minimum |
| File formats | TIFF, EPS, PDF, or JPEG |
| Color mode | RGB (online-only journal) |
| Single-column width | 89 mm |
| Double-column width | 183 mm |
| In-figure font | Arial / Helvetica / sans-serif, 5–7 pt |
| Panel labels | Lowercase bold letters (`a`, `b`, `c`, …) |

Online-only publication means: color is free, no CMYK requirement, design for screen reading (sufficient contrast, colorblind-friendly palettes, clear labels).

### Multi-panel figures

Common and accepted. A single figure with panels `a`–`l` is normal. No formal panel cap, but readability is enforced informally — if panel labels need magnification, the figure has too many panels.

## References

- **Style**: standard Nature reference style
- **In-text**: superscript numbers, sequential by first appearance. Multiple: `^1,2`. Ranges: `^3–7`.
- **Cap**: ~60 for Articles (more generous than *Nature*'s ~30)
- **Format example**:
  ```
  1. Smith, A. B., Johnson, C. D. & Williams, E. F. Title of article. Nat. Commun. 16, 1234 (2025).
  ```
- Author names: `Last, Initials` (no periods on initials)
- `&` before the last author
- Journal names abbreviated per ISO 4
- Volume in **bold**
- **Article number** (e.g., `1234`), not page range — Nature Communications is online-only
- Year in parentheses
- DOIs encouraged
- Reference list appears **before** the Methods section in the published article, even though Methods is part of the main text in the manuscript

## Supplementary Information

- Single PDF or multiple files; peer-reviewed
- Organize with a table of contents if it exceeds 10 pages
- Labels: `Supplementary Fig. 1`, `Supplementary Table 1`, `Supplementary Note 1`, `Supplementary Methods`
- Large tables → separate Excel files

## Mandatory statements

- **Data Availability statement** — required. Must specify repositories, accession numbers, DOIs. Enforced at production stage; **invalid or pre-publication accession numbers block publication**.
- **Code Availability statement** — required if custom code was used. Must include repository URL and DOI (e.g., via Zenodo).
- **Author contributions** — in the manuscript after the main text
- **Competing interests** — in the manuscript
- **Reporting Summary** — Nature Portfolio Reporting Summary required (Life Sciences Reporting Summary for life sciences). Sent to reviewers; not a checkbox exercise.

## Cover page elements

- **Title**: concise, informative, no abbreviations; recommended ≤ 15 words
- Author names with superscript affiliation numbers
- Affiliations with full institutional addresses
- Corresponding author(s) with email
- ORCID iDs required for corresponding author, encouraged for all

## Cover letter (separate upload)

Editors use the cover letter for triage. Do not waste it on generic statements like "broad interest." State explicitly:

1. What the finding is (one sentence)
2. What makes it new (one sentence)
3. Why it matters across multiple scientific disciplines (one sentence)

## Open access and licensing

- Fully open access — APC applies (verify current rate; substantial)
- Default license: **CC BY 4.0**
- Some funders (e.g., UKRI) require CC BY; others allow CC BY-NC — check funder requirements

## Transparent peer review

- **Default since November 2022**: reviewer reports and author responses published alongside accepted articles
- Authors may opt out during submission — opt-out must be deliberate
- Consider opt-out if reviewer exchanges contain content not suitable for public record

## Manuscript formats

- Initial submission: single PDF preferred (Word- or LaTeX-generated), figures embedded
- Revision: Springer Nature Word template **or** LaTeX `sn-jnl` class with `nature` option
- BibTeX: `sn-nature.bst`
- Both formats equally acceptable; no editorial preference

## Common desk-rejection / production-hold patterns

1. **Methods word count not budgeted** — most common formatting error, especially for authors transferring from *Nature*
2. **Reporting Summary completed as checkbox** — vague `N/A` responses, no explanation for outlier exclusions, missing blinding info, weak power calculations → generates specific revision requests
3. **Data availability statement with unresolved accession numbers** — production verifies all accessions before publication; invalid IDs block release
4. **Generic cover letter** — fails to establish cross-disciplinary significance; signals authors haven't considered scope fit

## Transfer from Nature

Manuscripts rejected from *Nature* can transfer with reviews intact. Editors may decide on existing reviews or send for additional review. **Formatting differences (Methods placement, word limit including Methods, no Extended Data tier) are handled at revision, not at transfer**.
journal-formats/nature-machine-intelligence.md
# Nature Machine Intelligence submission requirements

Canonical, stage-aware rules for manuscripts submitted to **Nature Machine
Intelligence** (`NMI`; route key `nat-mach-intell`). This file contains the
journal facts. A requesting skill supplies its own drafting, polishing, figure,
data or statistics action layer.

Do not substitute the flagship *Nature* or *Nature Communications* limits.
When an editor gives manuscript-specific instructions, those instructions take
priority over this public-page snapshot.

## Contents

1. Authority and stage gate
2. Editorial scope and article types
3. Article and Analysis contract
4. Other content types
5. Initial-submission package
6. Writing, structure and accessibility
7. Cover letter, review mode and related work
8. Data, code and reporting standards
9. Figures, Extended Data and Supplementary Information
10. Accepted-in-principle production contract
11. Requirements not stated as fixed numbers
12. Official sources

## 1. Authority and stage gate

Record the active stage before applying a rule:

- `initial_submission`: before the first editorial decision. A complete,
  reviewable manuscript is required, but no special house formatting is
  required.
- `revision`: after peer review. Follow the handling editor's instructions in
  addition to the public guide and preserve a point-by-point response record.
- `accepted_in_principle`: supply editable text, production-quality figures,
  final declarations, supporting-information inventory and requested forms.
- `proof`: correct production errors only; do not silently introduce a new
  scientific claim or analysis.

Do not block an initial submission for missing final-production typography,
editable source artwork, final table placement or ORCID linking. Do block or
flag an initial package that lacks required scientific content, a cover letter,
required availability statements, disclosed overlap or review access to data
and central custom code.

## 2. Editorial scope and article types

### Scope fit

The journal considers high-quality original research and reviews across
machine learning, robotics and artificial intelligence, including the broader
scientific, societal and industrial effects of these technologies. It aims to
support dialogue across disciplines, so a technically strong paper still needs
an intelligible question, consequence and audience beyond one narrow benchmark
community.

For an original-research **Article**, verify that the work presents substantial
novel research and a complex, well-supported story. Several techniques or
approaches may be needed, but method count is not a substitute for scientific
importance, validation or scope fit.

### Supported content types

The public content-type guide includes:

- Article
- Analysis
- Review Article
- Perspective
- Correspondence
- Comment
- Reusability Report

Primary research is normally eligible for either subscription publication or
Gold open access. Non-primary content types are not normally eligible for Gold
open access and should not be used to smuggle in new primary findings; only
minimal supporting data are appropriate where the content type permits them.

## 3. Article and Analysis contract

### Article limits

| Item | Current NMI requirement |
|---|---|
| Main text | up to **3,500 words** |
| Excluded from main-text count | abstract, Methods, references and figure legends |
| Abstract | up to **150 words**, unreferenced |
| Display items | up to **6** figures and tables combined |
| References | typically up to **50** |
| Supplementary Information | permitted when relevant |

### Analysis limits

| Item | Current NMI requirement |
|---|---|
| Main text | up to **3,500 words** |
| Excluded from main-text count | abstract, online Methods, references and figure legends |
| Abstract | **100–150 words**, unreferenced |
| Display items | up to **6** figures and tables combined |
| References | typically up to **50** |

### Article and Analysis structure

Use this sequence unless the editor authorizes a justified variant:

1. Introduction, without an `Introduction` heading
2. Results
3. Discussion
4. Methods

Results and Methods may use short topical subheadings. Discussion should not
use subheadings. The Methods section should be concise but contain enough
detail for interpretation and replication; original research publishes Methods
online.

Treat the six-item display allowance as a combined figure-plus-table budget.
Plan the evidence hierarchy before drafting rather than shrinking essential
validation into unreadable composite panels.

## 4. Other content types

| Content type | Length | Displays | References | Key boundary |
|---|---:|---:|---:|---|
| Review Article | **3,000–4,000 words** | illustrations strongly encouraged | up to **100** | synthesize a field; annotations are encouraged for the most important references, normally no more than 10% of the list |
| Perspective | **3,000–4,000 words** | as justified | up to **100** | present a scholarly, forward-looking viewpoint rather than a disguised original Article |
| Correspondence | **500–1,000 words** | up to **1** | up to **10** | should not contain research data or analysis |
| Comment | **1,500–2,000 words** | as justified | up to **15** | should not be a normal primary-research report |
| Reusability Report | follow the Article format | follow the Article format | follow the Article format | evaluate robustness or reusability of existing code rather than merely announcing software |

Do not infer an Article limit for an unlisted or commissioned format. Check the
current content-type page or the commissioning editor's instructions.

## 5. Initial-submission package

### Accepted review formats

At initial submission, NMI does not require special formatting if the material
is complete and reviewable. The journal accepts:

- PDF
- Microsoft Word
- TeX/LaTeX, submitted as a compiled PDF for review

### Package inventory

Prepare:

- one complete manuscript file containing the Methods, figures and any
  Extended Data used at review stage
- a **cover letter**
- Supplementary Information when needed for the conclusions, understanding or
  replication

The manuscript should include:

- author names and affiliations, unless optional double-anonymized review is
  selected
- enough findings, methods and material detail for editorial and peer review
- a complete reference list
- optional Extended Data, within the ten-item limit

Every figure, table, Extended Data item and supplementary item must be cited in
the manuscript. Supporting information is sent to reviewers, so it must be
reviewable and must not contain claims that the main text depends on but never
states.

## 6. Writing, structure and accessibility

- Write for readers beyond the immediate machine-learning or application
  subfield.
- Make titles and abstracts intelligible to scientists outside the specialty.
- Explain unavoidable jargon and define non-standard abbreviations at first
  use; minimize abbreviations when plain language is shorter.
- State the scientific or societal question, not only the architecture and
  benchmark score.
- Report quantitative evidence and important limitations without inflating
  association, benchmark gain or simulation performance into general-world
  effectiveness.
- Keep Methods concise but reproducible. A numeric Methods word limit is not
  stated on the current public NMI pages.

For algorithmic papers, distinguish the contribution from parameter scaling,
data leakage, additional supervision, compute advantages and benchmark-specific
tuning. For deployed or societal claims, describe the population, setting,
failure modes and transfer boundary.

## 7. Cover letter, review mode and related work

### Cover letter

The initial package includes a cover letter. It should:

- explain the work's importance and fit for NMI's diverse readership
- disclose related manuscripts under consideration or in press
- disclose any prior discussion of the work with an NMI editor
- place author affiliations and contact details here when double-anonymized
  review is selected
- optionally recommend or oppose reviewers, giving a concise reason for an
  exclusion request

The cover letter is confidential and is not shown to reviewers. Do not repeat
the abstract; use it to help the editor understand novelty, audience, overlap
and any sensitive procedural context.

### Double-anonymized peer review

Double-anonymized review is optional. Authors who select it must:

- remove identifying author and affiliation information from the manuscript
- anonymize self-citations, acknowledgements, repository links and file
  metadata where necessary without making the science uninterpretable
- provide author information in the cover letter and submission system
- select the double-anonymized option during submission

The authors, not the journal, are responsible for effective anonymization.

### Preprints, conference papers and overlapping work

- A preprint is not treated as prior publication. Disclose it and provide its
  DOI and licence where available; a preprint may be posted during review.
- NMI may consider a journal manuscript extending a conference proceeding only
  when the new submission **substantially extends** the results, methodology,
  analysis, conclusions or implications. The editor decides whether the
  extension is sufficient.
- Cite and disclose the conference paper, identify the concrete extension and
  obtain any reuse permission or attribution required for text, figures or
  tables.
- Disclose and supply related manuscripts with overlapping authors that are
  under consideration or in press.
- Do not submit work with significant overlap simultaneously to another
  journal.

NMI does **not** consider presubmission enquiries. Prepare the full initial
submission instead.

## 8. Data, code and reporting standards

### Data Availability

Every original-research manuscript needs a Data Availability statement that
maps each supporting dataset to an access route. At initial submission:

- give repository names, persistent identifiers or accession numbers when
  available
- prefer recognized repositories for large or reusable datasets instead of
  burying them in Supplementary Information
- make supporting data available to editors and reviewers on request
- disclose legal, ethical, privacy, commercial, controlled-access,
  third-party or proprietary restrictions at submission and describe the
  access procedure precisely in the manuscript
- avoid an unqualified `available upon request` statement

### Code Availability

Place a separate headed **Code availability** section after Data Availability
and before the references. It must state how central custom code or algorithms
can be accessed and describe any restrictions.

For code central to the conclusions:

- make it available to editors and reviewers during peer review
- provide executable instructions, environment/dependency information and the
  inputs needed to reproduce key results
- prefer a DOI-minting repository such as Zenodo or Code Ocean and an
  Open Source Initiative-approved licence when release is possible
- expect the central code to be peer reviewed
- complete the **Software Submission Checklist** when newly developed code is
  central to the paper

Never invent a repository, DOI, licence, access condition or software version.
Route repository and statement drafting to `nature-data` and statistical
completeness to `nature-statistics`.

### Reporting and protocols

- Complete the appropriate Nature Portfolio reporting summary when the study
  type or field requires one, including relevant life, behavioural, social,
  ecological and specified physical-science routes.
- Apply study-type standards such as CONSORT, STROBE, PRISMA or ARRIVE when
  applicable.
- Sharing step-by-step protocols through a persistent protocol platform is
  encouraged; cite the protocol in Methods.
- Apply `../core/research-compliance.md` to human, animal, clinical, image,
  structure, chemistry, taxonomy and provenance-sensitive work.

### AI-assisted writing

- A large language model cannot be an author.
- Human authors remain responsible for the manuscript.
- Disclose substantive LLM use in Methods or another suitable section.
- Pure AI-assisted copy editing does not require a declaration under the
  current Nature Portfolio policy.
- Apply the confidentiality and non-invention rules in `../core/ethics.md`.

## 9. Figures, Extended Data and Supplementary Information

### Initial submission

- Figures must be legible and assessable by reviewers; final production files
  are not required at this stage.
- Use no more than **6** main display items for an Article or Analysis, counting
  figures and tables together.
- Use no more than **10** Extended Data figures and tables combined.
- Cite every Extended Data item in the main text.

### Legend content

Each legend should begin with a brief title and then describe the panels. It
should define:

- visual encodings and panel labels
- centre and error-bar definitions
- the exact `n` and unit of analysis
- statistical tests, sidedness, corrections and exact P-value policy where
  applicable
- scale bars and necessary sample identifiers

Avoid placing a second Methods section in the legend. The current live NMI AIP
page says that a legend should not exceed the word limit of the article type,
but the current Content Types page does **not** assign a separate numeric limit
to each figure legend.

The official NMI brief submission guide revised 9 July 2018 explicitly said to
keep each figure legend below **300 English words**. Because that number is not
repeated on the current live pages, treat it as a **historical advisory ceiling**,
not as a current journal hard limit.

Use this operating guardrail unless the live submission system or handling
editor gives a newer instruction:

- count the title and all panel descriptions as **one whole-figure legend**;
  300 words is not a per-panel allowance
- aim for **150–250 English words** for an ordinary multi-panel legend
- keep the complete legend below **300 English words** as a conservative
  preflight ceiling
- move expendable methodological detail to Methods or Supplementary
  Information, but retain the `n`, uncertainty and statistical information
  needed to interpret the figure

### Supplementary Information

- Keep SI relevant to the conclusions, understanding or replication.
- Number Supplementary figures and tables separately from main and Extended
  Data items.
- Make each Supplementary figure plus legend fit on one PDF page.
- Cite every supplementary item in the manuscript.
- Combine simple SI into one PDF; provide complex tables or datasets as Excel
  or CSV, and software packages as ZIP or TAR where appropriate.

## 10. Accepted-in-principle production contract

Apply these only after the editor requests final files:

### Text and tables

- Submit editable Microsoft Word or TeX/LaTeX source; PDF is not accepted as
  the final manuscript source.
- Place tables at the end of the manuscript; complex tables may be supplied in
  Excel.
- Number references sequentially and include DOI-bearing data and code records
  in the reference list where cited.
- Do not use footnotes.
- Use short bold Methods headings.
- Keep acknowledgements brief, do not thank anonymous reviewers or editors,
  and provide the funding statement separately.
- Link the corresponding authors' ORCID records before final acceptance when
  requested.

### Figure production

- Cite figures in sequential order.
- Supply figure panels at **at least 300 dpi** and no more than **180 mm** wide.
- Use editable **5–7 pt sans-serif** labels and Symbol for Greek characters.
- Use scale bars instead of magnification and define them in the legend.
- Keep labels, scale bars and error bars editable rather than flattened into a
  raster when the production workflow permits.
- Provide source data. Full unprocessed gels or blots are required for relevant
  figures, and statistical source data should be organized by figure, normally
  in an Excel workbook.

### Extended Data and supporting-information inventory

- Keep the combined Extended Data total at no more than **10**.
- Fit each Extended Data figure or table on one PDF page.
- Cite each item in the main text and include its legend in the Inventory of
  Supporting Information.
- Finalize the SI numbering, citations, file formats and inventory before
  upload.

## 11. Requirements not stated as fixed numbers

The current official NMI pages reviewed for this contract do not publish:

- a fixed title character or word limit
- a separate numeric Methods word limit
- a current separate numeric per-figure-legend word limit; the older official
  2018 guide's below-300-word instruction is retained only as an advisory
  preflight ceiling

Do not borrow numbers from flagship *Nature*, *Nature Communications* or a
third-party checklist. Do not present NMI's historical below-300-word figure-
legend instruction as a current hard limit. Write concisely, then follow any
new editor- or submission-system instruction at the active stage.

Open-access article-processing charges and currencies can change. If the author
asks for cost planning, check the live Publishing Options page instead of
treating a stored price as a submission rule.

## 12. Official sources

Current pages verified **2026-08-14**:

- Submission guidelines: <https://www.nature.com/natmachintell/submission-guidelines>
- Content types: <https://www.nature.com/natmachintell/content>
- Preparing your submission: <https://www.nature.com/natmachintell/submission-guidelines/preparing-your-submission>
- Initial formatting: <https://www.nature.com/natmachintell/submission-guidelines/initial-formatting>
- Writing and language: <https://www.nature.com/natmachintell/submission-guidelines/writing-and-language>
- Accepted-in-principle and formatting: <https://www.nature.com/natmachintell/submission-guidelines/aip-and-formatting>
- Double-anonymized peer review: <https://www.nature.com/natmachintell/submission-guidelines/dapr>
- Editorial policies: <https://www.nature.com/natmachintell/editorial-policies>
- Reporting standards, data and code: <https://www.nature.com/natmachintell/editorial-policies/reporting-standards>
- Preprints and conference proceedings: <https://www.nature.com/natmachintell/editorial-policies/preprints-conference-proceedings>
- Presubmission enquiries: <https://www.nature.com/natmachintell/submission-guidelines/presubmission-enquiries>
- Aims and scope: <https://www.nature.com/natmachintell/aims>
- Publishing options: <https://www.nature.com/natmachintell/submission-guidelines/publishing-options>

Historical official source retained for conservative preflight only:

- Brief guide for submission to Nature Machine Intelligence, revised 9 July
  2018: <https://www.nature.com/documents/natmachintell-brief-submission-guide.pdf>
journal-formats/nature.md
# Nature Article submission requirements

Canonical shared rules for an original-research **Article submitted to the
flagship journal Nature**. Do not apply these numbers automatically to Nature
Portfolio subjournals. Their author instructions can differ substantially.

## Contents

1. Authority and stage gate
2. Editorial fit
3. Initial-submission file preflight
4. Article structure and limits
5. Administrative and authorship checks
6. Displays, Extended Data and Supplementary Information
7. Reporting, availability and specialist routing
8. Submission modes and related work
9. Final-submission boundary
10. Official sources

## 1. Authority and stage gate

Before applying a rule, record the stage:

- `initial_submission`: before the first editorial decision; Nature permits
  reasonable formatting flexibility.
- `revision`: after review; follow the handling editor's instructions in
  addition to the public guide.
- `accepted_in_principle`: production-quality text, figures, Extended Data,
  Supplementary Information, forms and declarations are requested.
- `proof`: production corrections only; not a new manuscript rewrite.

Do not reject an otherwise reviewable initial submission merely because it has
not yet been converted to final production house style. Still run the readiness
checks below because they reduce avoidable delays and expose missing policy
items.

## 2. Editorial fit

A Nature Article should:

- report original scientific research whose main results and conclusions are
  not published or simultaneously submitted elsewhere
- be of outstanding scientific importance
- reach a conclusion of interest to an interdisciplinary readership
- present results that are novel and arresting, with immediate and
  far-reaching implications

Additional fit tests:

- a large-dataset paper should provide a comprehensively validated dataset or
  a significant technical advance or scientific insight
- a solely technical paper needs significant impact for a research community
- a therapeutic paper without new mechanism needs a substantial effect on an
  important disease

Treat these as editorial-fit criteria, not formatting promises. Flag weak fit
instead of inflating significance language.

## 3. Initial-submission file preflight

For a standard initial submission:

- submit through Nature's online manuscript system
- prefer manuscript text and figures together in one Microsoft Word or PDF
  file, up to 30 MB
- place each figure legend on the same page as its figure
- include line numbers; number every line in a supplied PDF
- include titles for cited articles and datasets in the reference list
- before acceptance, submit a PDF for a TeX/LaTeX manuscript
- ensure figures have enough resolution for referees, while recognizing that
  production-quality files are not required at this stage

If the submission uses separate files, record why and verify every display is
cited and present.

## 4. Article structure and limits

### Required sequence

Audit the manuscript in this order:

1. title
2. authors
3. affiliations and present addresses
4. bold summary paragraph
5. main text
6. main references
7. tables
8. figure legends
9. Methods, including separate Data Availability and Code Availability
   statements where applicable
10. Methods references
11. acknowledgements
12. funding statement
13. author contributions
14. competing-interests declaration
15. additional information, including Supplementary Information and
    corresponding-author lines
16. Extended Data figure and table legends

### Initial manuscript styling

- write in English using Oxford English Dictionary spelling conventions
- use double spacing
- Microsoft Word without style tags is preferred
- a standard font, preferably 12 pt Times New Roman, is recommended for the
  manuscript text
- use normal text or Symbol font for ordinary mathematical and Greek symbols;
  reserve equation editors for formulae that cannot be set reliably as text

### Title

- no more than two printed lines, equivalent to 75 characters including spaces
- normally avoid numbers, acronyms, abbreviations and punctuation
- avoid technical terms and active verbs
- retain enough detail for indexing while remaining intelligible outside the
  immediate field

### Summary paragraph

- fully referenced and ideally no more than about 200 words
- written for readers outside the discipline
- avoid numbers, abbreviations, acronyms and measurements unless essential
- use the sequence: broad field, background/rationale, main conclusion
  introduced by `Here we show` or an equivalent, then general context and how
  the work moves the field forward

### Main text and display budget

- typical six-page Article: about 2,500 words and four modest display items
- typical eight-page Article: about 4,300 words and five or six modest display
  items
- a modest display item plus legend occupies about one-quarter page; a large
  composite can require a corresponding reduction in text
- up to about 50 main-text references within the page budget
- subheadings may contain up to 40 characters including spaces
- the title, author list, acknowledgements and references do not count toward
  the main-text word count

### Methods

- include every element needed to interpret and replicate the results
- write concisely; the section typically does not exceed 3,000 words but may be
  longer when necessary
- use short bold method headings and consider dedicated statistics, reagents
  and animal-model subsections
- do not place figures or tables in Methods; route essential displays to
  Extended Data or, exceptionally, Supplementary Information
- continue Methods-reference numbering after the main-text references
- cite deposited step-by-step protocols and mention them in Methods

### References, tables and end notes

- number references sequentially in order of first appearance across text,
  tables, legends, Methods and Extended Data
- use superscript citations in text unless confusion with another superscript
  is likely
- list only one publication per reference number
- remove linked fields produced by EndNote or similar software
- normally include only published or accepted work and recognized preprints;
  describe work in preparation in the text rather than the reference list
- include titles for cited articles and datasets
- list all authors unless there are more than five; then give the first author
  followed by `et al.`
- give each table a short title sentence, with details in table footnotes
- keep acknowledgements brief; do not thank anonymous referees or editors and
  avoid effusive praise
- declare funding separately only when the work is within scope of, and arose
  directly from, the named grant
- include an individual author-contribution statement and a competing-interests
  statement
- identify equal contributors directly below the address list when there are up
  to three; describe larger equal-contribution groups in the author-
  contributions statement
- place present addresses immediately below the author list

## 5. Administrative and authorship checks

### Corresponding author

Before submission, confirm that the corresponding author:

- has included all authors in the author list
- has confirmed that every author agrees with the list order and submission
- is prepared to manage all journal and coauthor communication
- is identified with an asterisk in the manuscript
- is named for correspondence and material requests

### Cover letter

For flagship Nature, the initial cover letter is **optional**. If supplied:

- explain the importance of the work and its fit for Nature briefly
- do not repeat the abstract or introduction
- use it for confidential information that should not go to referees, including
  relevant conflicts and related work in press or under consideration
- do not treat a missing optional cover letter as a submission blocker

### AI and LLM use

- an LLM or other AI system cannot be an author
- human authors retain responsibility for originality, accuracy and integrity
- document LLM use in Methods or, if Methods is unavailable, a suitable
  alternative section
- apply the current Nature Portfolio risk framework and disclosure rules in
  `../core/ethics.md`

## 6. Displays, Extended Data and Supplementary Information

### Figures and legends at initial submission

- embed figures with the manuscript when practical
- high-resolution production files are not required initially, but data must be
  assessable by referees
- keep each legend below 250 words
- begin with a brief title sentence, then describe what is depicted rather than
  restating results or methods
- make the figure and legend understandable in isolation where possible

Use the Nature-specific figure reference in `nature-figure` for final dimensions,
editable formats, accessibility, image integrity and the distinction between
main-figure and Extended Data uploads.

### Extended Data

- place integral supporting data in no more than ten multi-panel Extended Data
  figures or tables
- consider a simple schematic when the main conclusion involves a complex
  process unfamiliar to nonspecialists
- at initial submission, Extended Data may appear as regular display items or
  within Supplementary Information
- accepted papers require formal Extended Data formatting

### Supplementary Information

Use Supplementary Information only for peer-reviewed material essential to the
paper's conclusion that is too large, impractical or specialized for print.
Prefer Extended Data for ordinary figures and small tables.

When SI is present, audit:

- the categories Supplementary Methods, Tables, Discussion, Equations, Notes,
  Data, Video and Audio
- numbering separate from main-text and Extended Data displays
- a `SIGuide.doc` containing each file title and a summary of no more than
  50 words; video/audio titles and legends may be up to 100 words
- no more than ten files where possible
- up to 30 MB per sound/video or combined PDF and no more than 150 MB total
- every SI item is cited in the manuscript and every file uses an accepted
  format

Current accepted SI formats include PDF, Word, plain text, RTF, WordPerfect,
PostScript/EPS, HTML, Excel, QuickTime, WAV, MPEG/MP4/MP3 and supported systems-
biology markup formats such as SBML/XML/OWL. Keep SI images at or below
640 × 480 pixels. If a required item cannot meet the format or size contract,
contact the handling editor rather than silently converting or omitting it.

## 7. Reporting, availability and specialist routing

- include a Data Availability statement and, for central custom code or
  algorithms, a separate Code Availability statement
- make supporting data and central code available to editors and referees when
  requested
- route exact repository, accession, restriction and materials checks to
  `nature-data`
- route Nature's exact statistical checklist to `nature-statistics`
- require a completed reporting summary for life sciences, behavioural and
  social sciences, and ecology, evolution and environmental sciences
- check for field-specific physical-science reporting summaries, including
  solar cells and claims of lasing
- open `../core/research-compliance.md` for human, animal, clinical, image,
  structure, chemistry, taxonomy, geological, archaeological or
  palaeontological research

## 8. Submission modes and related work

- disclose related manuscripts with overlapping authorship that are under
  consideration, under appeal or in press
- include copies of those manuscripts as clearly marked separate files
- preprints are permitted: the original submitted version may be posted at any
  time; the accepted version may be posted six months after publication; the
  copyedited published Nature version may not be posted to a preprint server or
  another website
- double-anonymized review is optional; authors must remove identifying
  information and are responsible for successful anonymization
- reviewer suggestions should be independent and include contact details;
  Nature normally permits requests to exclude one or two competing groups
- a presubmission enquiry, when used, needs a broad-readership cover paragraph,
  a fully referenced summary paragraph and a reference list

## 9. Final-submission boundary

Do not apply accepted-in-principle production requirements as initial-submission
blockers. After an editor requests final files, separately audit:

- final accepted text and production-quality main and Extended Data files
- text/figure file separation and TeX/LaTeX conversion requirements
- final Supplementary Information and `SIGuide.doc`
- requested forms, declarations and licence workflow
- production figure specifications and unprocessed life-science gel/blot images

## 10. Official sources

Verified 2026-08-08:

- Initial submission: <https://www.nature.com/nature/for-authors/initial-submission>
- Formatting guide: <https://www.nature.com/nature/for-authors/formatting-guide>
- Editorial criteria and processes: <https://www.nature.com/nature/for-authors/editorial-criteria-and-processes>
- Supplementary Information: <https://www.nature.com/nature/for-authors/supp-info>
- Forms and declarations: <https://www.nature.com/nature/for-authors/forms-and-declarations>
- Final submission: <https://www.nature.com/nature/for-authors/final-submission>
- Nature Portfolio reporting standards: <https://www.nature.com/nature-portfolio/editorial-policies/reporting-standards>
- Nature Portfolio AI policy: <https://www.nature.com/nature-portfolio/editorial-policies/ai>
manifest.yaml
name: nature-shared
version: 1.6.0
description: >
  Declarative manifest for shared Nature reference modules. This package is not
  a standalone workflow; installed Nature skills use it to load exact shared
  core or journal-format files on demand.

# Design note: never preload the whole shared package. Requesting skills should
# load only the specific file listed below and then return to their own workflow,
# output format, and QA rules.

always_load: []

core:
  on_demand:
    - condition: shared ethics, safety, authorship, disclosure, or non-invention guardrails are needed
      path: core/ethics.md
    - condition: human or animal ethics, clinical research, reporting summaries, image integrity, structures, chemistry, taxonomy, geological, archaeological, or palaeontological compliance is involved
      path: core/research-compliance.md
    - condition: classifying paper type, article genre, or manuscript family before applying a writing/reader workflow
      path: core/paper-type-taxonomy.md
    - condition: shared reader workflow is explicitly requested by another Nature skill
      path: core/reader-workflow.md
    - condition: maintaining terminology consistency across paper reading, polishing, writing, or slide generation
      path: core/terminology-ledger.md
    - condition: auditing an existing or multi-round-revised manuscript for accumulated drift — terminology/unit/number variants, headline counts that do not reconcile with the Methods, claims contradicted by the paper's own tables, over- or under-claiming, tense parallelism, and prose that restates displays
      path: core/consistency-sweep.md
    - condition: drafting, restructuring, compressing, or reviewer-revising scientific main text — classify results as core/support/qualification/robustness/heterogeneity/provenance/alternative inference/edge case; allocate evidence across main text, captions, and SI; run paragraph-necessity, deletion, statistics-location, and claim-repetition checks
      path: core/main-text-discipline.md
    - condition: drafting, restructuring, or polishing Results or Discussion for flagship Nature, Nature Communications, Nature Machine Intelligence, or another Nature Portfolio title; auditing claim escalation, evidence-bound local interpretation, diagnostic perturbation, necessary recap versus redundant re-demonstration, or cross-Results synthesis
      path: core/nature-results-discussion.md
    - condition: drafting, restructuring, or polishing any scientific Discussion; sequencing anchor, positioning, interpretation, contribution, limitations, and future work; calibrating modal verbs or hedging to evidence strength; or auditing whether Discussion repeats Results
      path: core/discussion-argument-language.md
    - condition: drafting, restructuring, or polishing an Introduction for flagship Nature, Nature Communications, Nature Machine Intelligence, or another Nature Portfolio title; building a fast problem funnel, exact knowledge gap, literature tension, question-first novelty, compact study roadmap, or Introduction–Results alignment audit
      path: core/nature-introduction.md
    - condition: drafting, restructuring, or polishing an abstract for flagship Nature, Nature Communications, Nature Machine Intelligence, or another Nature Portfolio title; compressing the manuscript into a discovery-centred evidence chain; selecting one main claim, one or two decisive supports, optional core numbers, and a bounded field-level payoff
      path: core/nature-abstract.md

journal_formats:
  on_demand:
    - condition: formatting, initial-submission readiness, or stage-aware checking for a flagship Nature Article
      path: journal-formats/nature.md
    - condition: formatting or checking output for Nature Communications conventions
      path: journal-formats/nat-comms.md
    - condition: formatting, article-type selection, initial-submission readiness, or stage-aware checking for Nature Machine Intelligence
      path: journal-formats/nature-machine-intelligence.md

quality_tools:
  consistency_script: scripts/check_consistency.py
  use_when: auditing an existing full manuscript or a manuscript revised over multiple rounds
  purpose: warn about terminology variants, equivalent lengths expressed in different units, and equal numeric values reported at different precision
  script_resolution: resolve relative to the nature-shared package directory, never the user working directory
README_EN.md
# `nature-shared/` - shared support package for nature-* skills

This is an installable support package, not a standalone user workflow. It keeps the shared definitions and references used by multiple `nature-*` skills in one place so those sources stay consistent and update together. A complete `npx skills` installation discovers and manages it alongside the user-facing skills.

Sibling skills reference these files through relative paths such as:

```yaml
always_load:
  - ../nature-shared/core/reader-workflow.md
```

## Contents

| File | Consumers |
|---|---|
| `core/reader-workflow.md` | `nature-polishing`, `nature-writing` |
| `core/paper-type-taxonomy.md` | `nature-polishing`, `nature-writing` |
| `core/ethics.md` | `nature-polishing`, `nature-writing` |
| `core/research-compliance.md` | `nature-writing` and skills needing Nature Portfolio specialist compliance checks |
| `core/terminology-ledger.md` | `nature-polishing`, `nature-writing`, `nature-reader`, `nature-paper2ppt` |
| `core/consistency-sweep.md` | `nature-polishing`, `nature-reviewer`, `nature-response`, `nature-statistics` |
| `core/main-text-discipline.md` | `nature-writing`, `nature-polishing`, `nature-response` |
| `core/nature-results-discussion.md` | Nature / Nature Portfolio Results claim escalation and Discussion synthesis for `nature-writing` and `nature-polishing`, distilled from published NMI and flagship Nature papers (not official policy) |
| `core/discussion-argument-language.md` | Journal-general Discussion functions, reverse-funnel control, evidence-calibrated modality, claim boundaries, and future-work auditing for `nature-writing` and `nature-polishing` (writing guidance, not journal policy) |
| `core/nature-introduction.md` | Nature / Nature Portfolio problem funnels, exact gaps, and Introduction–Results alignment for `nature-writing` and `nature-polishing`, initially distilled from NMI papers (not official policy) |
| `core/nature-abstract.md` | Nature / Nature Portfolio discovery-centred abstract evidence chains, claim hierarchy, and numeric selection for `nature-writing` and `nature-polishing`, initially distilled from NMI papers (not official policy) |
| `journal-formats/nat-comms.md` | `nature-polishing`, `nature-writing` |
| `journal-formats/nature.md` | `nature-writing` and skills needing exact flagship `Nature Article` submission rules |
| `journal-formats/nature-machine-intelligence.md` | Writing, polishing, figure, data, and statistics workflows for NMI submissions |

`scripts/check_consistency.py` provides a mechanical first pass for terminology variants, equal values reported at different precision, and equivalent lengths expressed in different units. Its output is a set of warnings for contextual review, not automatic edits.

## When to Put Files Here

Only place a file here when two or more skills need to reuse the same content. If the content serves only one skill, keep it in that skill's own `static/` or `references/` directory.

## When to Keep Content Local

The shared layer should hold definitions and references only, such as paper-type classifications, reader workflows, ethics rules, or terminology ledgers. Skill-specific diagnosis, drafting, modification, and output logic should remain in each skill's own files.

## Relationship With Other Skills

`nature-shared/` is not a standalone workflow. It is a shared dependency package that other `nature-*` skills read on demand.
README.md
# `nature-shared/` - nature-* 技能的共享支持包

这个目录是一个可安装但不应单独触发的支持包。它保存多个 `nature-*` 技能共同依赖的公共定义与参考材料,避免在不同技能目录中重复维护同一套内容。安装整套技能时,它会与其他技能一起被发现和更新。

同级技能会通过 `manifest.yaml` 中的相对路径引用这里的文件,例如:

```yaml
always_load:
  - ../nature-shared/core/reader-workflow.md
```

## 当前内容

| 文件 | 使用方 |
|---|---|
| `core/reader-workflow.md` | `nature-polishing`, `nature-writing` |
| `core/paper-type-taxonomy.md` | `nature-polishing`, `nature-writing` |
| `core/ethics.md` | `nature-polishing`, `nature-writing` |
| `core/research-compliance.md` | `nature-writing` 及需要 Nature Portfolio 专项合规检查的技能 |
| `core/terminology-ledger.md` | `nature-polishing`, `nature-writing`, `nature-reader`, `nature-paper2ppt` |
| `core/consistency-sweep.md` | `nature-polishing`, `nature-reviewer`, `nature-response`, `nature-statistics` |
| `core/main-text-discipline.md` | `nature-writing`, `nature-polishing`, `nature-response` |
| `core/nature-results-discussion.md` | `nature-writing`, `nature-polishing` 通用的 Nature / Nature Portfolio Results claim 递进与 Discussion 综合(来自 NMI 与旗舰 Nature 已发表论文语料归纳,非官方规则) |
| `core/discussion-argument-language.md` | `nature-writing`, `nature-polishing` 通用的 Discussion 功能链、反向漏斗、证据强度与情态动词、局限和未来工作审计(写作指导,非期刊官方规则) |
| `core/nature-introduction.md` | `nature-writing`, `nature-polishing` 通用的 Nature / Nature Portfolio 问题漏斗、精确 gap 与 Introduction–Results 对齐(最初来自 NMI 语料归纳,非官方规则) |
| `core/nature-abstract.md` | `nature-writing`, `nature-polishing` 通用的 Nature / Nature Portfolio 发现中心型摘要证据链、claim 层级与数字取舍(最初来自 NMI 语料归纳,非官方规则) |
| `journal-formats/nat-comms.md` | `nature-polishing`, `nature-writing` |
| `journal-formats/nature.md` | `nature-writing` 及需要旗舰 `Nature Article` 精确投稿规则的技能 |
| `journal-formats/nature-machine-intelligence.md` | NMI 投稿的写作、润色、图表、数据与统计工作流 |

`scripts/check_consistency.py` 为一致性扫描提供机械初筛,可报告术语变体、同值不同精度和等值长度单位混用。输出是待人工核对的风险提示,不会自动改稿。

## 什么时候把文件放到这里

只有当**两个或更多技能**需要复用同一份内容时,才把文件放入 `nature-shared/`。如果内容只服务于一个技能,应保留在该技能自己的 `static/` 或 `references/` 目录中。

## 什么时候保持技能内局部内容

共享层只放**定义和参考材料**,例如论文类型分类、读者工作流、伦理规则或术语表。具体技能如何诊断、起草、修改或输出结果,仍应保留在各自的 `static/fragments/` 中。多个技能可以复用同一套论文类型分类,但在其上执行不同的任务逻辑。

## 与其它技能的关系

`nature-shared/` 不是独立工作流,而是被其他 `nature-*` 技能按需读取的公共依赖包。
scripts/check_consistency.py
#!/usr/bin/env python3
"""Find mechanically detectable consistency risks in manuscript text files."""

from __future__ import annotations

import argparse
import json
import re
from dataclasses import asdict, dataclass
from decimal import Decimal, InvalidOperation
from pathlib import Path
from typing import Iterable, Sequence


DEFAULT_TERM_GROUPS = {
    "self-reference": ("this study", "this work", "this paper", "this article"),
    "standard-deviation": ("standard deviation", "SD", "Std"),
}

LENGTH_FACTORS_METRES = {
    "um": Decimal("0.000001"),
    "mm": Decimal("0.001"),
    "cm": Decimal("0.01"),
    "m": Decimal("1"),
}


@dataclass(frozen=True)
class Finding:
    code: str
    message: str
    evidence: tuple[str, ...]


@dataclass(frozen=True)
class Occurrence:
    path: Path
    line: int
    value: str

    def label(self) -> str:
        return f"{self.path}:{self.line}: {self.value}"


def read_sources(paths: Sequence[Path]) -> dict[Path, str]:
    return {
        path: path.read_text(encoding="utf-8", errors="replace")
        for path in paths
    }


def visible_lines(text: str) -> Iterable[tuple[int, str]]:
    """Yield lines after removing Markdown fences and unescaped LaTeX comments."""
    in_fence = False
    for line_number, raw_line in enumerate(text.splitlines(), 1):
        if re.match(r"^\s*```", raw_line):
            in_fence = not in_fence
            continue
        if in_fence:
            continue
        line = re.sub(r"(?<!\\)%.*$", "", raw_line)
        yield line_number, line


def phrase_pattern(phrase: str) -> re.Pattern[str]:
    escaped = re.escape(phrase).replace(r"\ ", r"\s+")
    prefix = r"(?<![\w-])" if phrase[0].isalnum() else ""
    suffix = r"(?![\w-])" if phrase[-1].isalnum() else ""
    return re.compile(prefix + escaped + suffix, re.IGNORECASE)


def find_phrase_occurrences(
    sources: dict[Path, str], phrase: str
) -> list[Occurrence]:
    pattern = phrase_pattern(phrase)
    occurrences: list[Occurrence] = []
    for path, text in sources.items():
        for line_number, line in visible_lines(text):
            for match in pattern.finditer(line):
                occurrences.append(Occurrence(path, line_number, match.group(0)))
    return occurrences


def check_term_groups(
    sources: dict[Path, str], groups: dict[str, tuple[str, ...]]
) -> list[Finding]:
    findings: list[Finding] = []
    for group_name, variants in groups.items():
        present: list[tuple[str, list[Occurrence]]] = []
        for variant in variants:
            occurrences = find_phrase_occurrences(sources, variant)
            if occurrences:
                present.append((variant, occurrences))
        if len(present) < 2:
            continue
        counts = ", ".join(f"{variant}={len(items)}" for variant, items in present)
        evidence = tuple(
            occurrence.label()
            for _, items in present
            for occurrence in items[:3]
        )
        findings.append(
            Finding(
                code="TERM_VARIANTS_PRESENT",
                message=f"term group '{group_name}' uses multiple variants: {counts}",
                evidence=evidence,
            )
        )
    return findings


NUMBER_PATTERN = re.compile(r"(?<![\w.])([+-]?(?:\d+\.\d+|\d+))(?![\w.])")


def decimal_places(token: str) -> int:
    unsigned = token.lstrip("+-")
    return len(unsigned.partition(".")[2]) if "." in unsigned else 0


def check_numeric_precision(sources: dict[Path, str]) -> list[Finding]:
    values: dict[Decimal, dict[int, list[Occurrence]]] = {}
    for path, text in sources.items():
        for line_number, line in visible_lines(text):
            for match in NUMBER_PATTERN.finditer(line):
                token = match.group(1)
                try:
                    value = Decimal(token)
                except InvalidOperation:
                    continue
                places = decimal_places(token)
                values.setdefault(value, {}).setdefault(places, []).append(
                    Occurrence(path, line_number, token)
                )

    findings: list[Finding] = []
    for value, precision_groups in values.items():
        if len(precision_groups) < 2:
            continue
        precision_summary = ", ".join(
            f"{places} decimal place(s)={len(items)}"
            for places, items in sorted(precision_groups.items())
        )
        evidence = tuple(
            occurrence.label()
            for _, items in sorted(precision_groups.items())
            for occurrence in items[:3]
        )
        findings.append(
            Finding(
                code="NUMERIC_PRECISION_VARIANT",
                message=f"numeric value {value} appears at multiple precisions: {precision_summary}",
                evidence=evidence,
            )
        )
    return findings


LENGTH_PATTERN = re.compile(
    r"(?<![\w.])([+-]?(?:\d+\.\d+|\d+))\s*(?:\\,\s*)?"
    r"(?:\\(?:mathrm|text)\s*\{\s*)?(μm|µm|um|mm|cm|m)(?:\s*\})?"
    r"(?![A-Za-z])",
    re.IGNORECASE,
)


def normalized_unit(unit: str) -> str:
    unit = unit.lower()
    return "um" if unit in {"μm", "µm"} else unit


def check_equivalent_length_units(sources: dict[Path, str]) -> list[Finding]:
    values: dict[Decimal, dict[str, list[Occurrence]]] = {}
    for path, text in sources.items():
        for line_number, line in visible_lines(text):
            for match in LENGTH_PATTERN.finditer(line):
                number, raw_unit = match.groups()
                unit = normalized_unit(raw_unit)
                metres = Decimal(number) * LENGTH_FACTORS_METRES[unit]
                values.setdefault(metres, {}).setdefault(unit, []).append(
                    Occurrence(path, line_number, match.group(0))
                )

    findings: list[Finding] = []
    for metres, unit_groups in values.items():
        if len(unit_groups) < 2:
            continue
        counts = ", ".join(
            f"{unit}={len(items)}" for unit, items in sorted(unit_groups.items())
        )
        evidence = tuple(
            occurrence.label()
            for _, items in sorted(unit_groups.items())
            for occurrence in items[:3]
        )
        findings.append(
            Finding(
                code="EQUIVALENT_LENGTH_UNIT_VARIANT",
                message=f"equivalent length {metres} m appears in multiple units: {counts}",
                evidence=evidence,
            )
        )
    return findings


def parse_term_group(value: str) -> tuple[str, tuple[str, ...]]:
    name, separator, raw_variants = value.partition("=")
    variants = tuple(item.strip() for item in raw_variants.split("|") if item.strip())
    if not separator or not name.strip() or len(variants) < 2:
        raise argparse.ArgumentTypeError(
            "term groups must use NAME=variant one|variant two with at least two variants"
        )
    return name.strip(), variants


def run_checks(
    paths: Sequence[Path],
    term_groups: dict[str, tuple[str, ...]] | None = None,
) -> list[Finding]:
    sources = read_sources(paths)
    findings = check_term_groups(sources, term_groups or {})
    findings.extend(check_numeric_precision(sources))
    findings.extend(check_equivalent_length_units(sources))
    return findings


def build_parser() -> argparse.ArgumentParser:
    parser = argparse.ArgumentParser(
        description="Find terminology, numeric-precision, and equivalent-unit variants."
    )
    parser.add_argument("paths", nargs="+", type=Path)
    parser.add_argument(
        "--term-group",
        action="append",
        default=[],
        type=parse_term_group,
        metavar="NAME=TERM|VARIANT",
        help="Add a manuscript-specific terminology group. Repeat as needed.",
    )
    parser.add_argument(
        "--no-default-term-groups",
        action="store_true",
        help="Disable the built-in self-reference and standard-deviation groups.",
    )
    parser.add_argument("--json", action="store_true", dest="as_json")
    parser.add_argument(
        "--fail-on-findings",
        action="store_true",
        help="Return exit status 1 when warnings are found.",
    )
    return parser


def main(argv: list[str] | None = None) -> int:
    args = build_parser().parse_args(argv)
    groups = {} if args.no_default_term_groups else dict(DEFAULT_TERM_GROUPS)
    groups.update(dict(args.term_group))
    findings = run_checks(args.paths, groups)

    if args.as_json:
        print(json.dumps([asdict(item) for item in findings], ensure_ascii=False, indent=2))
    elif findings:
        for finding in findings:
            print(f"{finding.code}\t{finding.message}")
            for item in finding.evidence:
                print(f"  {item}")
    else:
        print("No mechanical consistency warnings found.")

    return 1 if findings and args.fail_on_findings else 0


if __name__ == "__main__":
    raise SystemExit(main())
SKILL.md
---
name: nature-shared
description: Internal shared-reference support package for installed Nature Skills, including nature-writing, nature-polishing, nature-response, nature-reader, and nature-paper2ppt. Do not invoke it as a standalone user workflow. Load only the specific core or journal-format file requested by another Nature skill.
---

# Nature Shared References

Use this package only as a dependency of another installed Nature skill.

- Load the exact referenced file; do not preload the whole package.
- Treat `core/` and `journal-formats/` as shared definitions, not standalone workflows.
- Use `journal-formats/nature.md` only for the flagship journal Nature and
  `core/research-compliance.md` only when its specialist applicability gate is
  triggered.
- Use `journal-formats/nature-machine-intelligence.md` for exact NMI article
  types, limits, initial-submission files, data/code duties and production
  requirements; do not import flagship Nature or Nature Communications limits.
- Use `core/main-text-discipline.md` for result placement, main-text compression,
  revision accretion, caption/SI allocation, and claim-repetition checks.
- Use `core/nature-results-discussion.md` for corpus-derived Nature-style
  Results claim escalation, evidence-bound local interpretation, and Discussion
  synthesis; do not present it as official journal policy.
- Use `core/discussion-argument-language.md` for journal-general Discussion
  function sequencing, reverse-funnel control, evidence-calibrated modality,
  claim-specific limitations, and uncertainty-driven future work.
- Use `core/nature-introduction.md` for corpus-derived Nature-style problem
  funnels, exact knowledge gaps, literature tension, question-first novelty,
  and Introduction–Results alignment; do not present it as official journal
  policy.
- Use `core/nature-abstract.md` for corpus-derived Nature-style
  discovery-centred abstract compression, claim hierarchy, selective numeric
  support, and field-level payoff; do not present it as official journal policy.
- Return to the requesting skill for task logic, output format, and final QA.
tests/test_check_consistency.py
from __future__ import annotations

import importlib.util
import sys
import tempfile
import unittest
from pathlib import Path


SCRIPT = Path(__file__).parents[1] / "scripts" / "check_consistency.py"
SPEC = importlib.util.spec_from_file_location("check_consistency", SCRIPT)
assert SPEC and SPEC.loader
CHECKER = importlib.util.module_from_spec(SPEC)
sys.modules[SPEC.name] = CHECKER
SPEC.loader.exec_module(CHECKER)


class ConsistencyCheckerTests(unittest.TestCase):
    def run_text(
        self,
        text: str,
        groups: dict[str, tuple[str, ...]] | None = None,
    ) -> list[object]:
        with tempfile.TemporaryDirectory() as directory:
            path = Path(directory) / "manuscript.tex"
            path.write_text(text, encoding="utf-8")
            return CHECKER.run_checks([path], groups)

    def test_clean_text_has_no_findings(self) -> None:
        findings = self.run_text(
            "This study used a 35 mm specimen and obtained values of 8.26 and 9.14.",
            CHECKER.DEFAULT_TERM_GROUPS,
        )
        self.assertEqual([], findings)

    def test_term_variants_are_reported(self) -> None:
        findings = self.run_text(
            "This study defines the task. Later, this work reports the results.",
            CHECKER.DEFAULT_TERM_GROUPS,
        )
        self.assertIn("TERM_VARIANTS_PRESENT", {item.code for item in findings})

    def test_numeric_precision_variants_are_reported(self) -> None:
        findings = self.run_text("The score was 8.26 in Table 1 and 8.260 in the abstract.")
        self.assertIn("NUMERIC_PRECISION_VARIANT", {item.code for item in findings})

    def test_equivalent_length_units_are_reported(self) -> None:
        findings = self.run_text("The cover was 35 mm in Methods and 3.5 cm in the caption.")
        self.assertIn(
            "EQUIVALENT_LENGTH_UNIT_VARIANT",
            {item.code for item in findings},
        )

    def test_custom_term_group_is_supported(self) -> None:
        findings = self.run_text(
            "The test specimen was loaded. Each sample was then measured.",
            {"test-object": ("specimen", "sample")},
        )
        self.assertIn("TERM_VARIANTS_PRESENT", {item.code for item in findings})


if __name__ == "__main__":
    unittest.main()
nature-shared · 热门 Agent Skills | Mengbi