wtf-p 0.1.0 → 0.3.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 (110) hide show
  1. package/README.md +215 -230
  2. package/bin/commands/doctor.js +100 -0
  3. package/bin/commands/install-logic.js +235 -0
  4. package/bin/commands/list.js +88 -0
  5. package/bin/commands/status.js +85 -0
  6. package/bin/commands/update.js +50 -0
  7. package/bin/install.js +157 -309
  8. package/bin/lib/manifest.js +41 -0
  9. package/bin/lib/utils.js +338 -0
  10. package/bin/lib/wcn-compiler.js +226 -0
  11. package/bin/uninstall.js +202 -206
  12. package/core/write-the-f-paper/references/github-contrib.md +216 -0
  13. package/core/write-the-f-paper/templates/posters/basic.md +34 -0
  14. package/core/write-the-f-paper/templates/slides/basic.md +31 -0
  15. package/package.json +14 -4
  16. package/vendors/claude/.claude-plugin/plugin.json +12 -0
  17. package/vendors/claude/commands/wtfp/contribute.md +278 -0
  18. package/vendors/claude/commands/wtfp/create-poster.md +42 -0
  19. package/vendors/claude/commands/wtfp/create-slides.md +41 -0
  20. package/{commands → vendors/claude/commands}/wtfp/help.md +28 -0
  21. package/vendors/claude/commands/wtfp/report-bug.md +131 -0
  22. package/vendors/claude/commands/wtfp/request-feature.md +160 -0
  23. package/vendors/claude/skills/wtfp/echarts/SKILL.md +47 -0
  24. package/vendors/claude/skills/wtfp/marp/SKILL.md +49 -0
  25. /package/{write-the-f-paper → core/write-the-f-paper}/references/checkpoints.md +0 -0
  26. /package/{write-the-f-paper → core/write-the-f-paper}/references/continuation-format.md +0 -0
  27. /package/{write-the-f-paper → core/write-the-f-paper}/references/git-integration.md +0 -0
  28. /package/{write-the-f-paper → core/write-the-f-paper}/references/imrad-structure.md +0 -0
  29. /package/{write-the-f-paper → core/write-the-f-paper}/references/length-estimation.md +0 -0
  30. /package/{write-the-f-paper → core/write-the-f-paper}/references/plan-format.md +0 -0
  31. /package/{write-the-f-paper → core/write-the-f-paper}/references/principles.md +0 -0
  32. /package/{write-the-f-paper → core/write-the-f-paper}/references/questioning.md +0 -0
  33. /package/{write-the-f-paper → core/write-the-f-paper}/references/research-pitfalls.md +0 -0
  34. /package/{write-the-f-paper → core/write-the-f-paper}/templates/config.json +0 -0
  35. /package/{write-the-f-paper → core/write-the-f-paper}/templates/context.md +0 -0
  36. /package/{write-the-f-paper → core/write-the-f-paper}/templates/continue-here.md +0 -0
  37. /package/{write-the-f-paper → core/write-the-f-paper}/templates/data-inventory.md +0 -0
  38. /package/{write-the-f-paper → core/write-the-f-paper}/templates/discovery.md +0 -0
  39. /package/{write-the-f-paper → core/write-the-f-paper}/templates/issues.md +0 -0
  40. /package/{write-the-f-paper → core/write-the-f-paper}/templates/manuscript.md +0 -0
  41. /package/{write-the-f-paper → core/write-the-f-paper}/templates/narrative-arc.md +0 -0
  42. /package/{write-the-f-paper → core/write-the-f-paper}/templates/outline.md +0 -0
  43. /package/{write-the-f-paper → core/write-the-f-paper}/templates/phase-prompt.md +0 -0
  44. /package/{write-the-f-paper → core/write-the-f-paper}/templates/prior-drafts.md +0 -0
  45. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project-context/argument-structure.md +0 -0
  46. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project-context/bibliography.md +0 -0
  47. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project-context/gaps.md +0 -0
  48. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project-context/imrad.md +0 -0
  49. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project-context/peer-review.md +0 -0
  50. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project-context/style-guide.md +0 -0
  51. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project-context/tools.md +0 -0
  52. /package/{write-the-f-paper → core/write-the-f-paper}/templates/project.md +0 -0
  53. /package/{write-the-f-paper → core/write-the-f-paper}/templates/research.md +0 -0
  54. /package/{write-the-f-paper → core/write-the-f-paper}/templates/review-comments.md +0 -0
  55. /package/{write-the-f-paper → core/write-the-f-paper}/templates/revision-issues.md +0 -0
  56. /package/{write-the-f-paper → core/write-the-f-paper}/templates/roadmap.md +0 -0
  57. /package/{write-the-f-paper → core/write-the-f-paper}/templates/section-archive.md +0 -0
  58. /package/{write-the-f-paper → core/write-the-f-paper}/templates/section-context.md +0 -0
  59. /package/{write-the-f-paper → core/write-the-f-paper}/templates/section.md +0 -0
  60. /package/{write-the-f-paper → core/write-the-f-paper}/templates/state.md +0 -0
  61. /package/{write-the-f-paper → core/write-the-f-paper}/templates/summary.md +0 -0
  62. /package/{write-the-f-paper → core/write-the-f-paper}/venues/acm-cs.yaml +0 -0
  63. /package/{write-the-f-paper → core/write-the-f-paper}/venues/arxiv-ml.yaml +0 -0
  64. /package/{write-the-f-paper → core/write-the-f-paper}/venues/ieee-cs.yaml +0 -0
  65. /package/{write-the-f-paper → core/write-the-f-paper}/venues/nature.yaml +0 -0
  66. /package/{write-the-f-paper → core/write-the-f-paper}/venues/thesis-chapter.yaml +0 -0
  67. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/create-outline.md +0 -0
  68. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/create-outline.wcn.md +0 -0
  69. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/discuss-section.md +0 -0
  70. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/discuss-section.wcn.md +0 -0
  71. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/execute-section.md +0 -0
  72. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/execute-section.wcn.md +0 -0
  73. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/list-assumptions.md +0 -0
  74. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/list-assumptions.wcn.md +0 -0
  75. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/lit-review-phase.md +0 -0
  76. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/lit-review-phase.wcn.md +0 -0
  77. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/map-project.md +0 -0
  78. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/map-project.wcn.md +0 -0
  79. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/plan-section.md +0 -0
  80. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/plan-section.wcn.md +0 -0
  81. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/research-gap.md +0 -0
  82. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/research-gap.wcn.md +0 -0
  83. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/resume-paper.md +0 -0
  84. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/resume-paper.wcn.md +0 -0
  85. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/review-section.md +0 -0
  86. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/review-section.wcn.md +0 -0
  87. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/submit-draft.md +0 -0
  88. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/submit-draft.wcn.md +0 -0
  89. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/transition.md +0 -0
  90. /package/{write-the-f-paper → core/write-the-f-paper}/workflows/transition.wcn.md +0 -0
  91. /package/{commands → vendors/claude/commands}/wtfp/analyze-bib.md +0 -0
  92. /package/{commands → vendors/claude/commands}/wtfp/check-refs.md +0 -0
  93. /package/{commands → vendors/claude/commands}/wtfp/create-outline.md +0 -0
  94. /package/{commands → vendors/claude/commands}/wtfp/discuss-section.md +0 -0
  95. /package/{commands → vendors/claude/commands}/wtfp/export-latex.md +0 -0
  96. /package/{commands → vendors/claude/commands}/wtfp/insert-section.md +0 -0
  97. /package/{commands → vendors/claude/commands}/wtfp/list-assumptions.md +0 -0
  98. /package/{commands → vendors/claude/commands}/wtfp/map-project.md +0 -0
  99. /package/{commands → vendors/claude/commands}/wtfp/new-paper.md +0 -0
  100. /package/{commands → vendors/claude/commands}/wtfp/pause-writing.md +0 -0
  101. /package/{commands → vendors/claude/commands}/wtfp/plan-revision.md +0 -0
  102. /package/{commands → vendors/claude/commands}/wtfp/plan-section.md +0 -0
  103. /package/{commands → vendors/claude/commands}/wtfp/polish-prose.md +0 -0
  104. /package/{commands → vendors/claude/commands}/wtfp/progress.md +0 -0
  105. /package/{commands → vendors/claude/commands}/wtfp/remove-section.md +0 -0
  106. /package/{commands → vendors/claude/commands}/wtfp/research-gap.md +0 -0
  107. /package/{commands → vendors/claude/commands}/wtfp/resume-writing.md +0 -0
  108. /package/{commands → vendors/claude/commands}/wtfp/review-section.md +0 -0
  109. /package/{commands → vendors/claude/commands}/wtfp/submit-milestone.md +0 -0
  110. /package/{commands → vendors/claude/commands}/wtfp/write-section.md +0 -0
