/paper-plan
Compile a paper outline from the wiki's idea graph.
Input target ideas (status: validated or in-progress with succeeded experiments), specify the target venue,
compile an evidence map from the wiki → determine narrative structure → generate a section outline + figure plan + citation plan.
Review LLM review is a mandatory step (acting as area chair to assess outline persuasiveness).
Output PAPER_PLAN.md to wiki/outputs/.
Key distinction: the outline is idea-graph-driven — each section exists because it supports an idea (or its evidence/methods),
not because paper convention requires that section.
Inputs
ideas: list of target idea slugs (space-separated)
- each idea should have
status: validated or be in_progress with at least one succeeded experiment
- if
proposed or invalidated ideas are included, warn but continue
--venue (required): target venue, determines page limit and format requirements
- supported:
ICLR / NeurIPS / ICML / ACL / CVPR / IEEE
--title (optional): working title; if omitted, generated from target ideas
Outputs
wiki/outputs/paper-plan-{slug}-{date}.md — complete paper plan (PAPER_PLAN.md)
wiki/graph/edges.jsonl — new derived_from edges (plan → source ideas/papers)
wiki/graph/context_brief.md — rebuilt
wiki/log.md — appended log entry
- PAPER_PLAN_REPORT (printed to terminal) — plan summary
Wiki Interaction
Reads
wiki/ideas/*.md — Hypothesis, Motivation, Approach sketch, Novelty argument, status, novelty_score, target_venue, linked_experiments, origin_gaps
wiki/experiments/*.md — supporting experiments (linked via linked_idea); results, metrics, key_result
wiki/methods/*.md — methods referenced by the idea's Approach sketch (Mechanism, Procedure, source_papers)
wiki/papers/*.md — evidence source papers (Method, Results, Related)
wiki/concepts/*.md — concepts the idea's origin_gaps points to (Definition, Variants, Comparison)
wiki/topics/*.md — topics the idea's origin_gaps points to (Overview, Open problems)
wiki/graph/context_brief.md — global context
wiki/graph/open_questions.md — knowledge gaps (annotate paper limitations)
wiki/graph/edges.jsonl — relationship graph (build narrative logic chain)
.claude/skills/shared-references/academic-writing.md — writing principles
.claude/skills/shared-references/citation-verification.md — citation discipline
Writes
wiki/outputs/paper-plan-{slug}-{date}.md — paper plan file
wiki/graph/edges.jsonl — derived_from edges
wiki/graph/context_brief.md — rebuilt
wiki/log.md — appended operation log
Graph edges created
derived_from: paper-plan → ideas (which ideas the plan is derived from)
derived_from: paper-plan → papers (which papers the plan cites)
Workflow
Precondition: confirm the working directory is the wiki project root (the directory containing wiki/, raw/, tools/).
Step 1: Load Idea Graph
- Read
wiki/ideas/{slug}.md for all target ideas
- For each idea, traverse:
linked_experiments → read each wiki/experiments/{slug}.md (key_result, metrics, outcome)
origin_gaps → read each wiki/concepts/{slug}.md and wiki/topics/{slug}.md (background context)
## Approach sketch body wikilinks → read each wiki/methods/{slug}.md and wiki/papers/{slug}.md
- Read
wiki/graph/context_brief.md for global context
- Read
wiki/graph/open_questions.md to annotate known limitations
- Load relevant edges from
wiki/graph/edges.jsonl to build relationships between ideas
Validation:
- If any target idea has
status: proposed: warn "idea is unvalidated; paper may lack evidence support"
- If any target idea has empty
novelty_score OR novelty_score <= 2: warn "idea novelty is thin; consider running /novelty first"
- If no
linked_experiments resolve to a succeeded outcome for any target idea: error "at least one supporting experiment is required to plan a paper"
Step 2: Compile Evidence Map from Wiki
Generate a structured matrix mapping ideas → evidence → sections:
| Idea | Status | linked experiments | Methods/Concepts | Section |
|------|--------|--------------------|------------------|---------|
| [[primary-idea]] | validated | [[exp-main]] (succeeded), [[exp-ablation-1]] (succeeded) | [[method-core]], [[concept-foundation]] | Method + Exp 5.2 |
| [[supporting-idea-1]] | validated | [[exp-ablation-2]] (succeeded) | [[method-component]] | Exp 5.3 (Ablation) |
| [[supporting-idea-2]] | in_progress | [[exp-scaling]] (inconclusive) | [[concept-scaling]] | Exp 5.4 (Scaling) |
Map ideas to paper structure along each dimension:
- Primary idea → core contribution, drives Abstract + Introduction + Method
- Decomposition ideas → factor contributions, drives Ablation subsections
- Concepts/topics from origin_gaps → background knowledge, drives Related Work + Introduction
Step 3: Determine Narrative Structure
Follow the hourglass principle in shared-references/academic-writing.md:
Identify the paper's core storyline:
- Gap (extracted from idea's
## Motivation and origin_gaps)
- Solution (extracted from idea's
## Approach sketch and linked methods)
- Evidence (extracted from
linked_experiments results)
- Impact (inferred from idea
novelty_score + experiment scope)
Determine the narrative angle:
- What problem does the paper solve? (problem-driven vs. method-driven vs. data-driven)
- Who is the primary audience? (theory / systems / applications)
- How does it differentiate from the 3 most relevant recent papers?
Establish section → idea mapping:
Every section must support at least one idea (or its supporting evidence/methods). A section with no idea support is filler and should be removed.
Step 4: Generate Section Outline
Generate the outline according to venue format requirements; each section includes:
## 1. Introduction (1.5 pages)
### Ideas addressed
- Gap framing: {existing approaches lack X because Y} (from `origin_gaps`)
- Primary contribution idea: [[primary-idea]]
### Paragraph plan
1. Broad context: {field importance, recent progress}
2. Specific problem: {what's missing, why it matters}
3. Our approach: "In this work, we propose..." + contributions list
4. Results preview: {headline numbers}
5. Paper structure: "The rest of this paper..."
### Key citations
- [[paper-A]] — establishes the problem
- [[paper-B]] — closest prior work (we improve upon)
- [[paper-C]] — our baseline
---
## 2. Related Work (1 page)
### Groupings
- Direction A: {papers, our position}
- Direction B: {papers, our position}
- Direction C: {papers, our position}
### Ideas addressed
- Background concepts/topics from each idea's `origin_gaps` distinguishing this work from prior work
---
## 3. Method (2-3 pages)
### Ideas addressed
- [[primary-idea]]: section 3.1-3.2 (Approach sketch + referenced [[method-slug]])
- [[supporting-idea-1]]: section 3.3
### Subsection plan
- 3.1 Problem formulation: notation, objective
- 3.2 Core approach: intuition → formalism
- 3.3 Component X: design decision + justification
- 3.4 Training/inference details
### Figures
- Figure 1: Overall architecture (mandatory)
- Figure 2: Component X detail (if complex)
---
## 4. Experiments (2-3 pages)
### Ideas addressed
- [[primary-idea]]: section 4.2 (main results)
- [[supporting-idea-1]]: section 4.3 (ablation)
- [[supporting-idea-2]]: section 4.4 (scaling)
### Subsection plan
- 4.1 Setup: datasets, baselines, metrics, implementation details
- 4.2 Main results: Table 1 (main comparison), [[exp-main]]
- 4.3 Ablation study: Table 2 (component analysis), [[exp-ablation-*]]
- 4.4 Analysis: scaling, robustness, qualitative examples
### Figures/Tables
- Table 1: Main comparison vs baselines
- Table 2: Ablation results
- Figure 3: Scaling curves / qualitative examples
---
## 5. Conclusion (0.5 page)
### Key takeaway
- {one sentence the reader should remember}
### Limitations
- {from gap_map or each idea's `## Risks`}
### Future work
- {from gap_map open questions and each idea's `## Lessons learned`}
Page budget: allocated by --venue (refer to the venue table in academic-writing.md); total section pages <= venue main-body limit.
Step 5: Figure Plan
Design each planned figure/table:
## Figure Plan
### Figure 1: System Architecture
- Type: diagram
- Source: Method section description
- Style: block diagram with labeled components
- Size: full width (1 column = text width)
### Table 1: Main Results
- Type: comparison table
- Source: [[exp-main]] key_result + baselines
- Columns: Method | Metric-1 | Metric-2 | ...
- Rows: baselines + ours (ours in bold)
- Notes: best bold, second underline, ↑/↓ arrows for direction
### Figure 3: Scaling Analysis
- Type: line plot
- Source: [[exp-scaling]] results
- X-axis: scale dimension (model size / data size)
- Y-axis: performance metric
- Lines: ours vs baseline, with error bands
Step 6: Citation Plan
Following shared-references/citation-verification.md:
- List all wiki papers referenced via
[[slug]] in the outline
- For each paper, pre-fetch BibTeX:
- DBLP first, then CrossRef, then S2
- Success: record BibTeX key + source
- Failure: mark
[UNCONFIRMED]
- Generate citation coverage report:
Citations: 15 total, 12 verified (DBLP: 8, CrossRef: 3, S2: 1), 3 [UNCONFIRMED]
- For [UNCONFIRMED] entries, provide suggested URLs for manual verification
Step 7: Review LLM Review (mandatory)
mcp__llm-review__chat:
system: "You are an area chair at {venue} reviewing a paper outline.
Assess: Is the narrative convincing? Does every section serve a clear purpose?
Are the experiments sufficient to support the paper's central ideas?
Is the related work coverage adequate?
Are there obvious gaps that reviewers will attack?
Provide specific suggestions for strengthening the outline."
message: |
## Paper Outline
{complete outline from Step 4}
## Evidence Map
{evidence map from Step 2}
## Figure/Table Plan
{plan from Step 5}
## Citation Coverage
{report from Step 6}
## Questions for Review
1. Is the narrative arc (gap → solution → evidence → impact) convincing?
2. Are any ideas under-supported? Which experiments are missing?
3. Is the related work grouping appropriate? Missing directions?
4. Will the page budget work? Any section too long/short?
5. Are the figures/tables sufficient to tell the story?
Revise the outline based on Review LLM feedback (add sections, adjust page budget, add figures/tables, correct narrative structure).
Step 8: Write to Wiki
Generate slug:
python3 tools/research_wiki.py slug "<working-title>"
Write PAPER_PLAN.md:
Create wiki/outputs/paper-plan-{slug}-{date}.md containing:
- Metadata (venue, title, date, target ideas)
- Evidence Map (Step 2)
- Complete section outline (Step 4, with Review LLM revisions)
- Figure/Table Plan (Step 5)
- Citation Plan + coverage report (Step 6)
- Review LLM Review Summary (Step 7 key feedback and revision record)
Add graph edges:
# plan → target idea
python3 tools/research_wiki.py add-edge wiki/ \
--from "outputs/paper-plan-{slug}-{date}" --to "ideas/{primary-idea}" \
--type derived_from --evidence "Paper plan built from this idea"
# plan → key papers
python3 tools/research_wiki.py add-edge wiki/ \
--from "outputs/paper-plan-{slug}-{date}" --to "papers/{paper-slug}" \
--type derived_from --evidence "Paper plan cites this paper"
Rebuild derived data:
python3 tools/research_wiki.py rebuild-context-brief wiki/
Append log:
python3 tools/research_wiki.py log wiki/ \
"paper-plan | {venue} paper outline for [[{slug}]] | ideas: {idea-list} | citations: {verified}/{total}"
Print PAPER_PLAN_REPORT to terminal:
# Paper Plan Report
## Meta
- Title: {working title}
- Venue: {venue}
- Page limit: {N} pages
- Date: {date}
## Ideas → Sections
| Idea | Status / Novelty | Section |
|------|------------------|---------|
| [[primary]] | validated / 4 | Method + Exp 5.2 |
| [[supporting-1]] | validated / 3 | Exp 5.3 |
## Page Budget
| Section | Pages | Ideas |
|---------|-------|-------|
| Introduction | 1.5 | gap, contribution |
| Related Work | 1.0 | context |
| Method | 2.5 | primary, supporting |
| Experiments | 2.5 | all |
| Conclusion | 0.5 | — |
## Figures/Tables: {N} planned
## Citations: {verified}/{total} verified, {verify_count} [UNCONFIRMED]
## Review LLM Review: score {X}/10, verdict: {verdict}
## Next Steps
- Run `/paper-draft wiki/outputs/paper-plan-{slug}-{date}.md` to draft the paper
- Resolve {verify_count} [UNCONFIRMED] citations before /paper-compile
Constraints
- --venue is required: page limits and format requirements vary significantly by venue; cannot be omitted
- At least one experiment evidence: purely theoretical ideas are insufficient for an empirical paper; at least one supporting experiment is required
- Page budget must be feasible: total section pages <= venue main-body limit; otherwise adjust (compress or move to appendix)
- Review LLM review is mandatory: cannot be skipped; catching problems at the outline stage has the lowest cost
- All citations from wiki: every paper in the citation plan must exist in wiki/papers/
- idea → section mapping must be complete: every target idea must appear in at least one section
- Every section must have an idea: a section with no idea support is filler and should be removed or merged
- Graph edges via tools/research_wiki.py: do not manually edit edges.jsonl
- Citations use [[slug]]: all citations in the outline use wikilink syntax
Error Handling
- Insufficient idea status: if all ideas are
proposed, error "ideas are unvalidated; run experiments first"
- No experiment evidence: error "at least one experimental result is required"; suggest running /exp-design + /exp-run first
- Insufficient wiki papers: if the citation plan has fewer than 5 wiki papers, warn "related work coverage is insufficient; consider /ingest of more papers first"
- Page budget exceeded: automatically move lower-priority sections to appendix plan; report the adjustment
- Review LLM unavailable: fall back to Claude self-review; report annotated "single-model review — cross-model verification unavailable"
- BibTeX fetch failed: mark [UNCONFIRMED]; summarize in the citation plan report
- Slug conflict: append date suffix
- Target idea not found: error; list candidates in wiki/ideas/
Dependencies
Tools(via Bash)
python3 tools/research_wiki.py slug "<title>" — generate slug
python3 tools/research_wiki.py add-edge wiki/ ... — add graph edge
python3 tools/research_wiki.py rebuild-context-brief wiki/ — rebuild query_pack
python3 tools/research_wiki.py log wiki/ "<message>" — append log
python3 tools/fetch_s2.py search "<title>" — Semantic Scholar search (citation plan fallback)
MCP Servers
mcp__llm-review__chat — Step 7 outline review (mandatory)
Claude Code Native
Read — read wiki pages
Glob — find ideas, experiments, methods, papers
WebFetch — DBLP / CrossRef BibTeX fetch (Step 6)
Shared References
.claude/skills/shared-references/academic-writing.md — narrative structure and section design principles
.claude/skills/shared-references/citation-verification.md — citation fetch and verification rules
Called by
/research Stage 5 (paper writing stage)
- Manual user invocation
1---2name: autosci-paper-plan3description: Compile a paper outline from the idea graph — evidence map → narrative structure → section plan + figure plan + citation plan, Review LLM review mandatory4---56# /paper-plan78> Compile a paper outline from the wiki's idea graph.9> Input target ideas (status: validated or in-progress with succeeded experiments), specify the target venue,10> compile an evidence map from the wiki → determine narrative structure → generate a section outline + figure plan + citation plan.11> Review LLM review is a mandatory step (acting as area chair to assess outline persuasiveness).12> Output PAPER_PLAN.md to wiki/outputs/.13>14> Key distinction: the outline is idea-graph-driven — each section exists because it supports an idea (or its evidence/methods),15> not because paper convention requires that section.1617## Inputs1819- `ideas`: list of target idea slugs (space-separated)20 - each idea should have `status: validated` or be `in_progress` with at least one `succeeded` experiment21 - if `proposed` or `invalidated` ideas are included, warn but continue22- `--venue` (required): target venue, determines page limit and format requirements23 - supported: `ICLR` / `NeurIPS` / `ICML` / `ACL` / `CVPR` / `IEEE`24- `--title` (optional): working title; if omitted, generated from target ideas2526## Outputs2728- `wiki/outputs/paper-plan-{slug}-{date}.md` — complete paper plan (PAPER_PLAN.md)29- `wiki/graph/edges.jsonl` — new derived_from edges (plan → source ideas/papers)30- `wiki/graph/context_brief.md` — rebuilt31- `wiki/log.md` — appended log entry32- **PAPER_PLAN_REPORT** (printed to terminal) — plan summary3334## Wiki Interaction3536### Reads37- `wiki/ideas/*.md` — Hypothesis, Motivation, Approach sketch, Novelty argument, status, novelty_score, target_venue, linked_experiments, origin_gaps38- `wiki/experiments/*.md` — supporting experiments (linked via `linked_idea`); results, metrics, key_result39- `wiki/methods/*.md` — methods referenced by the idea's Approach sketch (Mechanism, Procedure, source_papers)40- `wiki/papers/*.md` — evidence source papers (Method, Results, Related)41- `wiki/concepts/*.md` — concepts the idea's `origin_gaps` points to (Definition, Variants, Comparison)42- `wiki/topics/*.md` — topics the idea's `origin_gaps` points to (Overview, Open problems)43- `wiki/graph/context_brief.md` — global context44- `wiki/graph/open_questions.md` — knowledge gaps (annotate paper limitations)45- `wiki/graph/edges.jsonl` — relationship graph (build narrative logic chain)46- `.claude/skills/shared-references/academic-writing.md` — writing principles47- `.claude/skills/shared-references/citation-verification.md` — citation discipline4849### Writes50- `wiki/outputs/paper-plan-{slug}-{date}.md` — paper plan file51- `wiki/graph/edges.jsonl` — derived_from edges52- `wiki/graph/context_brief.md` — rebuilt53- `wiki/log.md` — appended operation log5455### Graph edges created56- `derived_from`: paper-plan → ideas (which ideas the plan is derived from)57- `derived_from`: paper-plan → papers (which papers the plan cites)5859## Workflow6061**Precondition**: confirm the working directory is the wiki project root (the directory containing `wiki/`, `raw/`, `tools/`).6263### Step 1: Load Idea Graph64651. Read `wiki/ideas/{slug}.md` for all target ideas662. For each idea, traverse:67 - `linked_experiments` → read each `wiki/experiments/{slug}.md` (key_result, metrics, outcome)68 - `origin_gaps` → read each `wiki/concepts/{slug}.md` and `wiki/topics/{slug}.md` (background context)69 - `## Approach sketch` body wikilinks → read each `wiki/methods/{slug}.md` and `wiki/papers/{slug}.md`703. Read `wiki/graph/context_brief.md` for global context714. Read `wiki/graph/open_questions.md` to annotate known limitations725. Load relevant edges from `wiki/graph/edges.jsonl` to build relationships between ideas7374**Validation**:75- If any target idea has `status: proposed`: warn "idea is unvalidated; paper may lack evidence support"76- If any target idea has empty `novelty_score` OR `novelty_score <= 2`: warn "idea novelty is thin; consider running `/novelty` first"77- If no `linked_experiments` resolve to a `succeeded` outcome for any target idea: error "at least one supporting experiment is required to plan a paper"7879### Step 2: Compile Evidence Map from Wiki8081Generate a structured matrix mapping ideas → evidence → sections:8283```markdown84| Idea | Status | linked experiments | Methods/Concepts | Section |85|------|--------|--------------------|------------------|---------|86| [[primary-idea]] | validated | [[exp-main]] (succeeded), [[exp-ablation-1]] (succeeded) | [[method-core]], [[concept-foundation]] | Method + Exp 5.2 |87| [[supporting-idea-1]] | validated | [[exp-ablation-2]] (succeeded) | [[method-component]] | Exp 5.3 (Ablation) |88| [[supporting-idea-2]] | in_progress | [[exp-scaling]] (inconclusive) | [[concept-scaling]] | Exp 5.4 (Scaling) |89```9091Map ideas to paper structure along each dimension:92- **Primary idea** → core contribution, drives Abstract + Introduction + Method93- **Decomposition ideas** → factor contributions, drives Ablation subsections94- **Concepts/topics from origin_gaps** → background knowledge, drives Related Work + Introduction9596### Step 3: Determine Narrative Structure9798Follow the hourglass principle in `shared-references/academic-writing.md`:991001. **Identify the paper's core storyline**:101 - Gap (extracted from idea's `## Motivation` and `origin_gaps`)102 - Solution (extracted from idea's `## Approach sketch` and linked methods)103 - Evidence (extracted from `linked_experiments` results)104 - Impact (inferred from idea `novelty_score` + experiment scope)1051062. **Determine the narrative angle**:107 - What problem does the paper solve? (problem-driven vs. method-driven vs. data-driven)108 - Who is the primary audience? (theory / systems / applications)109 - How does it differentiate from the 3 most relevant recent papers?1101113. **Establish section → idea mapping**:112 Every section must support at least one idea (or its supporting evidence/methods). A section with no idea support is filler and should be removed.113114### Step 4: Generate Section Outline115116Generate the outline according to venue format requirements; each section includes:117118```markdown119## 1. Introduction (1.5 pages)120121### Ideas addressed122- Gap framing: {existing approaches lack X because Y} (from `origin_gaps`)123- Primary contribution idea: [[primary-idea]]124125### Paragraph plan1261. Broad context: {field importance, recent progress}1272. Specific problem: {what's missing, why it matters}1283. Our approach: "In this work, we propose..." + contributions list1294. Results preview: {headline numbers}1305. Paper structure: "The rest of this paper..."131132### Key citations133- [[paper-A]] — establishes the problem134- [[paper-B]] — closest prior work (we improve upon)135- [[paper-C]] — our baseline136137---138139## 2. Related Work (1 page)140141### Groupings142- Direction A: {papers, our position}143- Direction B: {papers, our position}144- Direction C: {papers, our position}145146### Ideas addressed147- Background concepts/topics from each idea's `origin_gaps` distinguishing this work from prior work148149---150151## 3. Method (2-3 pages)152153### Ideas addressed154- [[primary-idea]]: section 3.1-3.2 (Approach sketch + referenced [[method-slug]])155- [[supporting-idea-1]]: section 3.3156157### Subsection plan158- 3.1 Problem formulation: notation, objective159- 3.2 Core approach: intuition → formalism160- 3.3 Component X: design decision + justification161- 3.4 Training/inference details162163### Figures164- Figure 1: Overall architecture (mandatory)165- Figure 2: Component X detail (if complex)166167---168169## 4. Experiments (2-3 pages)170171### Ideas addressed172- [[primary-idea]]: section 4.2 (main results)173- [[supporting-idea-1]]: section 4.3 (ablation)174- [[supporting-idea-2]]: section 4.4 (scaling)175176### Subsection plan177- 4.1 Setup: datasets, baselines, metrics, implementation details178- 4.2 Main results: Table 1 (main comparison), [[exp-main]]179- 4.3 Ablation study: Table 2 (component analysis), [[exp-ablation-*]]180- 4.4 Analysis: scaling, robustness, qualitative examples181182### Figures/Tables183- Table 1: Main comparison vs baselines184- Table 2: Ablation results185- Figure 3: Scaling curves / qualitative examples186187---188189## 5. Conclusion (0.5 page)190191### Key takeaway192- {one sentence the reader should remember}193194### Limitations195- {from gap_map or each idea's `## Risks`}196197### Future work198- {from gap_map open questions and each idea's `## Lessons learned`}199```200201**Page budget**: allocated by `--venue` (refer to the venue table in academic-writing.md); total section pages <= venue main-body limit.202203### Step 5: Figure Plan204205Design each planned figure/table:206207```markdown208## Figure Plan209210### Figure 1: System Architecture211- Type: diagram212- Source: Method section description213- Style: block diagram with labeled components214- Size: full width (1 column = text width)215216### Table 1: Main Results217- Type: comparison table218- Source: [[exp-main]] key_result + baselines219- Columns: Method | Metric-1 | Metric-2 | ...220- Rows: baselines + ours (ours in bold)221- Notes: best bold, second underline, ↑/↓ arrows for direction222223### Figure 3: Scaling Analysis224- Type: line plot225- Source: [[exp-scaling]] results226- X-axis: scale dimension (model size / data size)227- Y-axis: performance metric228- Lines: ours vs baseline, with error bands229```230231### Step 6: Citation Plan232233Following `shared-references/citation-verification.md`:2342351. List all wiki papers referenced via `[[slug]]` in the outline2362. For each paper, pre-fetch BibTeX:237 - DBLP first, then CrossRef, then S2238 - Success: record BibTeX key + source239 - Failure: mark `[UNCONFIRMED]`2403. Generate citation coverage report:241 ```242 Citations: 15 total, 12 verified (DBLP: 8, CrossRef: 3, S2: 1), 3 [UNCONFIRMED]243 ```2444. For [UNCONFIRMED] entries, provide suggested URLs for manual verification245246### Step 7: Review LLM Review (mandatory)247248```249mcp__llm-review__chat:250 system: "You are an area chair at {venue} reviewing a paper outline.251 Assess: Is the narrative convincing? Does every section serve a clear purpose?252 Are the experiments sufficient to support the paper's central ideas?253 Is the related work coverage adequate?254 Are there obvious gaps that reviewers will attack?255 Provide specific suggestions for strengthening the outline."256 message: |257 ## Paper Outline258 {complete outline from Step 4}259260 ## Evidence Map261 {evidence map from Step 2}262263 ## Figure/Table Plan264 {plan from Step 5}265266 ## Citation Coverage267 {report from Step 6}268269 ## Questions for Review270 1. Is the narrative arc (gap → solution → evidence → impact) convincing?271 2. Are any ideas under-supported? Which experiments are missing?272 3. Is the related work grouping appropriate? Missing directions?273 4. Will the page budget work? Any section too long/short?274 5. Are the figures/tables sufficient to tell the story?275```276277Revise the outline based on Review LLM feedback (add sections, adjust page budget, add figures/tables, correct narrative structure).278279### Step 8: Write to Wiki2802811. **Generate slug**:282 ```bash283 python3 tools/research_wiki.py slug "<working-title>"284 ```2852862. **Write PAPER_PLAN.md**:287 Create `wiki/outputs/paper-plan-{slug}-{date}.md` containing:288 - Metadata (venue, title, date, target ideas)289 - Evidence Map (Step 2)290 - Complete section outline (Step 4, with Review LLM revisions)291 - Figure/Table Plan (Step 5)292 - Citation Plan + coverage report (Step 6)293 - Review LLM Review Summary (Step 7 key feedback and revision record)2942953. **Add graph edges**:296 ```bash297 # plan → target idea298 python3 tools/research_wiki.py add-edge wiki/ \299 --from "outputs/paper-plan-{slug}-{date}" --to "ideas/{primary-idea}" \300 --type derived_from --evidence "Paper plan built from this idea"301302 # plan → key papers303 python3 tools/research_wiki.py add-edge wiki/ \304 --from "outputs/paper-plan-{slug}-{date}" --to "papers/{paper-slug}" \305 --type derived_from --evidence "Paper plan cites this paper"306 ```3073084. **Rebuild derived data**:309 ```bash310 python3 tools/research_wiki.py rebuild-context-brief wiki/311 ```3123135. **Append log**:314 ```bash315 python3 tools/research_wiki.py log wiki/ \316 "paper-plan | {venue} paper outline for [[{slug}]] | ideas: {idea-list} | citations: {verified}/{total}"317 ```3183196. **Print PAPER_PLAN_REPORT to terminal**:320 ```markdown321 # Paper Plan Report322323 ## Meta324 - Title: {working title}325 - Venue: {venue}326 - Page limit: {N} pages327 - Date: {date}328329 ## Ideas → Sections330 | Idea | Status / Novelty | Section |331 |------|------------------|---------|332 | [[primary]] | validated / 4 | Method + Exp 5.2 |333 | [[supporting-1]] | validated / 3 | Exp 5.3 |334335 ## Page Budget336 | Section | Pages | Ideas |337 |---------|-------|-------|338 | Introduction | 1.5 | gap, contribution |339 | Related Work | 1.0 | context |340 | Method | 2.5 | primary, supporting |341 | Experiments | 2.5 | all |342 | Conclusion | 0.5 | — |343344 ## Figures/Tables: {N} planned345 ## Citations: {verified}/{total} verified, {verify_count} [UNCONFIRMED]346 ## Review LLM Review: score {X}/10, verdict: {verdict}347348 ## Next Steps349 - Run `/paper-draft wiki/outputs/paper-plan-{slug}-{date}.md` to draft the paper350 - Resolve {verify_count} [UNCONFIRMED] citations before /paper-compile351 ```352353## Constraints354355- **--venue is required**: page limits and format requirements vary significantly by venue; cannot be omitted356- **At least one experiment evidence**: purely theoretical ideas are insufficient for an empirical paper; at least one supporting experiment is required357- **Page budget must be feasible**: total section pages <= venue main-body limit; otherwise adjust (compress or move to appendix)358- **Review LLM review is mandatory**: cannot be skipped; catching problems at the outline stage has the lowest cost359- **All citations from wiki**: every paper in the citation plan must exist in wiki/papers/360- **idea → section mapping must be complete**: every target idea must appear in at least one section361- **Every section must have an idea**: a section with no idea support is filler and should be removed or merged362- **Graph edges via tools/research_wiki.py**: do not manually edit edges.jsonl363- **Citations use [[slug]]**: all citations in the outline use wikilink syntax364365## Error Handling366367- **Insufficient idea status**: if all ideas are `proposed`, error "ideas are unvalidated; run experiments first"368- **No experiment evidence**: error "at least one experimental result is required"; suggest running /exp-design + /exp-run first369- **Insufficient wiki papers**: if the citation plan has fewer than 5 wiki papers, warn "related work coverage is insufficient; consider /ingest of more papers first"370- **Page budget exceeded**: automatically move lower-priority sections to appendix plan; report the adjustment371- **Review LLM unavailable**: fall back to Claude self-review; report annotated "single-model review — cross-model verification unavailable"372- **BibTeX fetch failed**: mark [UNCONFIRMED]; summarize in the citation plan report373- **Slug conflict**: append date suffix374- **Target idea not found**: error; list candidates in wiki/ideas/375376## Dependencies377378### Tools(via Bash)379- `python3 tools/research_wiki.py slug "<title>"` — generate slug380- `python3 tools/research_wiki.py add-edge wiki/ ...` — add graph edge381- `python3 tools/research_wiki.py rebuild-context-brief wiki/` — rebuild query_pack382- `python3 tools/research_wiki.py log wiki/ "<message>"` — append log383- `python3 tools/fetch_s2.py search "<title>"` — Semantic Scholar search (citation plan fallback)384385### MCP Servers386- `mcp__llm-review__chat` — Step 7 outline review (mandatory)387388### Claude Code Native389- `Read` — read wiki pages390- `Glob` — find ideas, experiments, methods, papers391- `WebFetch` — DBLP / CrossRef BibTeX fetch (Step 6)392393### Shared References394- `.claude/skills/shared-references/academic-writing.md` — narrative structure and section design principles395- `.claude/skills/shared-references/citation-verification.md` — citation fetch and verification rules396397### Called by398- `/research` Stage 5 (paper writing stage)399- Manual user invocation