wtf-p 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/README.md +146 -226
  2. package/bin/commands/doctor.js +88 -2
  3. package/bin/commands/install-logic.js +121 -26
  4. package/bin/commands/status.js +22 -4
  5. package/bin/commands/update.js +5 -4
  6. package/bin/install.js +66 -26
  7. package/bin/lib/checkpoint.js +183 -0
  8. package/bin/lib/context-primer.js +214 -0
  9. package/bin/lib/manifest.js +62 -2
  10. package/bin/lib/utils.js +22 -1
  11. package/bin/uninstall.js +270 -111
  12. package/core/write-the-f-paper/references/agent-model-matrix.md +62 -0
  13. package/core/write-the-f-paper/references/checkpoints.md +160 -9
  14. package/core/write-the-f-paper/references/context-fidelity.md +153 -0
  15. package/core/write-the-f-paper/references/deviation-rules.md +150 -0
  16. package/core/write-the-f-paper/references/git-integration.md +80 -0
  17. package/core/write-the-f-paper/references/orchestrator-pattern.md +167 -0
  18. package/core/write-the-f-paper/references/planning-config.md +135 -0
  19. package/core/write-the-f-paper/references/ui-brand.md +186 -0
  20. package/core/write-the-f-paper/templates/UAT.md +80 -0
  21. package/core/write-the-f-paper/templates/base-prefs.yaml +42 -0
  22. package/core/write-the-f-paper/templates/config.json +31 -5
  23. package/core/write-the-f-paper/workflows/create-outline.wcn.md +1 -1
  24. package/core/write-the-f-paper/workflows/execute-outline.md +163 -0
  25. package/core/write-the-f-paper/workflows/execute-outline.wcn.md +73 -0
  26. package/core/write-the-f-paper/workflows/execute-section.wcn.md +141 -169
  27. package/core/write-the-f-paper/workflows/plan-section.wcn.md +96 -103
  28. package/core/write-the-f-paper/workflows/research-gap.md +27 -3
  29. package/core/write-the-f-paper/workflows/research-gap.wcn.md +18 -1
  30. package/core/write-the-f-paper/workflows/verify-work.md +251 -0
  31. package/core/write-the-f-paper/workflows/verify-work.wcn.md +74 -0
  32. package/package.json +19 -7
  33. package/vendors/claude/.claude-plugin/plugin.json +2 -2
  34. package/vendors/claude/agents/wtfp/argument-verifier.md +189 -0
  35. package/vendors/claude/agents/wtfp/citation-expert.md +1 -1
  36. package/vendors/claude/agents/wtfp/citation-formatter.md +1 -1
  37. package/vendors/claude/agents/wtfp/coherence-checker.md +167 -0
  38. package/vendors/claude/agents/wtfp/outliner.md +259 -0
  39. package/vendors/claude/agents/wtfp/plan-checker.md +249 -0
  40. package/vendors/claude/agents/wtfp/prose-polisher.md +166 -0
  41. package/vendors/claude/agents/wtfp/research-synthesizer.md +215 -0
  42. package/vendors/claude/agents/wtfp/section-planner.md +364 -0
  43. package/vendors/claude/agents/wtfp/section-reviewer.md +182 -0
  44. package/vendors/claude/agents/wtfp/section-writer.md +312 -0
  45. package/vendors/claude/commands/wtfp/add-todo.md +108 -0
  46. package/vendors/claude/commands/wtfp/analyze-bib.md +58 -236
  47. package/vendors/claude/commands/wtfp/audit-milestone.md +286 -0
  48. package/vendors/claude/commands/wtfp/check-refs.md +60 -133
  49. package/vendors/claude/commands/wtfp/check-todos.md +152 -0
  50. package/vendors/claude/commands/wtfp/checkpoint.md +105 -0
  51. package/vendors/claude/commands/wtfp/contribute.md +1 -1
  52. package/vendors/claude/commands/wtfp/create-outline.md +109 -195
  53. package/vendors/claude/commands/wtfp/create-poster.md +1 -1
  54. package/vendors/claude/commands/wtfp/create-slides.md +1 -1
  55. package/vendors/claude/commands/wtfp/discuss-section.md +1 -1
  56. package/vendors/claude/commands/wtfp/execute-outline.md +257 -0
  57. package/vendors/claude/commands/wtfp/export-latex.md +1 -1
  58. package/vendors/claude/commands/wtfp/help.md +174 -280
  59. package/vendors/claude/commands/wtfp/insert-section.md +1 -1
  60. package/vendors/claude/commands/wtfp/list-assumptions.md +1 -1
  61. package/vendors/claude/commands/wtfp/map-project.md +35 -124
  62. package/vendors/claude/commands/wtfp/new-paper.md +85 -320
  63. package/vendors/claude/commands/wtfp/pause-writing.md +1 -1
  64. package/vendors/claude/commands/wtfp/plan-milestone-gaps.md +255 -0
  65. package/vendors/claude/commands/wtfp/plan-revision.md +1 -1
  66. package/vendors/claude/commands/wtfp/plan-section.md +165 -190
  67. package/vendors/claude/commands/wtfp/polish-prose.md +66 -118
  68. package/vendors/claude/commands/wtfp/progress.md +82 -254
  69. package/vendors/claude/commands/wtfp/quick.md +107 -0
  70. package/vendors/claude/commands/wtfp/remove-section.md +1 -1
  71. package/vendors/claude/commands/wtfp/report-bug.md +1 -1
  72. package/vendors/claude/commands/wtfp/request-feature.md +1 -1
  73. package/vendors/claude/commands/wtfp/research-gap.md +138 -150
  74. package/vendors/claude/commands/wtfp/resume-writing.md +1 -1
  75. package/vendors/claude/commands/wtfp/review-section.md +55 -333
  76. package/vendors/claude/commands/wtfp/settings.md +197 -0
  77. package/vendors/claude/commands/wtfp/submit-milestone.md +248 -99
  78. package/vendors/claude/commands/wtfp/update.md +112 -0
  79. package/vendors/claude/commands/wtfp/verify-work.md +254 -0
  80. package/vendors/claude/commands/wtfp/write-section.md +144 -180
  81. package/vendors/gemini/agents/wtfp/argument-verifier.md +184 -0
  82. package/vendors/gemini/agents/wtfp/citation-expert.md +41 -0
  83. package/vendors/gemini/agents/wtfp/citation-formatter.md +38 -0
  84. package/vendors/gemini/agents/wtfp/coherence-checker.md +162 -0
  85. package/vendors/gemini/agents/wtfp/outliner.md +252 -0
  86. package/vendors/gemini/agents/wtfp/plan-checker.md +244 -0
  87. package/vendors/gemini/agents/wtfp/prose-polisher.md +158 -0
  88. package/vendors/gemini/agents/wtfp/research-synthesizer.md +205 -0
  89. package/vendors/gemini/agents/wtfp/section-planner.md +355 -0
  90. package/vendors/gemini/agents/wtfp/section-reviewer.md +175 -0
  91. package/vendors/gemini/agents/wtfp/section-writer.md +304 -0
  92. package/vendors/gemini/commands/wtfp/add-todo.toml +102 -0
  93. package/vendors/gemini/commands/wtfp/analyze-bib.toml +126 -0
  94. package/vendors/gemini/commands/wtfp/audit-milestone.toml +278 -0
  95. package/vendors/gemini/commands/wtfp/check-refs.toml +123 -0
  96. package/vendors/gemini/commands/wtfp/check-todos.toml +145 -0
  97. package/vendors/gemini/commands/wtfp/checkpoint.toml +96 -0
  98. package/vendors/gemini/commands/wtfp/contribute.toml +269 -0
  99. package/vendors/gemini/commands/wtfp/create-outline.toml +180 -0
  100. package/vendors/gemini/commands/wtfp/create-poster.toml +36 -0
  101. package/vendors/gemini/commands/wtfp/create-slides.toml +35 -0
  102. package/vendors/gemini/commands/wtfp/discuss-section.toml +62 -0
  103. package/vendors/gemini/commands/wtfp/execute-outline.toml +247 -0
  104. package/vendors/gemini/commands/wtfp/export-latex.toml +209 -0
  105. package/vendors/gemini/commands/wtfp/help.toml +184 -0
  106. package/vendors/gemini/commands/wtfp/insert-section.toml +123 -0
  107. package/vendors/gemini/commands/wtfp/list-assumptions.toml +104 -0
  108. package/vendors/gemini/commands/wtfp/map-project.toml +99 -0
  109. package/vendors/gemini/commands/wtfp/new-paper.toml +160 -0
  110. package/vendors/gemini/commands/wtfp/pause-writing.toml +140 -0
  111. package/vendors/gemini/commands/wtfp/plan-milestone-gaps.toml +249 -0
  112. package/vendors/gemini/commands/wtfp/plan-revision.toml +171 -0
  113. package/vendors/gemini/commands/wtfp/plan-section.toml +212 -0
  114. package/vendors/gemini/commands/wtfp/polish-prose.toml +114 -0
  115. package/vendors/gemini/commands/wtfp/progress.toml +145 -0
  116. package/vendors/gemini/commands/wtfp/quick.toml +96 -0
  117. package/vendors/gemini/commands/wtfp/remove-section.toml +140 -0
  118. package/vendors/gemini/commands/wtfp/report-bug.toml +126 -0
  119. package/vendors/gemini/commands/wtfp/request-feature.toml +155 -0
  120. package/vendors/gemini/commands/wtfp/research-gap.toml +214 -0
  121. package/vendors/gemini/commands/wtfp/resume-writing.toml +136 -0
  122. package/vendors/gemini/commands/wtfp/review-section.toml +121 -0
  123. package/vendors/gemini/commands/wtfp/settings.toml +191 -0
  124. package/vendors/gemini/commands/wtfp/submit-milestone.toml +351 -0
  125. package/vendors/gemini/commands/wtfp/update.toml +107 -0
  126. package/vendors/gemini/commands/wtfp/verify-work.toml +245 -0
  127. package/vendors/gemini/commands/wtfp/write-section.toml +228 -0
  128. package/vendors/opencode/agents/wtfp/argument-verifier.md +184 -0
  129. package/vendors/opencode/agents/wtfp/citation-expert.md +41 -0
  130. package/vendors/opencode/agents/wtfp/citation-formatter.md +38 -0
  131. package/vendors/opencode/agents/wtfp/coherence-checker.md +162 -0
  132. package/vendors/opencode/agents/wtfp/outliner.md +252 -0
  133. package/vendors/opencode/agents/wtfp/plan-checker.md +244 -0
  134. package/vendors/opencode/agents/wtfp/prose-polisher.md +158 -0
  135. package/vendors/opencode/agents/wtfp/research-synthesizer.md +205 -0
  136. package/vendors/opencode/agents/wtfp/section-planner.md +355 -0
  137. package/vendors/opencode/agents/wtfp/section-reviewer.md +175 -0
  138. package/vendors/opencode/agents/wtfp/section-writer.md +304 -0
  139. package/vendors/opencode/commands/wtfp/add-todo.md +103 -0
  140. package/vendors/opencode/commands/wtfp/analyze-bib.md +127 -0
  141. package/vendors/opencode/commands/wtfp/audit-milestone.md +279 -0
  142. package/vendors/opencode/commands/wtfp/check-refs.md +124 -0
  143. package/vendors/opencode/commands/wtfp/check-todos.md +146 -0
  144. package/vendors/opencode/commands/wtfp/checkpoint.md +97 -0
  145. package/vendors/opencode/commands/wtfp/contribute.md +266 -0
  146. package/vendors/opencode/commands/wtfp/create-outline.md +181 -0
  147. package/vendors/opencode/commands/wtfp/create-poster.md +37 -0
  148. package/vendors/opencode/commands/wtfp/create-slides.md +36 -0
  149. package/vendors/opencode/commands/wtfp/discuss-section.md +63 -0
  150. package/vendors/opencode/commands/wtfp/execute-outline.md +248 -0
  151. package/vendors/opencode/commands/wtfp/export-latex.md +210 -0
  152. package/vendors/opencode/commands/wtfp/help.md +185 -0
  153. package/vendors/opencode/commands/wtfp/insert-section.md +124 -0
  154. package/vendors/opencode/commands/wtfp/list-assumptions.md +105 -0
  155. package/vendors/opencode/commands/wtfp/map-project.md +100 -0
  156. package/vendors/opencode/commands/wtfp/new-paper.md +161 -0
  157. package/vendors/opencode/commands/wtfp/pause-writing.md +141 -0
  158. package/vendors/opencode/commands/wtfp/plan-milestone-gaps.md +250 -0
  159. package/vendors/opencode/commands/wtfp/plan-revision.md +174 -0
  160. package/vendors/opencode/commands/wtfp/plan-section.md +214 -0
  161. package/vendors/opencode/commands/wtfp/polish-prose.md +115 -0
  162. package/vendors/opencode/commands/wtfp/progress.md +146 -0
  163. package/vendors/opencode/commands/wtfp/quick.md +97 -0
  164. package/vendors/opencode/commands/wtfp/remove-section.md +141 -0
  165. package/vendors/opencode/commands/wtfp/report-bug.md +127 -0
  166. package/vendors/opencode/commands/wtfp/request-feature.md +156 -0
  167. package/vendors/opencode/commands/wtfp/research-gap.md +215 -0
  168. package/vendors/opencode/commands/wtfp/resume-writing.md +137 -0
  169. package/vendors/opencode/commands/wtfp/review-section.md +123 -0
  170. package/vendors/opencode/commands/wtfp/settings.md +192 -0
  171. package/vendors/opencode/commands/wtfp/submit-milestone.md +352 -0
  172. package/vendors/opencode/commands/wtfp/update.md +108 -0
  173. package/vendors/opencode/commands/wtfp/verify-work.md +246 -0
  174. package/vendors/opencode/commands/wtfp/write-section.md +228 -0
  175. package/vendors/claude/agents/wtfp/citation-retriever.md +0 -31
