wtf-p 0.1.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 (92) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +338 -0
  3. package/bin/install.js +358 -0
  4. package/bin/uninstall.js +485 -0
  5. package/commands/wtfp/analyze-bib.md +326 -0
  6. package/commands/wtfp/check-refs.md +205 -0
  7. package/commands/wtfp/create-outline.md +275 -0
  8. package/commands/wtfp/discuss-section.md +71 -0
  9. package/commands/wtfp/export-latex.md +216 -0
  10. package/commands/wtfp/help.md +342 -0
  11. package/commands/wtfp/insert-section.md +130 -0
  12. package/commands/wtfp/list-assumptions.md +109 -0
  13. package/commands/wtfp/map-project.md +197 -0
  14. package/commands/wtfp/new-paper.md +443 -0
  15. package/commands/wtfp/pause-writing.md +145 -0
  16. package/commands/wtfp/plan-revision.md +180 -0
  17. package/commands/wtfp/plan-section.md +247 -0
  18. package/commands/wtfp/polish-prose.md +177 -0
  19. package/commands/wtfp/progress.md +325 -0
  20. package/commands/wtfp/remove-section.md +147 -0
  21. package/commands/wtfp/research-gap.md +235 -0
  22. package/commands/wtfp/resume-writing.md +142 -0
  23. package/commands/wtfp/review-section.md +409 -0
  24. package/commands/wtfp/submit-milestone.md +211 -0
  25. package/commands/wtfp/write-section.md +273 -0
  26. package/package.json +40 -0
  27. package/write-the-f-paper/references/checkpoints.md +213 -0
  28. package/write-the-f-paper/references/continuation-format.md +223 -0
  29. package/write-the-f-paper/references/git-integration.md +241 -0
  30. package/write-the-f-paper/references/imrad-structure.md +212 -0
  31. package/write-the-f-paper/references/length-estimation.md +148 -0
  32. package/write-the-f-paper/references/plan-format.md +361 -0
  33. package/write-the-f-paper/references/principles.md +158 -0
  34. package/write-the-f-paper/references/questioning.md +132 -0
  35. package/write-the-f-paper/references/research-pitfalls.md +208 -0
  36. package/write-the-f-paper/templates/config.json +30 -0
  37. package/write-the-f-paper/templates/context.md +179 -0
  38. package/write-the-f-paper/templates/continue-here.md +142 -0
  39. package/write-the-f-paper/templates/data-inventory.md +142 -0
  40. package/write-the-f-paper/templates/discovery.md +146 -0
  41. package/write-the-f-paper/templates/issues.md +59 -0
  42. package/write-the-f-paper/templates/manuscript.md +253 -0
  43. package/write-the-f-paper/templates/narrative-arc.md +227 -0
  44. package/write-the-f-paper/templates/outline.md +274 -0
  45. package/write-the-f-paper/templates/phase-prompt.md +348 -0
  46. package/write-the-f-paper/templates/prior-drafts.md +204 -0
  47. package/write-the-f-paper/templates/project-context/argument-structure.md +267 -0
  48. package/write-the-f-paper/templates/project-context/bibliography.md +152 -0
  49. package/write-the-f-paper/templates/project-context/gaps.md +122 -0
  50. package/write-the-f-paper/templates/project-context/imrad.md +140 -0
  51. package/write-the-f-paper/templates/project-context/peer-review.md +152 -0
  52. package/write-the-f-paper/templates/project-context/style-guide.md +198 -0
  53. package/write-the-f-paper/templates/project-context/tools.md +170 -0
  54. package/write-the-f-paper/templates/project.md +185 -0
  55. package/write-the-f-paper/templates/research.md +384 -0
  56. package/write-the-f-paper/templates/review-comments.md +253 -0
  57. package/write-the-f-paper/templates/revision-issues.md +169 -0
  58. package/write-the-f-paper/templates/roadmap.md +187 -0
  59. package/write-the-f-paper/templates/section-archive.md +178 -0
  60. package/write-the-f-paper/templates/section-context.md +114 -0
  61. package/write-the-f-paper/templates/section.md +128 -0
  62. package/write-the-f-paper/templates/state.md +244 -0
  63. package/write-the-f-paper/templates/summary.md +277 -0
  64. package/write-the-f-paper/venues/acm-cs.yaml +102 -0
  65. package/write-the-f-paper/venues/arxiv-ml.yaml +103 -0
  66. package/write-the-f-paper/venues/ieee-cs.yaml +100 -0
  67. package/write-the-f-paper/venues/nature.yaml +81 -0
  68. package/write-the-f-paper/venues/thesis-chapter.yaml +101 -0
  69. package/write-the-f-paper/workflows/create-outline.md +462 -0
  70. package/write-the-f-paper/workflows/create-outline.wcn.md +194 -0
  71. package/write-the-f-paper/workflows/discuss-section.md +249 -0
  72. package/write-the-f-paper/workflows/discuss-section.wcn.md +63 -0
  73. package/write-the-f-paper/workflows/execute-section.md +704 -0
  74. package/write-the-f-paper/workflows/execute-section.wcn.md +219 -0
  75. package/write-the-f-paper/workflows/list-assumptions.md +183 -0
  76. package/write-the-f-paper/workflows/list-assumptions.wcn.md +42 -0
  77. package/write-the-f-paper/workflows/lit-review-phase.md +281 -0
  78. package/write-the-f-paper/workflows/lit-review-phase.wcn.md +92 -0
  79. package/write-the-f-paper/workflows/map-project.md +359 -0
  80. package/write-the-f-paper/workflows/map-project.wcn.md +73 -0
  81. package/write-the-f-paper/workflows/plan-section.md +409 -0
  82. package/write-the-f-paper/workflows/plan-section.wcn.md +236 -0
  83. package/write-the-f-paper/workflows/research-gap.md +469 -0
  84. package/write-the-f-paper/workflows/research-gap.wcn.md +119 -0
  85. package/write-the-f-paper/workflows/resume-paper.md +274 -0
  86. package/write-the-f-paper/workflows/resume-paper.wcn.md +93 -0
  87. package/write-the-f-paper/workflows/review-section.md +329 -0
  88. package/write-the-f-paper/workflows/review-section.wcn.md +91 -0
  89. package/write-the-f-paper/workflows/submit-draft.md +368 -0
  90. package/write-the-f-paper/workflows/submit-draft.wcn.md +69 -0
  91. package/write-the-f-paper/workflows/transition.md +375 -0
  92. package/write-the-f-paper/workflows/transition.wcn.md +113 -0
