Skip to content
Content
Skill

/paper-writer

Write academic papers (IMRaD structure) for conferences and journals, with mandatory anti-hallucination citation verification. Triggers (FR + EN) : "écris un paper", "article pour conférence", "rédige pour la conférence", "structure IMRaD", "soumission paper", "write a paper

From plugin
paper-trail
56 skills6 agents22 commands3 hooks
Install
$ npx -y skills add roomi-fields/paper-trail --skill paper-writer --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/paper-writer

Context preview

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

Write academic papers (IMRaD structure) for conferences and journals, with mandatory anti-hallucination citation verification. Triggers (FR + EN) : "écris un paper", "article pour conférence", "rédige pour la conférence", "structure IMRaD", "soumission paper", "write a paper

SKILL.md

paper-writer.SKILL.md
name: paper-writer
description: >
  Write academic papers (IMRaD structure) for conferences and journals,
  with mandatory anti-hallucination citation verification. Triggers
  (FR + EN) : "écris un paper", "article pour conférence", "rédige pour
  la conférence", "structure IMRaD", "soumission paper", "write a paper
  on", "academic article", "/paper-trail:new-paper". Builds on existing
  SOTAs in the registry — does NOT invent references. Every citation
  passes through citation-receipts validation before being accepted in
  the final draft.

Skill : Paper Writer

Role

Write research articles in IMRaD structure (Introduction, Methods, Results, and Discussion) for conferences and journals, with every citation rigorously verified against the actual source.

Workflow

Like `sota-writer`, this skill enforces an **inverted workflow** : sources are built / verified **before** writing, not after. The difference with sota-writer is that paper-writer assumes the SOTA corpus already exists in the registry (it consumes audited SOTAs to build the Related Work section) and focuses on producing the IMRaD sections + their citations.

A. SOTA CONSUMPTION
   ├─ Identify the SOTAs in the vault relevant to the paper's topic
   ├─ Verify they're audited (no ref in candidate / blocked_human)
   └─ → corpus of refs in `sota_cited_confirmed` available

B. STRUCTURE
   ├─ Choose target venue (ISMIR, SMC, NeurIPS, ACL, etc.)
   ├─ Adapt IMRaD to venue conventions (page limit, abstract length)
   └─ Outline each section with bullet points

C. WRITE PER SECTION
   ├─ Methods & Results : new content from the user's research
   ├─ Related Work : draw from audited SOTAs, no new claims
   ├─ Each citation passes citation-receipts protocol
   └─ → draft with placeholder citations (e.g., \cite{author2020topic})

D. PRE-SUBMISSION AUDIT
   ├─ /paper-trail:audit-article <paper.tex> [--warn]
   ├─ Fix all INVALID and ADJUST citations
   ├─ Decide on UNVERIFIABLE (enable shadow libs or remove claim)
   └─ → submittable draft

Standard IMRaD structure

1. **Abstract** — 150–250 words 2. **Introduction** — context, problem, contribution 3. **Related Work** — based on existing SOTAs in the registry 4. **Methods** — formalism, algorithms, model 5. **Results** — experiments, evaluations 6. **Discussion** — interpretation, limitations 7. **Conclusion** — summary of contributions, future work 8. **References** — BibTeX

Venue adaptation

Common venue conventions to respect :

| Venue | Pages | Template | Notes | |---|---|---|---| | ISMIR | 6 | ISMIR LaTeX | Music information retrieval | | SMC | 8 | SMC template | Sound and music computing | | NeurIPS | 8 + appendix | NeurIPS LaTeX | Machine learning | | ACL | 8 | ACL LaTeX | Computational linguistics | | ICASSP | 4–5 | ICASSP LaTeX | Signal processing | | Generic journal | varies | Journal-specific | Refer to author guide |

For a non-standard venue, ask the user for the page limit, citation style (APA / IEEE / Chicago / ACM), and reference format (BibTeX, RIS, etc.).

Citation protocol — MANDATORY

Every citation in the paper MUST :

1. Resolve to a ref in the registry (`$RESEARCH_REGISTRY_PATH/refs/<slug>.md`) 2. The ref's state MUST be `sota_cited_confirmed` (audited as VRAI) 3. The specific claim being cited must pass `citation-receipts` (CONFIRMED or NUANCED verdict)

Failure modes :

  • Citation pointing to a ref in `candidate` or `blocked_human:*` →

blocked by the PreToolUse hook (`precheck_sota_wikilinks.py`)

  • Citation pointing to a ref in `retracted` → blocked, must be removed
  • Claim that doesn't match the source → flagged by `citation-receipts`

in `RECEIPTS.md`, must be corrected before submission

Workflow integration

Phase A — Identify source SOTAs

# Find SOTAs in the vault related to the paper's topic
# Use the configured adapter
python -c "
from adapters import get_adapter
adapter = get_adapter()
for sota_path in adapter.find_sotas():
    # filter by topic
    ...
"

For each relevant SOTA, verify it's audited :

python -m pipeline doctor --severity error
# Should report 0 violations on the refs cited by the source SOTAs

Phase B — Draft

Use the chosen LaTeX or markdown template. Write the structure first (section headers, bullet outline), then fill in section by section. For Related Work, **copy + adapt** content from the audited SOTAs — don't paraphrase from memory.

Phase C — Cite

For each `\cite{slug}` (LaTeX) or `[[slug]]` (Markdown) added :

1. Verify the ref exists in registry 2. Verify the ref state is `sota_cited_confirmed` 3. Verify the specific claim via `citation-receipts` skill (read the PDF section, match verb, verify verbatim quotes) 4. Update the ref's `cited_in[]` to record this paper + section

Phase D — Pre-submission audit

/paper-trail:audit-article <paper.tex>

Reviews each citation, produces `RECEIPTS.md`. Iterate until all citations are VALID.

/paper-trail:audit-article <paper.tex> --warn

Same audit + inserts inline warnings in `.tex.bak` for INVALID / ADJUST / UNVERIFIABLE citations.

What this skill does NOT do

  • **Doesn't invent references** — only consumes from the audited

registry

  • **Doesn't download PDFs** — that's `pdf-cascade`
  • **Doesn't decide ref existence** — that's `sota-auditor`
  • **Doesn't verify each citation's claim individually** — that's

`citation-receipts` (downstream)

  • **Doesn't bypass the PreToolUse hook** — if the hook blocks the

write, the citation must be fixed first

  • **Doesn't write Related Work from memory** — copies + adapts from

audited SOTAs only

Conventions

  • **Language** : as specified by user / venue (English default)
  • **Citation style** : as specified by venue (BibTeX keys = slug of

the ref file, e.g., `\cite{shannon_1948_mathematical}`)

  • **Wikilinks (Markdown drafts)** : `[[shannon_1948_mathematical]]` —

the adapter renders to the appropriate format at compile time

  • **Refer
Read more
Ships withpaper-trail

Anti-hallucination plugin for academic research in Claude Code. Create literature reviews and papers guaranteed without fabricated citations.

Get the whole plugin

Other skills on paper-trail.