@@ -1,404 +1,169 @@
1
1
  ---
2
2
  name: wtfp:new-paper
3
- description: Initialize a new paper with deep context gathering and PROJECT.md
3
+ description: Start a new paper with guided interview and setup
4
4
  allowed-tools:
5
5
  - Read
6
6
  - Bash
7
7
  - Write
8
+ - Glob
9
+ - Grep
10
+ - Task
8
11
  - AskUserQuestion
9
12
  ---
10
13
 
11
- <objective>
12
-
13
- Initialize a new academic paper through comprehensive context gathering.
14
-
15
- This is the most leveraged moment in any writing project. Deep questioning here means better structure, better arguments, better outcomes.
16
-
17
- Creates `.planning/` with PROJECT.md, config.json, and structure documents.
18
-
19
- </objective>
20
-
21
14
  <execution_context>
22
-
23
15
  @~/.claude/write-the-f-paper/references/principles.md
24
16
  @~/.claude/write-the-f-paper/references/questioning.md
25
17
  @~/.claude/write-the-f-paper/templates/project.md
26
18
  @~/.claude/write-the-f-paper/templates/config.json
27
19
  @~/.claude/write-the-f-paper/venues/
28
-
29
20
  </execution_context>
30
21
 
31
- <process>
32
-
33
- <step name="setup">
34
-
35
- **MANDATORY FIRST STEP — Execute these checks before ANY user interaction:**
36
-
37
- 1. **Abort if project exists:**
38
- ```bash
39
- [ -f .planning/PROJECT.md ] && echo "ERROR: Paper already initialized. Use /wtfp:progress" && exit 1
40
- ```
41
-
42
- 2. **Initialize git repo in THIS directory** (required for version tracking):
43
- ```bash
44
- if [ -d .git ] || [ -f .git ]; then
45
- echo "Git repo exists in current directory"
46
- else
47
- git init
48
- echo "Initialized new git repo"
49
- fi
50
- ```
51
-
52
- 3. **Detect existing writing materials (brownfield detection):**
53
- ```bash
54
- # Check for existing writing files
55
- WRITING_FILES=$(find . -name "*.tex" -o -name "*.md" -o -name "*.bib" -o -name "*.docx" 2>/dev/null | grep -v node_modules | grep -v .git | grep -v .planning | head -20)
56
- HAS_SOURCES=$([ -d sources ] || [ -d references ] || [ -d literature ] && echo "yes")
57
- HAS_SOURCE_MAP=$([ -d .planning/sources ] && echo "yes")
58
- ```
59
-
60
- **You MUST run all bash commands above using the Bash tool before proceeding.**
22
+ <objective>
23
+ Initialize a new academic paper through comprehensive context gathering.
61
24
 
