Evidence-led scientific writing
Make the scientific argument clear before polishing its language. Keep the user's evidence, uncertainty, and voice; do not inflate novelty or make the work sound more complete than it is. A journal-like style is not submission approval.
Establish the brief and actual journal
Identify the journal and current content type, the central claim, its importance to adjacent-field readers, the supporting results/figures, strongest relevant prior work, boundary conditions, and missing facts. Use the supplied materials rather than reconstructing unseen data from an abstract or README.
Check the official guide for that journal and content type. Record the rule, source URL, review date, and whether it is mandatory or advisory. There is no universal Nature Portfolio abstract limit. Do not assume a journal currently accepts Letters because a bundled template has that name. For an unspecified journal, draft without claiming journal-specific compliance.
Read journal calibration and structural modes. Use a few relevant recent papers to understand structure and level of explanation, not to override an explicit submission rule or copy distinctive wording.
Build the argument, then write
Create a brief figure-to-claim map: each main claim, its evidence, alternative explanations, and the figure/method needed to support it. Order Results by the questions answered, not the chronology of experiments. Draft Methods while checking what was actually done, then Discussion, context, abstract, title, and legends. This is a useful default, not a compulsory ritual for a one-paragraph edit.
Retain and use the relevant templates: brief, editorial blueprint, figure–claim matrix, and paragraph map. For deeper structure use editorial architecture.
Give each paragraph a purpose, supporting evidence, and a useful conclusion or transition. Connect familiar information to new findings; put the important point where the reader expects emphasis. Use concrete verbs and explanations that an adjacent-field scientist can follow. Keep necessary technical detail, exact units, replicate definitions, analysis choices, and uncertainty.
Edit without changing the evidence
Replace generic significance claims with the specific implication. Distinguish observation, interpretation, and proposed mechanism. Do not turn association into causation, technical repeats into independent samples, absent data into a null result, or an exploratory analysis into a preregistered test.
Remove formulaic transitions, redundant conclusions, inflated adjectives, and unnecessary noun chains. Vary rhythm naturally, not to hit a score. Passive voice, repeated terms, and technical compounds can be the clearest choices. A shorter sentence is not automatically a better scientific sentence.
Use sentence craft, voice and variation, and section rubric as editorial heuristics, not journal rules. For supplied exemplars, use exemplar anchoring. Keep material limitations explicit without adding defensive filler to every claim.
Check the selected opening, not an invented generic mode
Resolve SKILL_DIR to this skill's installed directory. The local checker now
requires an exact dated profile or a validated custom profile:
python3 "$SKILL_DIR/scripts/nature_preflight.py" --input /absolute/draft.md \
--profile nature-communications-article
The built-in Nature Communications Article profile checks a 200-word maximum;
the Nature Article profile treats the 200-word summary target as advisory. For
a separate plain-text abstract/summary add --opening-only. Otherwise use exactly
one ATX heading matching the profile, such as ## Abstract. The checker refuses
missing/duplicate/nested headings rather than guessing a first paragraph.
It counts whitespace-separated tokens; portal/word-processor conventions can
differ. It checks only opening length, not references, scientific validity,
article-type eligibility, or the rest of the manuscript. Every result says
submission_readiness: NOT_ASSESSED. Exit 0 means within the configured length;
1 means a mandatory length exceeded; 2 means advisory excess, unverified input,
or a tool/usage error. Inspect the JSON status. Old --mode/--format flags are
removed, not mapped to misleading generic defaults.
For other journals create --profile-file using the documented schema in
journal calibration after checking the real
guide. Do not copy a built-in limit into another journal by changing only its name.
Optional prose metrics/fingerprint scripts remain editorial aids. Run their help
from "$SKILL_DIR/scripts/..."; they are not AI detectors or objective quality
scores, and their warnings do not establish publication-policy violations.
Integrity and final deliverable
Never invent results, references, approvals, sample counts, software versions, accessions, or completed analyses. Mark genuinely missing facts and verify source citations against their actual content. Preserve original image/data evidence; do not use generative imagery to fabricate observations. Check the journal's current AI-use, disclosure, and image policy for the actual activity, rather than assuming all copy editing is exempt or all computational plots are prohibited. Human authors review and take responsibility for the manuscript.
Use integrity checks. For reviewer replies,
answer each point, name the actual change and location, and distinguish completed
work from proposals. For a cover letter, explain the advance, evidence, and fit
without overclaiming; templates for both remain in assets/.
Return the revised prose/patch first, with the chosen target and only the important
unresolved facts. For an audit, prioritise concrete structural/scientific problems
before sentence preferences. State which journal checks actually ran and which
remain. Maintainer regression tests:
python3 -m unittest discover -s "$SKILL_DIR/tests" -v.