Skip to content
Development
Skill

/write

Run STORM phase 3 — per-section article writing. This skill should be used when the user asks to "write the article sections", "draft the storm article", or invokes /storm:write. Writes each outline section in parallel with inline citations grounded in the research sources.

BOOST
From plugin
dotclaude
59683 skills7 agents4 commands3 MCP
Install
$ npx -y skills add FradSer/dotclaude --skill write --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

Context preview

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

Run STORM phase 3 — per-section article writing. This skill should be used when the user asks to "write the article sections", "draft the storm article", or invokes /storm:write. Writes each outline section in parallel with inline citations grounded in the research sources.

SKILL.md

write.SKILL.md
name: storm-write
description: Run STORM phase 3 — per-section article writing. This skill should be used when the user asks to "write the article sections", "draft the storm article", or invokes /storm:write. Writes each outline section in parallel with inline citations grounded in the research sources.
user-invocable: true
argument-hint: "<topic> [--retrieve-top-k N] [--output-dir PATH | --save] [--force]"
allowed-tools: ["Read", "Write", "Edit", "Glob", "Grep", "Bash(mktemp:*)", "Bash(mkdir:*)", "Bash(date:*)", "Task", "Skill"]

/storm:write

Phase 3 of the STORM pipeline. Writes each outline section in parallel (one Task subagent per section), each grounded in top-k relevant sources from the research information table, with inline `[n]` citations.

CRITICAL: Prerequisites

  • Load `storm-engine` via the Skill tool.
  • `outline.md` MUST exist (phase 2 complete). If absent, stop and instruct the user to run `/storm:outline` first.

Completion Contract

This phase is complete iff `article.md` exists and every outline section (except Introduction/Conclusion/Summary placeholders) has body text. If `--force` is not set and it exists, skip and exit early.

Procedure

1. Resolve output dir. 2. Read `outline.md` and `research/sources.json`. Index sources for retrieval (simple: rank by keyword/heading overlap with the section title). 3. **Identify sections** to write — skip any whose heading is exactly "Introduction", "Conclusion", or "Summary" (these are filled in `polish`). 4. **Parallel writing** — for each section, launch ONE Task subagent (single message, parallel). Each subagent:

  • Receives: topic, section heading, top-k relevant sources (default `--retrieve-top-k` 3), the full outline for context.
  • Writes the section body with inline `[n]` citations mapping to `sources.json` ids.
  • If no relevant sources, writes uncited and marks `<!-- TODO: no source -->`.
  • Returns the section markdown.

5. **Assemble** — concatenate sections in outline order under their headings into `article.md`. Preserve the heading hierarchy from `outline.md`. 6. Verify every non-placeholder section has body. Update `run-config.json`: `phases.write = "completed"`, section count, any TODO-flagged sections.

Citation Rules

  • Only cite `[n]` where `n` is an existing `id` in `sources.json`. Never mint a new id here.
  • Place `[n]` immediately after the claim it supports. Multi-source claims use `[1][2]`.
  • Do not cite in placeholder sections.

Output

Report: number of sections written, number of citations used, list of sections flagged as TODO (no source), and the path to `article.md`.

Read more
Ships withdotclaude

A curated collection of 22 plugins for Claude Code, providing specialized agents, skills, and automation tools for development and productivity workflows.

Get the whole plugin

Other skills on dotclaude.