Draft a full academic paper manuscript from analysis outputs, project spec, and lit review. Make sure to use this skill whenever the user wants to turn completed analysis into a written paper — not to run analysis or review existing writing. Triggers include: "write the paper", "draft the manuscript", "write up the results", "start the paper", "turn my results into a paper", "write the introduction", "draft the empirics section", "I have my results, now write the paper", "help me write this up", "write the abstract", or any request to produce academic prose from existing research outputs.
Draft an academic manuscript from existing analysis outputs. Follows propose-first — the outline is always shown for approval before writing begins.
Input: $ARGUMENTS — a paper title, research question, or from spec to read from quality_reports/specs/.
Read project context:
CLAUDE.md — project name, author, institutionquality_reports/specs/ — research question and identification strategyquality_reports/lit_review_*.md — related literature (if it exists)quality_reports/research_ideation_*.md — hypotheses (if it exists)If no spec exists, ask the user for the core research question before proceeding.
Glob for available outputs:
output/tables/**/*.tex — regression tablesoutput/tables/**/*.html — HTML table versionsoutput/figures/**/*.pdf, output/figures/**/*.png — figuresoutput/**/*.rds, output/**/*.pkl, output/**/*.parquet — saved objectsList what exists. Note any gaps (e.g., "no summary statistics table found").
Draft a paper outline using standard social science structure:
1. Abstract
2. Introduction
3. Related Literature
4. Data and Institutional Background
5. Empirical Strategy
6. Results
7. Robustness and Extensions
8. Conclusion
References
Present the outline with a one-sentence description of each section's content, linking specific output files to each section (e.g., "Table 2 → Section 6, Results"). Do NOT start writing until the user approves the outline or requests changes.
Write in this order (minimizes backtracking):
output/tables/summary_stats.tex if it exists.\input{} or \includegraphics{} — do NOT copy table content inline.Save to manuscripts/[project-name]-draft.tex (or .qmd if the user prefers Quarto).
Create manuscripts/ directory if it does not exist.
Use \input{} for tables and \includegraphics{} for figures — reference the actual files in output/, do not embed content directly.
After saving the draft, launch the domain-reviewer agent via Task:
Task prompt: "Review the draft at manuscripts/[filename] for argument structure, identification assumptions, and citation fidelity. Check that the identification strategy is clearly stated, assumptions are explicit, and all cited tables/figures exist in output/." Task agent: domain-reviewer
Wait for the review to complete, then present the findings to the user.
Inform the user:
/review-paper — for a full top-journal-style review of the manuscript/validate-bib — to check all citations are in the bibliography/quality-gate — to verify every claim in the paper is backed by an output fileoutput/; the paper references them by path.output/, flag it rather than guessing.