@@ -0,0 +1,216 @@
1
+ # WTF-P GitHub Contribution Reference
2
+
3
+ This document teaches Claude how to help users contribute to the WTF-P project via GitHub.
4
+
5
+ ## Repository Information
6
+
7
+ - **Owner**: akougkas
8
+ - **Repo**: wtf-p
9
+ - **URL**: https://github.com/akougkas/wtf-p
10
+ - **Issues**: https://github.com/akougkas/wtf-p/issues
11
+ - **PRs**: https://github.com/akougkas/wtf-p/pulls
12
+
13
+ ## Prerequisites Check
14
+
15
+ Before any GitHub operation, verify `gh` CLI is authenticated:
16
+
17
+ ```bash
18
+ gh auth status
19
+ ```
20
+
21
+ If not authenticated, instruct user to run:
22
+ ```bash
23
+ gh auth login
24
+ ```
25
+
26
+ ## Issue Templates
27
+
28
+ ### Bug Report Format
29
+
30
+ ```markdown
31
+ ## Bug Description
32
+ [Clear description of what's wrong]
33
+
34
+ ## Steps to Reproduce
35
+ 1. [First step]
36
+ 2. [Second step]
37
+ 3. [Expected vs actual behavior]
38
+
39
+ ## Environment
40
+ - WTF-P version: [run `npx wtf-p --version`]
41
+ - Node.js version: [run `node --version`]
42
+ - OS: [macOS/Linux/Windows]
43
+ - Claude Code version: [if relevant]
44
+
45
+ ## Additional Context
46
+ [Screenshots, logs, related issues]
47
+ ```
48
+
49
+ ### Feature Request Format
50
+
51
+ ```markdown
52
+ ## Feature Description
53
+ [What feature do you want?]
54
+
55
+ ## Use Case
56
+ [Why do you need this? What problem does it solve?]
57
+
58
+ ## Proposed Solution
59
+ [How should it work? Include examples if possible]
60
+
61
+ ## Alternatives Considered
62
+ [Other approaches you've thought about]
63
+
64
+ ## Additional Context
65
+ [Mockups, related features, prior art]
66
+ ```
67
+
68
+ ## Creating Issues via `gh`
69
+
70
+ ### Bug Report
71
+ ```bash
72
+ gh issue create \
73
+ --repo akougkas/wtf-p \
74
+ --title "bug: [SHORT_DESCRIPTION]" \
75
+ --body "$(cat <<'EOF'
76
+ ## Bug Description
77
+ ...
78
+
79
+ ## Steps to Reproduce
80
+ ...
81
+
82
+ ## Environment
83
+ ...
84
+ EOF
85
+ )" \
86
+ --label "bug"
87
+ ```
88
+
89
+ ### Feature Request
90
+ ```bash
91
+ gh issue create \
92
+ --repo akougkas/wtf-p \
93
+ --title "feat: [SHORT_DESCRIPTION]" \
94
+ --body "$(cat <<'EOF'
95
+ ## Feature Description
96
+ ...
97
+
98
+ ## Use Case
99
+ ...
100
+ EOF
101
+ )" \
102
+ --label "enhancement"
103
+ ```
104
+
105
+ ## Pull Request Workflow
106
+
107
+ ### 1. Fork (if external contributor)
108
+ ```bash
109
+ gh repo fork akougkas/wtf-p --clone
110
+ cd wtf-p
111
+ ```
112
+
113
+ ### 2. Create Branch
114
+ ```bash
115
+ git checkout -b feat/short-description
116
+ # or
117
+ git checkout -b fix/short-description
118
+ ```
119
+
120
+ ### 3. Make Changes
121
+ Follow patterns in CONTRIBUTING.md:
122
+ - Commands go in `commands/wtfp/`
123
+ - Workflows go in `write-the-f-paper/workflows/`
124
+ - Use conventional commit messages
125
+
126
+ ### 4. Test
127
+ ```bash
128
+ npm test
129
+ node bin/install.js --local
130
+ # Test manually in Claude Code
131
+ ```
132
+
133
+ ### 5. Commit
134
+ ```bash
135
+ git add .
136
+ git commit -m "feat(commands): add new-feature command
137
+
138
+ - Added X functionality
139
+ - Updated Y for Z reason"
140
+ ```
141
+
142
+ ### 6. Push and Create PR
143
+ ```bash
144
+ git push -u origin feat/short-description
145
+
146
+ gh pr create \
147
+ --repo akougkas/wtf-p \
148
+ --title "feat(scope): description" \
149
+ --body "$(cat <<'EOF'
150
+ ## Summary
151
+ Brief description of changes
152
+
153
+ ## Changes Made
154
+ - [ ] Item 1
155
+ - [ ] Item 2
156
+
157
+ ## Testing
158
+ How to test these changes
159
+
160
+ ## Related Issues
161
+ Closes #XX (if applicable)
162
+ EOF
163
+ )"
164
+ ```
165
+
166
+ ## Commit Message Convention
167
+
168
+ Format: `<type>(<scope>): <description>`
169
+
170
+ ### Types
171
+ | Type | Use For |
172
+ |------|---------|
173
+ | `feat` | New feature |
174
+ | `fix` | Bug fix |
175
+ | `docs` | Documentation |
176
+ | `refactor` | Code restructuring |
177
+ | `test` | Adding tests |
178
+ | `chore` | Maintenance |
179
+
180
+ ### Scopes
181
+ | Scope | Use For |
182
+ |-------|---------|
183
+ | `commands` | Slash commands |
184
+ | `workflows` | Writing workflows |
185
+ | `cli` | Installer scripts |
186
+ | `templates` | LaTeX/venue templates |
187
+
188
+ ## Labels Reference
189
+
190
+ | Label | Description |
191
+ |-------|-------------|
192
+ | `bug` | Something isn't working |
193
+ | `enhancement` | New feature request |
194
+ | `documentation` | Documentation improvements |
195
+ | `good first issue` | Good for newcomers |
196
+ | `help wanted` | Extra attention needed |
197
+
198
+ ## Common Scenarios
199
+
200
+ ### User found a bug while writing
201
+ 1. Gather: What command? What happened? What was expected?
202
+ 2. Check: Can we reproduce? What's the environment?
203
+ 3. Create: Issue with reproduction steps
204
+ 4. Link: Reference any error messages or logs
205
+
206
+ ### User wants a new command
207
+ 1. Clarify: What should it do? What's the use case?
208
+ 2. Check: Does something similar exist?
209
+ 3. Propose: Draft the command structure
210
+ 4. Create: Feature request issue or implement directly
211
+
212
+ ### User wants to fix something themselves
213
+ 1. Guide: Fork and clone workflow
214
+ 2. Help: Implement the fix
215
+ 3. Test: Verify it works
216
+ 4. Submit: Create PR with proper format
@@ -0,0 +1,34 @@
1
+ ---
2
+ marp: true
3
+ theme: uncover
4
+ size: 4:3
5
+ ---
6
+
7
+ # [Poster Title]
8
+
9
+ ## Authors
10
+ Author 1, Author 2
11
+
12
+ ---
13
+
14
+ ## Introduction
15
+ - Problem statement
16
+ - Importance
17
+
18
+ ---
19
+
20
+ ## Methodology
21
+ - Approach
22
+ - Implementation details
23
+
24
+ ---
25
+
26
+ ## Results
27
+ - Key findings
28
+ - Charts (use ECharts!)
29
+
30
+ ---
31
+
32
+ ## Conclusion
33
+ - Summary
34
+ - Future work
@@ -0,0 +1,31 @@
1
+ ---
2
+ marp: true
3
+ theme: gaia
4
+ _class: lead
5
+ ---
6
+
7
+ # [Presentation Title]
8
+ ## [Subtitle]
9
+
10
+ Author Name
11
+
12
+ ---
13
+
14
+ # Agenda
15
+ 1. Introduction
16
+ 2. Problem Statement
17
+ 3. Methodology
18
+ 4. Results
19
+ 5. Conclusion
20
+
21
+ ---
22
+
23
+ # Introduction
24
+ - Context
25
+ - High-level overview
26
+
27
+ ---
28
+
29
+ # Conclusion
30
+ - Final thoughts
31
+ - Q&A
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wtf-p",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "description": "The G.O.A.T. meta-prompting system for 10x researchers who need to submit papers and projects and proposals YESTERDAY.",
5
5
  "bin": {
6
6
  "wtfp": "bin/install.js",
@@ -8,15 +8,25 @@
8
8
  "wtf-p-uninstall": "bin/uninstall.js"
9
9
  },
