scientific-writing – Data & Science skill for AI agents
Drafts, revises, and audits scientific manuscripts or reports with explicit evidence provenance, reporting-guideline coverage, authorship accountability, confidentiality controls, and local consistency checks. Use for manuscript sections, references, declarations, tables, figures, or submission preparation when scienti
Install the scientific-writing skill with one command
Pick the tool you use, copy the command and paste it in your terminal. The skill lands in that tool's skills folder and is ready in your next session.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/scientific-writing-90255.tgz | tar xz -C ~/.claude/skills
Call it in Claude Code: /scientific-writing – then describe the task you want done.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/scientific-writing-90255.tgz | tar xz -C ~/.codex/skills
Call it in Codex: $scientific-writing – then describe the task you want done.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/scientific-writing-90255.tgz | tar xz -C ~/.hermes/skills
Call it in Hermes Agent: /scientific-writing – then describe the task you want done.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/scientific-writing-90255.tgz | tar xz -C ~/.deepcode/skills
Call it in DeepSeek: /scientific-writing – then describe the task you want done.
SKILL.md content
Scientific Writing
Purpose
Produce clear scientific prose without inventing evidence or concealing uncertainty.
Keep drafting, evidence verification, and submission approval as separate stages.
The accountable human authors control scientific decisions and final approval. AI is
not an author, and generated fluency is never evidence [SW-S01, SW-S03].
Non-negotiable safety rules
Confidentiality
Do not send unpublished manuscripts, peer-review or editorial material, sensitive or
restricted data, PHI or other personal data, proprietary content, or source documents
to an external service without:
1. explicit authorization from a person or body empowered to grant it; and
2. a documented review of journal, institutional, funder, consent, ethics, contractual,
legal, and data-use policy.
When authorization or policy is unclear, keep processing local and use only the minimum
metadata needed. De-identification requires expert review; removing obvious names is
not sufficient. See references/authorship_ai_confidentiality.md.
No fabrication
Never invent or complete:
- citations, references, DOI, PMID, PMCID, ISBN, URLs, or quotations;
- results, data values, denominators, sample sizes, units, effect estimates,
uncertainty, statistical tests, or significance claims;
- methods, materials, protocol details, software versions, analysis choices, or
deviations;
- registrations, approvals, consent, ethics statements, participant details, or dates;
- authors, author order, CRediT roles, acknowledgments, or permissions;
- funding, sponsor roles, conflicts, data or code availability, or AI disclosures.
Use an explicit missing, unverified, or not-applicable state. Do not substitute plausible
boilerplate.
Evidence binding
Every factual or numeric manuscript claim must map to verified evidence IDs. A human
verifier must open the source, confirm the proposition and locator, verify bibliographic
metadata, and record who verified it and when.
Search snippets, generated summaries, memory, and another work's bibliography may aid
discovery but do not verify a claim. See references/evidence_workflow.md.
Scientific fidelity
- Preserve uncertainty and alternative explanations.
- Distinguish confirmatory, exploratory, descriptive, and post hoc work.
- Keep methods and results consistent.
- Reconcile units, denominators, sample sizes, populations, time points, and labels.
- For binary trial outcomes, report group event counts/denominators plus both absolute and relative effects with uncertainty when the reporting guideline requires them. Distinguish risk difference (percentage points), relative risk, and odds ratio; do not rewrite one as another or infer an absolute effect without the baseline risk. See [CONSORT 2025 explanation](https://www.bmj.com/content/389/bmj-2024-081124).
- Report negative, null, adverse, unexpected, failed, and inconclusive findings when
they belong to the study record.
- State concrete limitations and bound generalizability.
- Do not convert association into causation or non-significance into equivalence.
Intake
Before drafting, obtain or mark unresolved:
- document type, study design, stage, audience, and target venue;
- current author instructions and policy access date;
- protocol, registration, analysis plan, amendments, and reporting guideline;
- manuscript or section scope;
- verified source manifest and claim registry;
- methods, results, tables, figures, and supplements;
- authorship, CRediT, declarations, and approval records;
- confidentiality classification and authorized processing boundary;
- data, code, materials, and repository constraints.
Do not ask for restricted source material if metadata or a local user-run audit is
sufficient.
Workflow
1. Establish the local workspace
For a new draft, optionally generate fail-closed Markdown, JSON, and CSV scaffolds:
python3 scripts/scaffold_manuscript.py \
--output-dir ./draft-workspace \
--document-id local-draft \
--study-design randomized_trial \
--guideline consort-2025The generator never overwrites files. Its output is explicitly not submission-ready and
contains placeholders that the linter rejects.
2. Select reporting guidance
Choose by actual design and article type, then open the current official statement,
checklist, explanation document, extensions, and target-journal instructions.
python3 scripts/select_reporting_guidelines.py select \
--study-design randomized_trialCurrent major routes rechecked on 2026-10-01 include CONSORT 2025, SPIRIT 2025,
PRISMA 2020, STROBE, STARD and STARD-AI, TRIPOD+AI, CARE, ARRIVE 2.0, SQUIRE 2.0,
and CHEERS 2022 [SW-S06–SW-S18].
The selector is non-scoring. It does not certify quality, compliance, completeness, or
acceptance. See references/reporting_guidelines.md.
3. Build the evidence record
Assign:
EIDs to sources insource_manifest.json;CIDs to claims inclaims.csv;N,M,O, andRIDs to numeric facts, methods, outcomes, and results in
consistency_manifest.json.
Store a hash of claim text in CSV rather than raw claim text. Use one claim per
physical Markdown line; the hash binds the entire line after removing claim/evidence
markers and collapsing whitespace. During drafting, append:
[claim:C001] [evidence:E001,E002]Do not mark a source verified until an accountable human has opened it and confirmed
the exact support. After changing wording, re-verify the claim before updating its
hash; see the exact normalization in references/evidence_workflow.md.
4. Create an evidence outline
Outline only from recorded evidence:
- objective or question;
- section purpose;
- claim IDs and evidence IDs;
- methods and result IDs;
- analysis intent and uncertainty;
- unresolved conflicts or missing information;
- applicable reporting topics.
Keep unsupported content in an unresolved-issues list, not manuscript prose.
5. Draft without adding facts
Transform the verified outline into venue-appropriate prose. Preserve all IDs during
drafting.
- Match title and abstract to the completed main text.
- Describe methods as performed.
- Present results in the declared order and analysis population.
- Separate result from interpretation unless the venue combines them.
- Compare with prior evidence only after verifying it.
- Keep conclusions within the observed design, population, and uncertainty.
Use IMRAD only when appropriate. Structured abstracts, lists, combined sections, and
alternative structures depend on study design and venue. See
references/imrad_structure.md and references/writing_principles.md.
6. Reconcile methods and results
Record repeated numeric facts and method-result mappings, then run:
python3 scripts/check_consistency.py consistency_manifest.jsonResolve every mismatch manually. A changed value may be a legitimate analysis-set
difference, but that difference must be named rather than silently normalized.
7. Verify citations and claims
python3 scripts/validate_manifest.py source_manifest.json \
--kind source --require-verified
python3 scripts/audit_claims.py manuscript.md claims.csv source_manifest.json
python3 scripts/check_references.py source_manifest.jsonThe reference checker validates syntax and duplicate identifiers without network
resolution. A human must still compare every identifier and quotation with the opened
source. Follow NLM *Citing Medicine* or the current official style required by the
venue [SW-S20, SW-S21].
8. Validate authorship and disclosure
Use journal criteria for authorship. Record the standardized CRediT roles as
contribution metadata; CRediT does not itself define authorship [SW-S19].
If AI was used, humans must verify all affected content and disclose the tool and
purpose according to current journal and publisher policy. ICMJE's January 2026
Recommendations require transparency and retain human accountability [SW-S01, SW-S02].
python3 scripts/validate_authorship.py authorship.jsonThe local validator implements ICMJE-style authorship gates and a local guarantor
record; it does not implement every venue policy. Do not generate a disclosure from
assumptions. See
references/authorship_ai_confidentiality.md.
9. Review declarations and open-science statements
Verify each statement independently:
- ethics and consent;
- registration and protocol;
- funding and sponsor role;
- conflicts and relationships;
- author contributions and acknowledgments;
- data, code, materials, and protocol availability;
- AI use.
Be as open as rights and responsibilities permit, but do not expose confidential,
personal, proprietary, licensed, or protected information. Record actual access
conditions. See references/research_integrity_open_science.md.
10. Use figures and tables only when warranted
Figures and tables are optional and provenance-bound. This skill does not generate
… (full content is in the download package)
Related skills
- dbt-transformation-patterns – Production-ready patterns for dbt (data build tool) including model organization…
- serving-llms-vllm – vLLM: high-throughput LLM serving, OpenAI API, quantization.
- scikit-bio – Biological data toolkit. Sequence analysis, alignments, phylogenetic trees, diversity…
- spark-environment-setup – Set up a working ML training/inference environment on NVIDIA DGX Spark (GB10, aarch64…
- scikit-learn – Supports machine learning in Python with scikit-learn. Applies when working with…
- deep-research – Run autonomous research tasks that plan, search, read, and synthesize information into…
- deep-research-framework – Framework for deep research reports: define the question and tier sources first…
- dependency-analysis – Analyze internal and package dependencies using Ontoly graph traversal. Use when asked…