62
- </step>
25
+ **Orchestrator role:** Check preconditions, detect brownfield projects, gather paper vision through batched questioning, synthesize PROJECT.md + config.json + structure documents, commit.
63
26
 
64
- <step name="brownfield_offer">
27
+ Creates `.planning/` with PROJECT.md, config.json, and structure documents.
28
+ </objective>
65
29
 
66
- **If existing writing detected and .planning/sources/ doesn't exist:**
30
+ <context>
31
+ No arguments. Runs in current directory.
32
+ </context>
67
33
 
68
- Check the results from setup step:
69
- - If `WRITING_FILES` is non-empty OR `HAS_SOURCES` is "yes"
70
- - AND `HAS_SOURCE_MAP` is NOT "yes"
34
+ <process>
71
35
 
72
- Use AskUserQuestion:
73
- - header: "Existing Material"
74
- - question: "I detected existing writing materials. Would you like to map them first?"
75
- - options:
76
- - "Map sources first" — Run /wtfp:map-project to index existing literature/drafts (Recommended)
77
- - "Skip mapping" — Proceed with paper initialization
36
+ ## 1. Validate Environment
78
37
 
79
- **If "Map sources first":**
80
- ```
81
- Run `/wtfp:map-project` first, then return to `/wtfp:new-paper`
38
+ ```bash
39
+ [ -f .planning/PROJECT.md ] && echo "ERROR: Paper already initialized. Use /wtfp:progress" && exit 1
82
40
  ```
83
- Exit command.
84
41
 
85
- **If "Skip mapping":** Continue to type step.
86
-
87
- **If no existing materials detected OR sources already mapped:** Continue to type step.
42
+ Initialize git if needed:
43
+ ```bash
44
+ [ -d .git ] || [ -f .git ] || git init
45
+ ```
88
46
 
89
- </step>
47
+ ## 2. Brownfield Detection
90
48
 
91
- <step name="initial_batch">
49
+ ```bash
50
+ WRITING_FILES=$(find . -name "*.tex" -o -name "*.md" -o -name "*.bib" -o -name "*.docx" 2>/dev/null | grep -v node_modules | grep -v .git | grep -v .planning | head -20)
51
+ HAS_SOURCES=$([ -d sources ] || [ -d references ] || [ -d literature ] && echo "yes")
52
+ HAS_SOURCE_MAP=$([ -d .planning/sources ] && echo "yes")
53
+ ```
92
54
 
93
- **Gather Core Context (Batched):**
55
+ **If materials detected and no source map:** Offer `/wtfp:map-project` first via AskUserQuestion.
94
56
 
95
- Use AskUserQuestion to collect the foundational pillars in one turn.
57
+ ## 3. Gather Core Context (Batched)
96
58
 
59
+ Use AskUserQuestion — collect foundations in one turn:
97
60
  - header: "Paper Foundations"
98
- - question: "To initialize the project, I need to understand 4 things. Answer what you can, and I'll infer or ask about the rest:\n\n1. **Type:** (Research paper, Grant, Thesis, etc.)\n2. **Venue:** (Target conference/journal, e.g., NeurIPS, CHI, Nature)\n3. **Core Argument:** (The one main thing you are proving/proposing)\n4. **Audience:** (Who is this for?)"
99
- - options:
100
- - "I provided the details" — Continue with what I said
101
- - "Guide me step-by-step" — I prefer individual questions
102
-
103
- **If "Guide me step-by-step":**
104
- Fall back to the sequential interview mode (ask Type, then Venue, then Argument).
61
+ - question: "1. **Type** (Research paper, Grant, Thesis)\n2. **Venue** (NeurIPS, CHI, Nature, etc.)\n3. **Core Argument** (one thing you're proving)\n4. **Audience** (who is this for?)"
62
+ - options: "I provided the details" | "Guide me step-by-step"
105
63
 
106
- **If "I provided the details":**
107
- Parse the response to extract: `document_type`, `target_venue`, `core_argument`, `target_audience`.
64
+ If step-by-step selected, ask Type → Venue → Argument sequentially.
108
65
 
109
- </step>
66
+ ## 4. Venue Template Selection
110
67
 
111
- <step name="venue_template">
112
-
113
- **Select venue template (if not inferred):**
114
-
115
- If `document_type` or `target_venue` is ambiguous, ask specifically for the template:
116
-
117
- Use AskUserQuestion:
68
+ If ambiguous, ask via AskUserQuestion:
118
69
  - header: "Venue Structure"
119
- - question: "Based on your input, which structure fits best?"
120
- - options:
121
- - "ACM CS" — Systems/Databases (SIGMOD, SOSP)
122
- - "IEEE CS" — HPC/Systems (SC, IPDPS)
123
- - "ML/AI" — NeurIPS, ICML, ICLR style
124
- - "Nature/Science" — Life Sciences IMRaD
125
- - "Grant" — Funding Proposal
126
- - "Thesis" — Dissertation Chapter
127
- - "Other" — Custom
128
-
129
- **Load venue template:**
130
- (Load corresponding YAML from `~/.claude/write-the-f-paper/venues/`)
131
-
132
- </step>
70
+ - options: "ACM CS" | "IEEE CS" | "ML/AI" | "Nature/Science" | "Thesis"
133
71
 
134
- <step name="refine_argument">
72
+ Load corresponding YAML from `~/.claude/write-the-f-paper/venues/`.
135
73
 
136
- **Sharpen the Core:**
74
+ ## 5. Sharpen Core Argument
137
75
 
138
- If `core_argument` was weak or missing in the batch, drill down now.
139
-
140
- Use AskUserQuestion:
76
+ If core_argument was weak, drill down:
141
77
  - header: "Refine Core"
142
- - question: "Let's sharpen the core argument. If reviewers remember ONE thing, what is it?"
143
- - options:
144
- - "The Method" — A new way of doing X
145
- - "The Findings" — We discovered Y
146
- - "The Theory" — A new perspective on Z
147
- - "The System" — We built system Q
148
- - "Write my own" — (User types input)
149
-
150
- </step>
78
+ - question: "If reviewers remember ONE thing, what is it?"
79
+ - options: "The Method" | "The Findings" | "The Theory" | "The System"
151
80
 
152
- <step name="constraints_batch">
81
+ ## 6. Gather Constraints
153
82
 
154
- **Gather Constraints & Boundaries (Batched):**
155
-
156
- Use AskUserQuestion:
157
83
  - header: "Scope & Limits"
158
- - question: "Finally, define the box we are playing in:\n\n1. **Out of Scope:** What are we explicitly NOT doing?\n2. **Hard Constraints:** Page limits, deadlines, data restrictions?"
159
- - options:
160
- - "Provided details" — Save and continue
161
- - "No constraints" — Standard length, no specific exclusions
162
-
163
- </step>
84
+ - question: "1. **Out of Scope?** 2. **Hard Constraints?** (page limits, deadlines)"
85
+ - options: "Provided details" | "No constraints"
164
86
 
165
- <step name="project">
87
+ ## 7. Synthesize PROJECT.md
166
88
 
167
- Synthesize all context into `.planning/PROJECT.md`:
89
+ Write `.planning/PROJECT.md` using template from `~/.claude/write-the-f-paper/templates/project.md`.
168
90
 
169
- ```markdown
170
- # [Paper Title]
91
+ Populate: What This Is, Core Argument, Requirements (Must/Should/Out of Scope), Target Audience, Constraints, Key Decisions.
171
92
 