@@ -0,0 +1,148 @@
1
+ <length_estimation>
2
+ Writing plans must maintain consistent quality from first task to last. This requires understanding quality degradation and splitting aggressively.
3
+
4
+ <quality_insight>
5
+ Claude degrades when it *perceives* context pressure and enters "completion mode."
6
+
7
+ | Context Usage | Quality | Claude's State |
8
+ |---------------|---------|----------------|
9
+ | 0-30% | PEAK | Thorough, nuanced writing |
10
+ | 30-50% | GOOD | Confident, solid prose |
11
+ | 50-70% | DEGRADING | Efficiency mode begins |
12
+ | 70%+ | POOR | Rushed, generic text |
13
+
14
+ **The 40-50% inflection point:** Claude sees context mounting and thinks "I'd better conserve now." Result: "I'll finish the remaining paragraphs more concisely" = quality crash.
15
+
16
+ **The rule:** Stop BEFORE quality degrades, not at context limit.
17
+ </quality_insight>
18
+
19
+ <context_target>
20
+ **Plans should complete within ~50% of context usage.**
21
+
22
+ Why 50% not 80%?
23
+ - No context anxiety possible
24
+ - Quality maintained start to finish
25
+ - Room for unexpected complexity
26
+ - If you target 80%, you've already spent 40% in degradation mode
27
+ </context_target>
28
+
29
+ <task_rule>
30
+ **Each plan: 2-3 tasks maximum. Stay under 50% context.**
31
+
32
+ | Section Complexity | Tasks/Plan | Context/Task | Total |
33
+ |-------------------|------------|--------------|-------|
34
+ | Simple (abstract, short sections) | 3 | ~10-15% | ~30-45% |
35
+ | Medium (methods, results) | 2-3 | ~15-20% | ~40-50% |
36
+ | Complex (intro, discussion) | 2 | ~20-25% | ~40-50% |
37
+
38
+ **When in doubt: Default to 2 tasks.** Better to have an extra plan than degraded quality.
39
+ </task_rule>
40
+
41
+ <word_count_context_mapping>
42
+ | Words Written | Context Impact |
43
+ |---------------|----------------|
44
+ | 100-300 words | ~10-15% (small) |
45
+ | 300-600 words | ~20-30% (medium) |
46
+ | 600+ words | ~40%+ (large - split) |
47
+
48
+ | Section Type | Context/Task |
49
+ |--------------|--------------|
50
+ | Abstract (150-250 words) | ~15% |
51
+ | Introduction (~1000 words) | ~40% (split into 2-3 plans) |
52
+ | Methods (~1500 words) | ~50% (split into 2-3 plans) |
53
+ | Results (~1000 words) | ~40% (split into 2 plans) |
54
+ | Discussion (~1500 words) | ~50% (split into 2-3 plans) |
55
+ </word_count_context_mapping>
56
+
57
+ <split_signals>
58
+
59
+ <always_split>
60
+ - **More than 3 paragraph clusters** - Even if word count seems manageable
61
+ - **Multiple distinct arguments** - Each argument = separate plan
62
+ - **Section >800 words** - Split by paragraph groups
63
+ - **Multiple citation clusters** - One plan per evidence group
64
+ - **Introduction + Methods** - Never combine different section types
65
+ </always_split>
66
+
67
+ <consider_splitting>
68
+ - Estimated >600 words total
69
+ - Complex arguments requiring evidence
70
+ - Sections requiring different writing modes
71
+ - Natural semantic boundaries (opening → body → close)
72
+ </consider_splitting>
73
+ </split_signals>
74
+
75
+ <splitting_strategies>
76
+ **By paragraph:** Introduction → 01: Hook + gap, 02: Thesis + roadmap
77
+
78
+ **By argument:** Discussion → 01: Interpretation, 02: Implications, 03: Limitations + future
79
+
80
+ **By complexity:** Methods → 01: Design + participants, 02: Procedures, 03: Analysis
81
+
82
+ **By mode:** Results → 01: Scaffold main findings (user fills), 02: Co-author supporting analyses
83
+ </splitting_strategies>
84
+
85
+ <anti_patterns>
86
+ **Bad - Comprehensive plan:**
87
+ ```
88
+ Plan: "Complete Introduction"
89
+ Tasks: 6 (hook, context, gap, thesis, contributions, roadmap)
90
+ Result: Task 1-3 good, Task 4-6 rushed
91
+ ```
92
+
93
+ **Good - Atomic plans:**
94
+ ```
95
+ Plan 1: "Introduction Opening" (2 tasks: hook, context)
96
+ Plan 2: "Introduction Core" (2 tasks: gap, thesis)
97
+ Plan 3: "Introduction Close" (2 tasks: contributions, roadmap)
98
+ Each: 30-40% context, peak quality, atomic commits
99
+ ```
100
+ </anti_patterns>
101
+
102
+ <section_recommendations>
103
+
104
+ | Section | Recommended Plans | Tasks Each |
105
+ |---------|-------------------|------------|
106
+ | Abstract | 1 (reviewer mode) | 1-2 |
107
+ | Introduction | 2-3 | 2 each |
108
+ | Methods | 2-3 | 2-3 each |
109
+ | Results | 2 | 2 each |
110
+ | Discussion | 2-3 | 2 each |
111
+ | Conclusion | 1 | 2 |
112
+
113
+ **Total for typical paper:** 10-15 plans, not 6 (one per section)
114
+
115
+ </section_recommendations>
116
+
117
+ <depth_calibration>
118
+ **Depth controls plan COUNT, not plan SIZE.**
119
+
120
+ | Depth | Typical Sections | Typical Plans/Section | Tasks/Plan |
121
+ |-------|------------------|----------------------|------------|
122
+ | Quick | 4-5 | 1-2 | 2-3 |
123
+ | Standard | 5-6 | 2-3 | 2-3 |
124
+ | Comprehensive | 6-8 | 3-4 | 2-3 |
125
+
126
+ Tasks/plan is CONSTANT at 2-3. The 50% context rule applies universally.
127
+
128
+ **Key principle:** Derive from actual content. Depth determines how aggressively you combine things, not a target to hit.
129
+
130
+ - Comprehensive introduction = 4 plans (because intro genuinely has 4 components)
131
+ - Comprehensive abstract = 1 plan (because that's all it is)
132
+
133
+ Don't pad simple sections to hit a number. Don't compress complex sections to look efficient.
134
+ </depth_calibration>
135
+
136
+ <summary>
137
+ **2-3 tasks, 50% context target:**
138
+ - All writing: Peak quality
139
+ - Git: Atomic per-task commits
140
+ - Subagent plans: Fresh context
141
+
142
+ **The principle:** Aggressive atomicity. More plans, smaller scope, consistent quality.
143
+
144
+ **The rule:** If in doubt, split. Quality over consolidation. Always.
145
+
146
+ **Depth rule:** Depth increases plan COUNT, never plan SIZE.
147
+ </summary>
148
+ </length_estimation>
@@ -0,0 +1,361 @@
1
+ <overview>
2
+ Claude-executable writing plans have a specific format that enables Claude to write without interpretation. This reference defines what makes a plan executable vs. vague.
3
+
4
+ **Key insight:** PLAN.md IS the executable prompt. It contains everything Claude needs to write the section, including objective, context references, tasks, verification, success criteria, and output specification.
5
+ </overview>
6
+
7
+ <core_principle>
8
+ A plan is Claude-executable when Claude can read the PLAN.md and immediately start writing without asking clarifying questions.
9
+
10
+ If Claude has to guess the argument, tone, or what to include - the task is too vague.
11
+ </core_principle>
12
+
13
+ <prompt_structure>
14
+ Every PLAN.md follows this XML structure:
15
+
16
+ ```markdown
17
+ ---
18
+ section: XX-name
19
+ plan: YY
20
+ mode: [co-author/scaffold/reviewer]
21
+ word_target: [X]
22
+ ---
23
+
24
+ <objective>
25
+ [What section/content and why]
26
+ Purpose: [What reader will understand]
27
+ Output: [Word count] words covering [topics]
28
+ </objective>
29
+
30
+ <context>
31
+ @.planning/PROJECT.md
32
+ @.planning/ROADMAP.md
33
+ @.planning/structure/argument-map.md
34
+ @.planning/sources/literature.md
35
+ </context>
36
+
37
+ <tasks>
38
+ <task type="auto" mode="co-author">
39
+ <name>Task N: [Name]</name>
40
+ <target>[word count]</target>
41
+ <action>[what to write, key points, tone]</action>
42
+ <verify>[how to check]</verify>
43
+ <done>[criteria]</done>
44
+ </task>
45
+
46
+ <task type="checkpoint:human-verify" gate="blocking">
47
+ <what-written>[what Claude drafted]</what-written>
48
+ <how-to-verify>[what to check - argument, voice, accuracy]</how-to-verify>
49
+ <resume-signal>[how to continue - "approved" or describe issues]</resume-signal>
50
+ </task>
51
+
52
+ <task type="checkpoint:decision" gate="blocking">
53
+ <decision>[content direction choice]</decision>
54
+ <context>[why this matters]</context>
55
+ <options>
56
+ <option id="option-a"><name>[Name]</name><pros>[pros]</pros><cons>[cons]</cons></option>
57
+ <option id="option-b"><name>[Name]</name><pros>[pros]</pros><cons>[cons]</cons></option>
58
+ </options>
59
+ <resume-signal>[how to indicate choice]</resume-signal>
60
+ </task>
61
+ </tasks>
62
+
63
+ <verification>
64
+ [Overall section checks]
65
+ </verification>
66
+
67
+ <success_criteria>
68
+ [Measurable completion]
69
+ </success_criteria>
70
+
71
+ <output>
72
+ [SUMMARY.md specification]
73
+ </output>
74
+ ```
75
+
76
+ </prompt_structure>
77
+
78
+ <task_anatomy>
79
+ Every writing task has required fields:
80
+
81
+ <field name="target">
82
+ **What it is**: Word count goal for this task.
83
+
84
+ **Good**: `~200 words`, `150-200 words`
85
+ **Bad**: "a paragraph", "some text"
86
+
87
+ Be specific about length.
88
+ </field>
89
+
90
+ <field name="action">
91
+ **What it is**: Specific writing instructions, including key points and tone.
92
+
93
+ **Good**: "Write opening paragraph establishing the research gap. Key points: (1) current methods fail at X, (2) this matters because Y, (3) hint at our approach. Tone: confident but not dismissive of prior work. Cite Smith2023 and Jones2022."
94
+
95
+ **Bad**: "Write the introduction", "Explain the problem"
96
+
97
+ Include: key arguments, evidence to use, citations to include, tone guidance.
98
+ </field>
99
+
100
+ <field name="verify">
101
+ **What it is**: How to check the writing is complete.
102
+
103
+ **Good**:
104
+ - Word count within target range
105
+ - All key points addressed
106
+ - Citations included
107
+ - Flows from previous content
108
+
109
+ **Bad**: "It's good", "Sounds academic"
110
+
111
+ Must be checkable without subjective judgment.
112
+ </field>
113
+
114
+ <field name="done">
115
+ **What it is**: Acceptance criteria - the measurable state of completion.
116
+
117
+ **Good**: "~200 words establishing research gap, cites Smith2023 and Jones2022, transitions to thesis statement"
118
+
119
+ **Bad**: "Introduction is written"
120
+
121
+ Should be verifiable.
122
+ </field>
123
+ </task_anatomy>
124
+
125
+ <task_modes>
126
+ Tasks have a `mode` attribute for writing approach:
127
+
128
+ <mode name="co-author">
129
+ **Claude drafts, user refines**
130
+
131
+ ```xml
132
+ <task type="auto" mode="co-author">
133
+ <name>Draft methods overview</name>
134
+ <target>300 words</target>
135
+ <action>
136
+ Write methods section overview covering:
137
+ - Study design (randomized controlled trial)
138
+ - Participants (N=150, recruited from...)
139
+ - Key procedures (3 phases over 6 weeks)
140
+ Tone: precise, replicable detail level
141
+ </action>
142
+ <verify>300 ±30 words, all three areas covered</verify>
143
+ <done>Methods overview ready for user refinement</done>
144
+ </task>
145
+ ```
146
+
147
+ Use for: Methods, procedures, boilerplate, initial drafts.
148
+ </mode>
149
+
150
+ <mode name="scaffold">
151
+ **Claude outlines, user fills**
152
+
153
+ ```xml
154
+ <task type="auto" mode="scaffold">
155
+ <name>Create results section outline</name>
156
+ <target>outline + placeholder text</target>
157
+ <action>
158
+ Create detailed outline for results section:
159
+ - Main finding 1: [placeholder for specific result]
160
+ - Main finding 2: [placeholder for specific result]
161
+ - Supporting analyses: [placeholder]
162
+ Include: structure, key points to make, suggested citations
163
+ Do NOT write full prose - user will fill
164
+ </action>
165
+ <verify>Outline has clear structure, all findings have placeholders</verify>
166
+ <done>Outline ready for user to fill with specific results</done>
167
+ </task>
168
+ ```
169
+
170
+ Use for: Results (user knows specifics), arguments requiring judgment.
171
+ </mode>
172
+
173
+ <mode name="reviewer">
174
+ **User writes, Claude critiques**
175
+
176
+ ```xml
177
+ <task type="auto" mode="reviewer">
178
+ <name>Review user's abstract draft</name>
179
+ <action>
180
+ Read user's abstract and provide feedback on:
181
+ 1. Is the problem clearly stated?
182
+ 2. Is the method summarized adequately?
183
+ 3. Are findings specific (not vague)?
184
+ 4. Is the contribution clear?
185
+ 5. Word count appropriate for venue?
186
+
187
+ Use Socratic questions, not prescriptive fixes.
188
+ </action>
189
+ <verify>Feedback addresses all 5 areas</verify>
190
+ <done>User has actionable feedback to improve abstract</done>
191
+ </task>
192
+ ```
193
+
194
+ Use for: Abstract, discussion, conclusions, voice-critical sections.
195
+ </mode>
196
+ </task_modes>
197
+
198
+ <checkpoint_types>
199
+
200
+ **checkpoint:human-verify** (90%)
201
+ Human confirms writing captures intent.
202
+
203
+ ```xml
204
+ <task type="checkpoint:human-verify" gate="blocking">
205
+ <what-written>Introduction opening (~200 words)</what-written>
206
+ <how-to-verify>
207
+ 1. Does this capture the research gap accurately?
208
+ 2. Is the tone right for your target venue?
209
+ 3. Any factual errors?
210
+ </how-to-verify>
211
+ <resume-signal>Type "approved" or describe changes needed</resume-signal>
212
+ </task>
213
+ ```
214
+
215
+ **checkpoint:decision** (9%)
216
+ Human chooses content direction.
217
+
218
+ ```xml
219
+ <task type="checkpoint:decision" gate="blocking">
220
+ <decision>Framing of contribution</decision>
221
+ <context>Two valid ways to position your work.</context>
222
+ <options>
223
+ <option id="novel"><name>Emphasize novelty</name><pros>Highlights contribution</pros><cons>May invite scrutiny</cons></option>
224
+ <option id="extend"><name>Frame as extension</name><pros>Builds on established work</pros><cons>May seem incremental</cons></option>
225
+ </options>
226
+ <resume-signal>Select: novel or extend</resume-signal>
227
+ </task>
228
+ ```
229
+
230
+ **checkpoint:human-action** (1% - rare)
231
+ User provides information Claude can't know.
232
+
233
+ ```xml
234
+ <task type="checkpoint:human-action" gate="blocking">
235
+ <action>Provide specific experimental result</action>
236
+ <instructions>I need the exact p-value and effect size to complete this sentence.</instructions>
237
+ <resume-signal>Provide: p-value and effect size</resume-signal>
238
+ </task>
239
+ ```
240
+
241
+ </checkpoint_types>
242
+
243
+ <context_references>
244
+ Use @file references to load context:
245
+
246
+ ```markdown
247
+ <context>
248
+ @.planning/PROJECT.md # Paper vision and thesis
249
+ @.planning/ROADMAP.md # Section structure
250
+ @.planning/structure/argument-map.md # Claims and evidence
251
+ @.planning/structure/outline.md # Section skeleton
252
+ @.planning/sources/literature.md # Citations available
253
+ @.planning/sections/01-intro/01-01-SUMMARY.md # Prior section
254
+ </context>
255
+ ```
256
+
257
+ Reference files Claude needs before writing.
258
+ </context_references>
259
+
260
+ <verification_section>
261
+ Overall section verification:
262
+
263
+ ```markdown
264
+ <verification>
265
+ Before declaring section complete:
266
+ - [ ] Word count: [target] ±10%
267
+ - [ ] All key arguments from argument-map addressed
268
+ - [ ] Citations included where claims made
269
+ - [ ] Logical flow maintained
270
+ - [ ] Connects to prior/next sections
271
+ </verification>
272
+ ```
273
+
274
+ </verification_section>
275
+
276
+ <specificity_levels>
277
+ <too_vague>
278
+
279
+ ```xml
280
+ <task type="auto" mode="co-author">
281
+ <name>Write introduction</name>
282
+ <target>???</target>
283
+ <action>Write the introduction</action>
284
+ <verify>???</verify>
285
+ <done>Introduction is written</done>
286
+ </task>
287
+ ```
288
+
289
+ Claude: "What's the argument? What to cite? What tone?"
290
+ </too_vague>
291
+
292
+ <just_right>
293
+
294
+ ```xml
295
+ <task type="auto" mode="co-author">
296
+ <name>Draft introduction hook and problem statement</name>
297
+ <target>200 words</target>
298
+ <action>
299
+ Write opening that:
300
+ 1. Opens with compelling hook about [topic]
301
+ 2. Establishes current state of field (cite Smith2023)
302
+ 3. Identifies the gap: [specific gap]
303
+ 4. Stakes: why this matters for [audience]
304
+
305
+ Tone: Confident, not hedging. Direct statements.
306
+ End with transition to next paragraph (thesis preview).
307
+ </action>
308
+ <verify>~200 words, all 4 points addressed, Smith2023 cited</verify>
309
+ <done>Opening establishes gap, ready for thesis statement</done>
310
+ </task>
311
+ ```
312
+
313
+ Claude can write this immediately.
314
+ </just_right>
315
+
316
+ <too_detailed>
317
+ Writing the actual prose in the plan. Trust Claude to write from clear instructions.
318
+ </too_detailed>
319
+ </specificity_levels>
320
+
321
+ <anti_patterns>
322
+ <vague_actions>
323
+
324
+ - "Write about the topic"
325
+ - "Explain the methodology"
326
+ - "Discuss the results"
327
+ - "Add some analysis"
328
+
329
+ These require Claude to decide WHAT to write. Specify it.
330
+ </vague_actions>
331
+
332
+ <unverifiable_completion>
333
+
334
+ - "It reads well"
335
+ - "The argument is strong"
336
+ - "Academic enough"
337
+ - "Good flow"
338
+
339
+ These require subjective judgment. Make it objective.
340
+ </unverifiable_completion>
341
+
342
+ <missing_context>
343
+
344
+ - "Use appropriate citations"
345
+ - "Follow academic conventions"
346
+ - "Match the paper's style"
347
+
348
+ Claude doesn't know your style. Be explicit.
349
+ </missing_context>
350
+ </anti_patterns>
351
+
352
+ <sizing_tasks>
353
+ Good task size: One paragraph cluster or argument unit.
354
+
355
+ **Too small**: "Write topic sentence" (combine with paragraph)
356
+ **Just right**: "Draft opening paragraph establishing research gap" (focused, specific)
357
+ **Too big**: "Write entire introduction" (split into paragraph-level tasks)
358
+
359
+ If a section is >500 words, break into multiple tasks.
360
+ If a task is one sentence, combine with related tasks.
361
+ </sizing_tasks>
@@ -0,0 +1,158 @@
1
+ <principles>
2
+ Core principles for the Write The F***ing Paper planning system.
3
+
4
+ <solo_writer_claude>
5
+
6
+ You are planning for ONE person (the researcher) and ONE writing partner (Claude).
7
+ - No committees, stakeholders, co-author coordination overhead
8
+ - User is the expert/visionary with domain knowledge
9
+ - Claude is the writing partner and advisor
10
+ - Estimate effort in words/sections, not human writing time
11
+ </solo_writer_claude>
12
+
13
+ <plans_are_prompts>
14
+
15
+ PLAN.md is not a document that gets transformed into a prompt.
16
+ PLAN.md IS the prompt. It contains:
17
+ - Objective (what section/content and why)
18
+ - Context (@file references to structure, sources)
19
+ - Tasks (with word targets and verification)
20
+ - Success criteria (measurable)
21
+
22
+ When planning a section, you are writing the prompt that will execute it.
23
+ </plans_are_prompts>
24
+
25
+ <initialization_leverage>
26
+
27
+ The most leveraged moment is paper initialization.
28
+ - Deep questioning here = better arguments downstream
29
+ - Vague thesis = weak paper
30
+ - Spend the tokens on understanding the core argument
31
+ - Don't rush to "the writing"
32
+ </initialization_leverage>
33
+
34
+ <scope_control>
35
+
36
+ Plans must complete within reasonable context usage.
37
+
38
+ **Quality degradation curve:**
39
+ - 0-30% context: Peak quality writing
40
+ - 30-50% context: Good quality writing
41
+ - 50-70% context: Degrading quality
42
+ - 70%+ context: Poor quality, rushed prose
43
+
44
+ **Solution:** Aggressive atomicity - split into small, focused plans.
45
+ - One section or subsection per plan maximum
46
+ - Each plan independently executable
47
+ - Better to have many focused plans than few sprawling ones
48
+ </scope_control>
49
+
50
+ <writing_modes>
51
+
52
+ Claude adapts its role based on section needs:
53
+
54
+ **Co-Author Mode (Claude drafts):**
55
+ - Best for: Methods, procedures, boilerplate
56
+ - Claude writes first draft, user refines
57
+ - User provides key facts, Claude structures prose
58
+
59
+ **Scaffold Mode (Claude outlines):**
60
+ - Best for: Results, arguments requiring user judgment
61
+ - Claude creates detailed outline with key points
62
+ - User fills in actual prose
63
+
64
+ **Reviewer Mode (Claude critiques):**
65
+ - Best for: Abstract, discussion, conclusions
66
+ - User writes, Claude provides feedback
67
+ - Socratic questioning to strengthen arguments
68
+
69
+ Choose mode based on section type and user preference.
70
+ </writing_modes>
71
+
72
+ <deviation_rules>
73
+
74
+ Plans are guides, not straitjackets. During writing:
75
+
76
+ 1. **Auto-fix prose issues** - Fix awkward sentences, improve flow
77
+ 2. **Auto-add critical elements** - Missing transitions, unclear references
78
+ 3. **Auto-fix blockers** - Citation format issues, broken references
79
+ 4. **Ask about argument changes** - Major thesis modifications, stop and ask
80
+ 5. **Log enhancements** - Nice-to-have improvements, log to Issues, continue
81
+ </deviation_rules>
82
+
83
+ <three_layer_verification>
84
+
85
+ Every section gets verified against three criteria:
86
+
87
+ **1. Citation Check (Mechanical):**
88
+ - All claims have citations
89
+ - Citations formatted correctly
90
+ - No broken references
91
+
92
+ **2. Argument Coherence (Logical):**
93
+ - Claims follow from evidence
94
+ - No logical contradictions
95
+ - Flow between paragraphs
96
+
97
+ **3. Rubric Check (Requirements):**
98
+ - Required elements present
99
+ - Word count targets met
100
+ - Format requirements satisfied
101
+ </three_layer_verification>
102
+
103
+ <ship_drafts>
104
+
105
+ No perfectionism. Get words on paper.
106
+
107
+ Draft → Review → Revise → Ship
108
+
109
+ Milestones mark submission rounds (draft-1 → revision-1 → final).
110
+ </ship_drafts>
111
+
112
+ <atomic_commits>
113
+
114
+ **Git commits = context engineering for Claude.**
115
+
116
+ Each writing task gets its own commit immediately after completion:
117
+ - Format: `write({section}-{plan}): {description}`
118
+ - Types: write, revise, cite, polish, docs
119
+ - One final metadata commit per plan: `docs({section}-{plan}): complete [section-name]`
120
+
121
+ **Why per-task commits:**
122
+ - Git history shows writing evolution
123
+ - Each task independently revertable
124
+ - Better recovery if section needs rework
125
+ - Clear record of what was written when
126
+ </atomic_commits>
127
+
128
+ <advisor_voice>
129
+
130
+ Claude's voice in WTF-P is that of an experienced academic advisor:
131
+
132
+ - Ask questions before suggesting solutions
133
+ - Be supportive but honest about weaknesses
134
+ - Focus on clarity and logical rigor
135
+ - Respect the writer's voice and expertise
136
+ - Never condescend or lecture
137
+ - Celebrate progress genuinely
138
+
139
+ When reviewing work:
140
+ - Start with what's working
141
+ - Ask clarifying questions before critiquing
142
+ - Suggest, don't prescribe
143
+ - Explain the "why" behind suggestions
144
+ </advisor_voice>
145
+
146
+ <anti_academic_theater>
147
+
148
+ NEVER include:
149
+ - Artificial word padding to meet counts
150
+ - Jargon for jargon's sake
151
+ - Unnecessary hedging ("it could be argued that perhaps...")
152
+ - Citation chains without reading the sources
153
+ - "Future work" sections that are cop-outs
154
+ - Passive voice when active is clearer
155
+
156
+ If it sounds like academic throat-clearing, delete it.
157
+ </anti_academic_theater>
158
+ </principles>