Scaffold a research grant proposal (NSF, NIH, ERC, or foundation) by composing existing primitives — pulls identification strategy from an `/interview-me` spec, delegates the data-management plan to `/data-management-plan` and the facilities statement to `/capture-environment`, and emits a funder-requirements checklist. Use when user says "draft a grant", "write a proposal", "NSF proposal", "NIH aims", "ERC application", "foundation grant", "specific aims", or "scaffold a grant proposal". NOT a submission tool — produces a draft the user uploads to the sponsor's portal themselves.
Compose a funder-shaped grant proposal draft from primitives you already have: an /interview-me research spec supplies the science, /data-management-plan supplies the DMP, /capture-environment supplies the facilities/computational statement, and /lit-review supplies the prior-work framing. This skill structures and stitches — it does not submit anywhere, and it does not invent identification strategy where a spec is absent.
Core principle: A proposal is a coherence artifact. Aims, methods, budget, timeline, and broader impacts must agree with each other and with the underlying research spec. The skill's main value-add over a blank template is the Phase 3 coherence pass (aims ↔ methods ↔ budget ↔ timeline).
/interview-me spec (or a /preregister PAP) into a fundable narrative./interview-me first; this skill refuses to fabricate an identification strategy.Generic across sponsors via placeholder profiles. --funder selects the section set + naming; default is nsf.
| Funder | Core sections (named per sponsor) | Page/format signals |
|---|---|---|
nsf | Project Summary (Overview/Intellectual Merit/Broader Impacts) · Project Description · Broader Impacts · Data Management & Sharing Plan · Facilities/Equipment · Budget Justification | 15-page Project Description; DMSP required |
nih | Specific Aims (1 p.) · Research Strategy (Significance/Innovation/Approach) · Vertebrate/Human Subjects (if any) · Data Management & Sharing · Facilities & Other Resources · Budget Justification | Aims page is load-bearing |
erc | Extended Synopsis (B1) · Scientific Proposal (B2: state-of-art, objectives, methodology) · CV + track record · Resources/Budget · Data Management | PI-centric; "high-risk/high-gain" framing |
foundation | Project Summary · Statement of Need · Goals & Objectives · Methods/Approach · Evaluation Plan · Budget Justification · Sustainability | Mission-fit framing; lighter methods |
Economics framing is the primary lens (DiD/event-study, IV, RCT, panel; AEA Data Editor / openICPSR / DCAS data-sharing expectations), but the section scaffold is field-agnostic — a biology or CS forker fills the same slots.
--funder (or infer from the request wording; default nsf). Echo the chosen profile back before drafting.--input <path>, else the most recent quality_reports/specs/research_spec_*.md from /interview-me. If none exists, stop and recommend /interview-me — do not invent the science.paper_type: field.quality_reports/ for adjacent artifacts to reuse: a /lit-review synthesis (prior work), a /preregister PAP (analysis plan), a passport.yaml or /data-analysis outputs (preliminary results).Generate the funder's section set. Map spec content into slots:
/lit-review synthesis if present (do not re-search unless asked).fixest::feols, AER::ivreg, Stata reghdfe)./data-analysis / passport outputs; otherwise mark [PRELIMINARY RESULTS: none yet — describe planned pilot].For every MUST slot the spec did not supply, write [CLARIFY: <specific question>] — never fabricate. Re-use the MUST / SHOULD / MAY clarity language from templates/requirements-spec.md.
/data-management-plan via the Agent tool with the funder + data sources from the spec. It returns the DMP section (repository choice — openICPSR / Dataverse / Zenodo, access/retention, FAIR/DCAS alignment). If any data source is sensitive (restricted-use admin data, PII, IRB-restricted), have it honor .claude/rules/confidential-data.md and describe access via a secure enclave / FSRDC rather than open release. Do not draft a sharing plan that promises to release confidential data./capture-environment via the Agent tool to produce the compute/software/dependency statement (cluster, R/Stata/Python toolchain, renv.lock / DESCRIPTION / requirements.txt provenance) for the Facilities section.If a delegate skill is unavailable, leave a [DELEGATE: /data-management-plan] placeholder rather than half-writing its output.
The differentiating step. Cross-check the assembled draft and report mismatches:
.claude/rules/post-flight-verification.md — spawn claim-verifier via the Agent tool (context: fork) on the citations. Surface PASS / PARTIAL / FAIL. Skip on --no-verify or zero citations.--out (default quality_reports/grants/YYYY-MM-DD_<slug>/), one Markdown file per section plus checklist.md.A proposal_draft.md (concatenated sections) plus a checklist.md:
# Grant Proposal Draft — [Title]
**Funder:** NSF | NIH | ERC | foundation **Date:** YYYY-MM-DD
**Source spec:** quality_reports/specs/research_spec_<slug>.md
## Funder-Requirements Checklist
| Requirement | Status | Source |
|---|---|---|
| Project Summary / Specific Aims | DRAFTED | Phase 1 |
| Research Design & Methods | DRAFTED | spec |
| Data Management & Sharing Plan | DELEGATED | /data-management-plan |
| Facilities / Computational Env | DELEGATED | /capture-environment |
| Budget Justification | SKELETON | Phase 1 |
| Broader Impacts / Significance | DRAFTED | Phase 1 |
| [n] [CLARIFY:] items unresolved | TODO | — |
## Coherence Report
- Aims ↔ Methods: PASS / [n issues]
- Methods ↔ Budget: PASS / [n issues]
- Aims ↔ Timeline: PASS / [n issues]
- DMP ↔ Methods (confidential-data check): PASS / [n issues]
- Page-budget flags: [sections at risk of overflow]
## Post-Flight Verification
Claims extracted: N · Verified: N · Outcome: PASS / PARTIAL / FAIL/audit-reproducibility (it is a drafting tool, not a gate) — it surfaces, the author resolves./interview-me. Nothing is written.--funder <nsf|nih|erc|foundation> — Select the funder profile that shapes section structure and the requirements checklist.--input <spec> — Path to an existing /interview-me research spec to seed Aims and Methods (otherwise the skill elicits them)..claude/skills/interview-me/SKILL.md — produces the research spec this skill consumes; run it first if none exists..claude/skills/data-management-plan/SKILL.md — Phase 2 delegate for the DMP/DMSP section..claude/skills/capture-environment/SKILL.md — Phase 2 delegate for the facilities/computational statement..claude/skills/lit-review/SKILL.md — supplies Background & Significance prior-work framing..claude/skills/preregister/SKILL.md — a PAP can seed the analysis plan; preregistration is the forward commitment a funded project then executes..claude/rules/confidential-data.md — governs how sensitive data sources appear in the DMP and budget..claude/rules/post-flight-verification.md — Phase 4 citation fact-check./data-management-plan and /capture-environment; this skill only stitches their output into the funder's section set.9d371f0
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.