172
- ## What This Is
173
- [Paper type, target venue, approximate length]
93
+ ## 8. Create Structure Documents
174
94
 
175
- ## Core Argument
176
- [The thesis in 1-2 sentences — the one thing reviewers should remember]
95
+ Create `.planning/structure/` with:
96
+ - **argument-map.md** — Central thesis, supporting claims, logical flow, gaps
97
+ - **outline.md** — Venue template sections, word budget table
98
+ - **narrative-arc.md** — Problem/Journey/Resolution, reader experience
177
99
 
178
- ## Requirements
100
+ ## 9. Workflow Mode & Config
179
101
 
180
- ### Must Have
181
- - [ ] [Required element 1]
182
- - [ ] [Required element 2]
183
- - [ ] [Required element 3]
102
+ Ask mode (Interactive / Flow) and depth (Quick / Standard / Comprehensive) via AskUserQuestion.
184
103
 
185
- ### Should Have
186
- - [ ] [Desired element 1]
187
- - [ ] [Desired element 2]
104
+ ## 9b. Git & Planning Settings
188
105
 
189
- ### Out of Scope
190
- - [Exclusion 1] — [why]
191
- - [Exclusion 2] — [why]
192
-
193
- ## Target Audience
194
- [Who reads this, what they care about, what they already know]
195
-
196
- ## Constraints
197
- - [Constraint 1]: [detail]
198
- - [Constraint 2]: [detail]
199
-
200
- ## Key Decisions
201
-
202
- | Decision | Rationale | Outcome |
203
- |----------|-----------|---------|
204
- | [Choice from questioning] | [Why] | — Pending |
205
-
206
- ---
207
- *Last updated: [date] after initialization*
208
- ```
209
-
210
- Do not compress. Capture everything gathered.
211
-
212
- </step>
213
-
214
- <step name="structure">
215
-
216
- **Create structure documents:**
217
-
218
- Create `.planning/structure/` directory.
219
-
220
- **argument-map.md:**
221
- ```markdown
222
- # Argument Map
223
-
224
- ## Central Thesis
225
- [From core argument above]
226
-
227
- ## Supporting Claims
228
- ### Claim 1: [Statement]
229
- - Evidence: [What will support this]
230
- - Strength: [to be determined]
231
-
232
- ### Claim 2: [Statement]
233
- - Evidence: [What will support this]
234
- - Strength: [to be determined]
235
-
236
- ## Logical Flow
237
- [How claims build to thesis]
238
-
239
- ## Gaps
240
- - [Claims needing evidence]
241
- - [Logical leaps to address]
242
- ```
243
-
244
- **outline.md:**
245
- ```markdown
246
- # Document Outline
247
-
248
- ## Venue Template: [acm-cs / ieee-cs / arxiv-ml / nature / thesis / custom]
249
-
250
- ## Sections
251
- [Generated from venue template - see ~/.claude/write-the-f-paper/venues/]
252
-
253
- | # | Section | Purpose | Word Ratio |
254
- |---|---------|---------|------------|
255
- [Populated from venue template structure]
256
-
257
- ## Word Budget
258
- | Section | Target | Current |
259
- |---------|--------|---------|
260
- | Abstract | [X] | 0 |
261
- | [Section 1 from template] | [X] | 0 |
262
- | [Section 2 from template] | [X] | 0 |
263
- | [...] | | |
264
- | Total | [X] | 0 |
265
-
266
- ## Venue Notes
267
- [From venue template notes field - venue-specific guidance]
268
- ```
269
-
270
- **narrative-arc.md:**
271
- ```markdown
272
- # Narrative Arc
273
-
274
- ## Act 1: The Problem
275
- - World state: [Current understanding]
276
- - Tension: [What's missing]
277
- - Stakes: [Why it matters]
278
-
279
- ## Act 2: The Journey
280
- - Approach: [How you tackled it]
281
- - Discovery: [What you found]
282
-
283
- ## Act 3: The Resolution
284
- - Insight: [What it means]
285
- - Transformation: [How understanding changes]
286
-
287
- ## Reader Experience
288
- - Hook: [Why they keep reading]
289
- - Payoff: [The "aha" moment]
290
- ```
291
-
292
- </step>
293
-
294
- <step name="mode">
295
-
296
- Ask workflow mode preference:
297
-
298
- Use AskUserQuestion:
299
-
300
- - header: "Mode"
301
- - question: "How do you want to work?"
106
+ Ask about git tracking via AskUserQuestion:
107
+ - header: "Git & Planning"
108
+ - question: "Track planning documents in git?"
302
109
  - options:
303
- - "Interactive" — Confirm at each step
304
- - "Flow" — Auto-approve, minimize interruptions
305
-
306
- </step>
110
+ - "Yes (default)" -- commit_docs: true, planning artifacts are version-controlled
111
+ - "No" -- commit_docs: false, only paper content is committed
307
112
 
308
- <step name="depth">
113
+ Use the answer to set `planning.commit_docs` in config.json.
309
114
 
310
- Ask planning depth preference:
115
+ Ask about branching strategy via AskUserQuestion:
116
+ - header: "Git Branching"
117
+ - question: "Branch strategy for git history?"
118
+ - options:
119
+ - "None (default)" -- all commits on current branch, git.branching_strategy: "none"
120
+ - "Section branches" -- one branch per section, merged on review pass, git.branching_strategy: "section"
121
+ - "Submission branches" -- branch per milestone/submission target, git.branching_strategy: "submission"
311
122
 
312
- Use AskUserQuestion:
123
+ Use the answer to set `git.branching_strategy` in config.json.
313
124
 
314
- - header: "Depth"
315
- - question: "How thorough should section planning be?"
316
- - options:
317
- - "Quick" — Draft fast, iterate later (minimal planning)
318
- - "Standard" — Balanced planning and writing
319
- - "Comprehensive" — Thorough outlines before writing
320
-
321
- Create `.planning/config.json`:
322
- ```json
323
- {
324
- "mode": "[chosen mode]",
325
- "depth": "[chosen depth]",
326
- "document_type": "[paper/grant/thesis/other]",
327
- "venue_template": "[acm-cs/ieee-cs/arxiv-ml/nature/thesis/custom]",
328
- "citation_style": "[from venue template]",
329
- "gates": {
330
- "confirm_project": true,
331
- "confirm_sections": true,
332
- "confirm_outline": true,
333
- "confirm_plan": true,
334
- "review_before_submit": true
335
- }
336
- }
337
- ```
125
+ ## 9c. Write Config
338
126
 
339
- </step>
127
+ Write `.planning/config.json` with the full v0.5.0 schema: mode, depth, document_type, output_format, model_profile ("balanced"), venue_template, gates (8 gate types: confirm_outline, confirm_plan, confirm_write, confirm_review, execute_next_section, issues_review, confirm_transition, confirm_submission), writing, workflow, verification, planning (commit_docs, search_gitignored), parallelization, safety (always_confirm_destructive, always_confirm_external_services, backup_before_major_edits), git (branching_strategy, section_branch_template, submission_branch_template, squash_on_merge).
340
128
 
341
- <step name="commit">
129
+ ## 10. Commit
342
130
 
343
131
  ```bash
344
132
  git add .planning/PROJECT.md .planning/config.json .planning/structure/
345
- git commit -m "$(cat <<'EOF'
346
- docs: initialize [paper-title]
347
-
348
- [One-liner core argument]
349
-
350
- Creates PROJECT.md with paper vision and structure documents.
351
- EOF
352
- )"
133
+ git commit -m "docs: initialize [paper-title]"
353
134
  ```
354
135
 
355
- </step>
356
-
357
- <step name="done">
136
+ </process>
358
137
 
359
- Present completion with next steps:
138
+ <offer_next>
360
139
 
361
- ```
362
- Paper initialized:
140
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
141
+ WTF-P ► PAPER INITIALIZED ✓
142
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
363
143
 
