Skip to content
Research
Skill

/write-paper

Use when drafting a medical research manuscript or any IMRAD section. Runs an 8-phase pipeline from outline to submission-ready draft for original articles, AI validation studies, case reports, meta-analyses, technical notes and more. Checking a draft is /self-review.

BOOST
From plugin
medsci-skills
34462 skills
Install
$ npx -y skills add Aperivue/medsci-skills --skill write-paper --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/write-paper

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when drafting a medical research manuscript or any IMRAD section. Runs an 8-phase pipeline from outline to submission-ready draft for original articles, AI validation studies, case reports, meta-analyses, technical notes and more. Checking a draft is /self-review.

SKILL.md

write-paper.SKILL.md
name: write-paper
description: Use when drafting a medical research manuscript or any IMRAD section. Runs an 8-phase pipeline from outline to submission-ready draft for original articles, AI validation studies, case reports, meta-analyses, technical notes and more. Checking a draft is /self-review.
metadata:
  triggers: "write paper, manuscript, draft paper, start writing, write methods, write results, write discussion, write introduction"

Write-Paper Skill

8-Phase Pipeline

Phase 0: Init

Gather essential information from the user before any writing begins.

**Required inputs:** 1. **Title** (working title is fine) 2. **Paper type**: original article, AI validation, case report, case series, meta-analysis, technical note, animal study, NHIS cohort, cross-national 3. **Target journal**: load profile from `${CLAUDE_SKILL_DIR}/references/journal_profiles/` 4. **Research question / hypothesis** 5. **Available data**: what datasets, tables, analyses already exist

**Optional flags:**

  • `--no-llm-disclosure`: skip the LLM writing-assistance disclosure. Default is ON.
  • `--autonomous`: run Phases 0–7 without user gates (outline approval, T&F plan, discussion planning, section reviews all skipped). Default OFF.

**Actions:** 1. Load the journal profile. If none exists, ask for word limits, abstract format, citation style, figure/table limits, and special requirements. 2. Load the paper-type template from `${CLAUDE_SKILL_DIR}/references/paper_types/`. 3. Select the reporting guideline: diagnostic accuracy → STARD / STARD-AI · prediction model → TRIPOD+AI · radiology AI → CLAIM 2024 · RCT → CONSORT / CONSORT-AI · systematic review → PRISMA 2020 · observational → STROBE · educational → SQUIRE if applicable. 4. **AI/LLM design-stage reporting map** (AI validation, LLM/MLLM, NLP extraction, report generation): map every required AI-reporting item to a manuscript section *before* drafting — model/version/access date, input fields, prompt or fine-tuning protocol, same-backbone zero-shot/few-shot baseline if an adaptation claim is made, test-data independence/contamination, repeatability, and the Methods subsection each will land in. **If any item cannot be placed, halt for design clarification** rather than burying it as a Phase 7 limitation. 5. Create or confirm the project scaffold directory. 6. Record the `--no-llm-disclosure` and `--autonomous` flag states for Phase 1–7 gate logic. 7. **Identify a backbone article** — scan `manuscript/_src/refs.bib` first and propose proactively (ranking: Backbone ranking below); ask only as a fallback. Record the chosen citekey in `project.yaml::backbone_article`. Then gate on its full text — **a backbone whose full text is not extracted is a backbone in name only; the draft would follow an abstract:**

   python3 ${CLAUDE_SKILL_DIR}/scripts/gate_backbone_fulltext.py \
     --project project.yaml --refs manuscript/_src/refs.bib \
     --fulltext-dir pdfs/ --strict

A file in `--fulltext-dir` counts as the backbone when it is named `<citekey>.md` or names the backbone DOI/citekey *before* its References heading; a paper that only cites the backbone in its reference list does not count. Known limit: another paper that names the DOI in its own body still resolves — name the file `<citekey>.md` or pass `--fulltext` to remove the doubt.

`BACKBONE_FULLTEXT_MISSING` / `BACKBONE_FULLTEXT_THIN` → **stop and retrieve it** (`/lit-sync` Phase 2.7, then `/fulltext-retrieval` `pdf_to_md.py`). Do not begin Methods drafting until this passes. If the article is genuinely unavailable in full text, record that limitation and get user confirmation before proceeding on the abstract alone. 8. Summarize the setup — journal constraints, paper type, reporting guideline, backbone article, directory path, LLM-disclosure status — and confirm before proceeding.

Phase 0 Gate: Citekey-only references

Citekey discipline turns citation fabrication into a **visible placeholder the submission gate can block**.

1. **Every in-text citation MUST be `[@citekey]`**, with `citekey` present in `manuscript/_src/refs.bib`. Pandoc/Quarto style only — no "(Smith et al., 2024)" free text. 2. For a citation intended but not yet imported, use `[@NEW:short-topic]` (kebab-case, ≤30 chars, unique in the manuscript). 3. **Never** fabricate a citekey that "looks real" (`[@Smith_2024_AI]`) when the entry is not in `refs.bib`. `[@NEW:...]` is the *only* allowed placeholder. 4. All `[@NEW:...]` placeholders must be resolved before Phase 7 (`/search-lit` → `/lit-sync` imports verified entries; Better BibTeX refreshes `refs.bib`). Cite only references whose DOI or PMID `/search-lit` has confirmed; mark any other as `[UNVERIFIED - NEEDS MANUAL CHECK]`. 5. Pre-submission check — must return zero matches before `/sync-submission` may freeze a package:

   grep -E '\[@NEW:[^]]+\]|\[N\]|\[N–N\]' manuscript/index.qmd

Bare `[N]` / `[N–N]` markers mean a manuscript drafted outside this pipeline (no `refs.bib`) with method-load-bearing citations left unresolved. Block them exactly like `[@NEW:...]`.

If `refs.bib` is absent, create it empty with the comment `% refs.bib managed by /lit-sync via Zotero Better BibTeX. Do not hand-edit.`, record `reference_manager.required_for: project_owner` in `SSOT.yaml`, and proceed — early citations will all be `[@NEW:...]` until the first `/lit-sync` run.

**Read on demand — once the paper type is known (step 2), and only the row that matches:**

| File | Read it when | |---|---| | `references/phase0_init_detail.md` → **Case Report Mode** | paper type is `case report` — word/abstract/reference-limit overrides, the CARE 8-section outline, default figures | | `references/phase0_init_detail.md` → **Case Series Mode** | paper type is `case series` — the methods-light mini-cohort outline, all-cases summary table, counts-not-rates discipline | | `references/phase0_init_detail.md` → **Backbone ranking** | `refs

Read more
Ships withmedsci-skills

Created & maintained by Yoojin Nam, MD Department of Radiology and Research Institute of Radiology, University of Ulsan College of Medicine, Asan Medical Center, Seoul, Republic of Korea MedSci Skills is a set of Agent Skills for clinical research: literature

Get the whole plugin

Other skills on medsci-skills.