10
10
  "scripts": {
11
- "test": "node test/sanity.js",
11
+ "test": "node test/sanity.js && node test/paths.js && node test/linter.js",
12
+ "test:integration": "node test/integration.js",
13
+ "test:all": "npm test && npm run test:integration",
12
14
  "preflight": "node scripts/preflight.js",
13
15
  "release": "node scripts/release.js"
14
16
  },
15
17
  "files": [
16
18
  "bin",
17
- "commands",
18
- "write-the-f-paper"
19
+ "core",
20
+ "vendors"
19
21
  ],
22
+ "peerDependencies": {
23
+ "@marp-team/marp-cli": ">=3.0.0"
24
+ },
25
+ "peerDependenciesMeta": {
26
+ "@marp-team/marp-cli": {
27
+ "optional": true
28
+ }
29
+ },
20
30
  "keywords": [
21
31
  "claude",
22
32
  "claude-code",
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "wtf-p",
3
+ "description": "Academic writing toolkit - Paper, Proposal, Presentation, Poster",
4
+ "version": "0.3.0",
5
+ "author": {
6
+ "name": "akougkas",
7
+ "url": "https://github.com/akougkas"
8
+ },
9
+ "homepage": "https://github.com/akougkas/wtf-p",
10
+ "repository": "https://github.com/akougkas/wtf-p",
11
+ "license": "MIT"
12
+ }
@@ -0,0 +1,278 @@
1
+ ---
2
+ name: wtfp:contribute
3
+ description: Guide through contributing code to WTF-P via Pull Request
4
+ allowed-tools:
5
+ - Bash
6
+ - Read
7
+ - Write
8
+ - Edit
9
+ - Glob
10
+ - Grep
11
+ - AskUserQuestion
12
+ ---
13
+
14
+ <objective>
15
+ Guide the user through the complete process of contributing code to WTF-P, from fork to Pull Request.
16
+ </objective>
17
+
18
+ <context>
19
+ @~/.claude/write-the-f-paper/references/github-contrib.md
20
+ @~/.claude/CONTRIBUTING.md
21
+ </context>
22
+
23
+ <process>
24
+
25
+ ## Step 1: Verify Prerequisites
26
+
27
+ Check tools are available:
28
+ ```bash
29
+ gh auth status 2>&1
30
+ git --version
31
+ node --version
32
+ ```
33
+
34
+ If `gh` not authenticated:
35
+ > Run `gh auth login` to authenticate with GitHub.
36
+
37
+ ## Step 2: Understand Contribution Type
38
+
39
+ Use AskUserQuestion:
40
+
41
+ **Question 1: What are you contributing?**
42
+ - Header: "Type"
43
+ - Options:
44
+ - "New command" - Add a /wtfp:* slash command
45
+ - "Bug fix" - Fix an existing issue
46
+ - "Workflow improvement" - Enhance a writing workflow
47
+ - "Documentation" - Improve docs or add examples
48
+ - "Other" - Something else
49
+
50
+ **Question 2: Do you have an existing issue?**
51
+ - Header: "Issue"
52
+ - Options:
53
+ - "Yes, issue #___" - Link to existing issue
54
+ - "No, creating fresh" - New contribution without issue
55
+ - "I'll create one first" - Redirect to /wtfp:request-feature
56
+
57
+ ## Step 3: Setup Repository
58
+
59
+ Check current state:
60
+ ```bash
61
+ git remote -v
62
+ ```
63
+
64
+ **If in wtf-p repo (maintainer):**
65
+ ```bash
66
+ git checkout main
67
+ git pull origin main
68
+ git checkout -b [BRANCH_TYPE]/[SHORT_NAME]
69
+ ```
70
+
71
+ **If not in wtf-p repo (external contributor):**
72
+ ```bash
73
+ # Fork and clone
74
+ gh repo fork akougkas/wtf-p --clone
75
+ cd wtf-p
76
+
77
+ # Create branch
78
+ git checkout -b [BRANCH_TYPE]/[SHORT_NAME]
79
+ ```
80
+
81
+ Branch naming:
82
+ - `feat/add-citation-check` for features
83
+ - `fix/install-path-spaces` for bugs
84
+ - `docs/improve-readme` for documentation
85
+
86
+ ## Step 4: Guide Implementation
87
+
88
+ Based on contribution type:
89
+
90
+ ### For New Command
91
+
92
+ 1. Show command template:
93
+ ```markdown
94
+ ---
95
+ name: wtfp:command-name
96
+ description: Brief description
97
+ allowed-tools:
98
+ - Read
99
+ - Write
100
+ - AskUserQuestion
101
+ ---
102
+
103
+ <objective>
104
+ What this command accomplishes.
105
+ </objective>
106
+
107
+ <context>
108
+ @~/.claude/write-the-f-paper/references/[relevant].md
109
+ </context>
110
+
111
+ <process>
112
+ ## Step 1: ...
113
+ ## Step 2: ...
114
+ </process>
115
+ ```
116
+
117
+ 2. Create file in `commands/wtfp/[name].md`
118
+
119
+ 3. Follow naming conventions:
120
+ - `new-*` for creation
121
+ - `create-*` for generation
122
+ - `plan-*` for planning
123
+ - `write-*` for execution
124
+ - `review-*` for review
125
+ - `check-*` for validation
126
+ - `export-*` for output
127
+
128
+ ### For Bug Fix
129
+
130
+ 1. Identify the file(s) to modify
131
+ 2. Make minimal, focused changes
132
+ 3. Add test coverage if applicable
133
+
134
+ ### For Workflow Improvement
135
+
136
+ 1. Edit file in `write-the-f-paper/workflows/`
137
+ 2. If WCN version exists, update both `.md` and `.wcn.md`
138
+
139
+ ## Step 5: Test Changes
140
+
141
+ ```bash
142
+ # Run existing tests
143
+ npm test
144
+
145
+ # Install locally for manual testing
146
+ node bin/install.js --local --force
147
+
148
+ # Test in Claude Code
149
+ # /wtfp:your-new-command
150
+ ```
151
+
152
+ Ask user to verify:
153
+ - Does the feature work as expected?
154
+ - Any edge cases to handle?
155
+ - Error messages clear?
156
+
157
+ ## Step 6: Commit Changes
158
+
159
+ Stage files:
160
+ ```bash
161
+ git add [FILES]
162
+ git status
163
+ ```
164
+
165
+ Commit with conventional message:
166
+ ```bash
167
+ git commit -m "[TYPE]([SCOPE]): [DESCRIPTION]
168
+
169
+ [Optional body explaining why]
170
+
171
+ [Closes #XX if applicable]"
172
+ ```
173
+
174
+ Examples:
175
+ - `feat(commands): add citation-check command`
176
+ - `fix(cli): handle paths with spaces`
177
+ - `docs(readme): clarify installation steps`
178
+
179
+ ## Step 7: Push and Create PR
180
+
181
+ Push branch:
182
+ ```bash
183
+ git push -u origin [BRANCH_NAME]
184
+ ```
185
+
186
+ Create PR:
187
+ ```bash
188
+ gh pr create \
189
+ --repo akougkas/wtf-p \
190
+ --title "[TYPE]([SCOPE]): [DESCRIPTION]" \
191
+ --body "$(cat <<'EOF'
192
+ ## Summary
193
+ [What this PR does]
194
+
195
+ ## Changes
196
+ - [Change 1]
197
+ - [Change 2]
198
+
199
+ ## Testing
200
+ - [ ] `npm test` passes
201
+ - [ ] Manually tested in Claude Code
202
+ - [ ] [Specific test scenario]
203
+
204
+ ## Related Issues
205
+ [Closes #XX or References #XX]
206
+ EOF
207
+ )"
208
+ ```
209
+
210
+ ## Step 8: Post-PR Guidance
211
+
212
+ After PR is created:
213
+
214
+ 1. **Show PR URL** to user
215
+ 2. **Explain review process:**
216
+ - Maintainer will review within a few days
217
+ - May request changes or ask questions
218
+ - Once approved, will be merged to main
219
+
220
+ 3. **Next steps:**
221
+ - Watch for review comments
222
+ - Respond to feedback
223
+ - Update PR if changes requested
224
+
225
+ </process>
226
+
227
+ <templates>
228
+
229
+ ## PR Title Format
230
+ ```
231
+ <type>(<scope>): <description>
232
+ ```
233
+
234
+ Types: feat, fix, docs, refactor, test, chore
235
+ Scopes: commands, workflows, cli, templates
236
+
237
+ ## PR Body Template
238
+ ```markdown
239
+ ## Summary
240
+ Brief description of what this PR accomplishes.
241
+
242
+ ## Changes
243
+ - Added/Modified/Removed X
244
+ - Updated Y to do Z
245
+
246
+ ## Testing
247
+ How to verify this works:
248
+ 1. Install locally: `node bin/install.js --local`
249
+ 2. Run: `/wtfp:command`
250
+ 3. Expected: [outcome]
251
+
252
+ ## Screenshots (if UI changes)
253
+ [Paste screenshots here]
254
+
255
+ ## Related Issues
256
+ Closes #XX
257
+ ```
258
+
259
+ </templates>
260
+
261
+ <error-handling>
262
+
263
+ **Fork already exists:** Use existing fork
264
+ ```bash
265
+ gh repo sync [USERNAME]/wtf-p
266
+ ```
267
+
268
+ **Branch already exists:**
269
+ ```bash
270
+ git checkout [BRANCH]
271
+ git pull origin main
272
+ ```
273
+
274
+ **Push rejected:** Need to pull first or force push (with caution)
275
+
276
+ **PR creation fails:** Check if branch was pushed, verify gh auth
277
+
278
+ </error-handling>
@@ -0,0 +1,42 @@
1
+ ---
2
+ name: wtfp:create-poster
3
+ description: Full workflow for creating an academic poster from project content
4
+ allowed-tools:
5
+ - Read
6
+ - Write
7
+ - Bash
8
+ - AskUserQuestion
9
+ ---
10
+
11
+ <objective>
12
+ Generate an academic poster based on the current project's PROJECT.md and findings.
13
+ Uses the wtfp-marp skill to compile to HTML.
14
+ </objective>
15
+
16
+ <context>
17
+ @~/.claude/write-the-f-paper/references/principles.md
18
+ @~/.claude/write-the-f-paper/templates/posters/basic.md
19
+ </context>
20
+
21
+ <process>
22
+ ## Step 1: Content Synthesis
23
+ - Read `.planning/PROJECT.md` and any drafted sections.
24
+ - Identify key findings, methodology, and conclusion.
25
+
26
+ ## Step 2: User Interview
27
+ AskUserQuestion to determine:
28
+ - Poster title (default to project title)
29
+ - Authors
30
+ - Key visuals/charts needed
31
+ - Target audience
32
+
33
+ ## Step 3: Markdown Generation
34
+ - Create `poster.md` using Marp format.
35
+ - Integrate synthesized content.
36
+
37
+ ## Step 4: Compilation
38
+ - Use `wtfp-marp` skill: `npx @marp-team/marp-cli poster.md -o poster.html`
39
+
40
+ ## Step 5: Review
41
+ - Present the generated poster.html path to the user.
42
+ </process>
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: wtfp:create-slides
3
+ description: Full workflow for creating presentation slides from project content
4
+ allowed-tools:
5
+ - Read
6
+ - Write
7
+ - Bash
8
+ - AskUserQuestion
9
+ ---
10
+
11
+ <objective>
12
+ Generate presentation slides based on the current project's PROJECT.md and findings.
13
+ Uses the wtfp-marp skill to compile to PDF.
14
+ </objective>
15
+
16
+ <context>
17
+ @~/.claude/write-the-f-paper/references/principles.md
18
+ @~/.claude/write-the-f-paper/templates/slides/
19
+ </context>
20
+
21
+ <process>
22
+ ## Step 1: Content Synthesis
23
+ - Read `.planning/PROJECT.md` and any drafted sections.
24
+ - Identify the core narrative and supporting claims.
25
+
26
+ ## Step 2: User Interview
27
+ AskUserQuestion to determine:
28
+ - Presentation duration/target number of slides
29
+ - Specific focus areas
30
+ - Audience background
31
+
32
+ ## Step 3: Markdown Generation
33
+ - Create `slides.md` using Marp format.
34
+ - Separate slides with `---`.
35
+
36
+ ## Step 4: Compilation
37
+ - Use `wtfp-marp` skill: `npx @marp-team/marp-cli slides.md -o slides.pdf`
38
+
39
+ ## Step 5: Review
40
+ - Present the generated slides.pdf path to the user.
41
+ </process>