364
144
  - Project: .planning/PROJECT.md
365
- - Config: .planning/config.json (mode: [chosen mode])
366
- - Structure: .planning/structure/ (argument-map, outline, narrative-arc)
367
- [If .planning/sources/ exists:] - Sources: .planning/sources/ (literature, data, prior-drafts)
145
+ - Config: .planning/config.json (mode: [chosen])
146
+ - Structure: .planning/structure/
368
147
 
369
- ---
148
+ ───────────────────────────────────────────
370
149
 
371
150
  ## ▶ Next Up
372
151
 
373
- **[Paper Title]** — create section outline
152
+ **Create section outline**
374
153
 
375
154
  `/wtfp:create-outline`
376
155
 
377
156
  <sub>`/clear` first → fresh context window</sub>
378
157
 
379
- ---
380
- ```
381
-
382
- </step>
158
+ ───────────────────────────────────────────
383
159
 
384
- </process>
385
-
386
- <output>
387
-
388
- - `.planning/PROJECT.md`
389
- - `.planning/config.json`
390
- - `.planning/structure/argument-map.md`
391
- - `.planning/structure/outline.md`
392
- - `.planning/structure/narrative-arc.md`
393
-
394
- </output>
160
+ </offer_next>
395
161
 
396
162
  <success_criteria>
397
-
398
163
  - [ ] Deep questioning completed (not rushed)
399
164
  - [ ] PROJECT.md captures paper vision with core argument
400
165
  - [ ] Structure documents created (argument-map, outline, narrative-arc)
401
- - [ ] config.json has workflow mode
166
+ - [ ] config.json has gates, safety, planning, and git sections
167
+ - [ ] config.json has workflow mode and model_profile
402
168
  - [ ] All committed to git
403
-
404
169
  </success_criteria>
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: wtfp:pause-writing
3
- description: Create context handoff when pausing work mid-section
3
+ description: Save current progress so you can resume later
4
4
  allowed-tools:
5
5
  - Read
6
6
  - Bash