@hustle-together/api-dev-tools 3.10.1 → 3.12.1

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 (178) hide show
  1. package/.claude/agents/code-reviewer.md +170 -0
  2. package/.claude/agents/docs-generator.md +80 -0
  3. package/.claude/agents/implementation-reviewer.md +119 -0
  4. package/.claude/agents/parallel-researcher.md +52 -0
  5. package/.claude/agents/research-validator.md +116 -0
  6. package/.claude/agents/schema-generator.md +70 -0
  7. package/.claude/agents/test-writer.md +104 -0
  8. package/.claude/api-dev-state.json +331 -0
  9. package/.claude/commands/README.md +196 -0
  10. package/.claude/commands/add-command.md +212 -0
  11. package/.claude/commands/api-create.md +510 -0
  12. package/.claude/commands/api-env.md +51 -0
  13. package/.claude/commands/api-interview.md +344 -0
  14. package/.claude/commands/api-research.md +357 -0
  15. package/.claude/commands/api-status.md +279 -0
  16. package/.claude/commands/api-verify.md +232 -0
  17. package/.claude/commands/beepboop.md +96 -0
  18. package/.claude/commands/busycommit.md +111 -0
  19. package/.claude/commands/commit.md +82 -0
  20. package/.claude/commands/cycle.md +137 -0
  21. package/.claude/commands/gap.md +85 -0
  22. package/.claude/commands/green.md +137 -0
  23. package/.claude/commands/issue.md +187 -0
  24. package/.claude/commands/ntfy-setup.md +91 -0
  25. package/.claude/commands/ntfy-test.md +74 -0
  26. package/.claude/commands/plan.md +167 -0
  27. package/.claude/commands/pr.md +121 -0
  28. package/.claude/commands/publish.md +40 -0
  29. package/.claude/commands/red.md +137 -0
  30. package/.claude/commands/refactor.md +137 -0
  31. package/.claude/commands/spike.md +137 -0
  32. package/.claude/commands/summarize.md +93 -0
  33. package/.claude/commands/tdd.md +139 -0
  34. package/.claude/commands/worktree-add.md +307 -0
  35. package/.claude/commands/worktree-cleanup.md +275 -0
  36. package/.claude/hooks/api-workflow-check.py +227 -0
  37. package/.claude/hooks/enforce-deep-research.py +185 -0
  38. package/.claude/hooks/enforce-disambiguation.py +155 -0
  39. package/.claude/hooks/enforce-documentation.py +192 -0
  40. package/.claude/hooks/enforce-environment.py +253 -0
  41. package/.claude/hooks/enforce-external-research.py +328 -0
  42. package/.claude/hooks/enforce-interview.py +421 -0
  43. package/.claude/hooks/enforce-refactor.py +189 -0
  44. package/.claude/hooks/enforce-research.py +159 -0
  45. package/.claude/hooks/enforce-schema.py +186 -0
  46. package/.claude/hooks/enforce-scope.py +160 -0
  47. package/.claude/hooks/enforce-tdd-red.py +250 -0
  48. package/.claude/hooks/enforce-verify.py +186 -0
  49. package/.claude/hooks/periodic-reground.py +154 -0
  50. package/.claude/hooks/session-startup.py +151 -0
  51. package/.claude/hooks/track-tool-use.py +626 -0
  52. package/.claude/hooks/verify-after-green.py +282 -0
  53. package/.claude/hooks/verify-implementation.py +225 -0
  54. package/.claude/research/index.json +6 -0
  55. package/.claude/settings.json +144 -0
  56. package/.claude/settings.local.json +12 -0
  57. package/.claude-plugin/marketplace.json +103 -0
  58. package/.skills/README.md +293 -0
  59. package/.skills/_shared/convert-commands.py +192 -0
  60. package/.skills/_shared/hooks/api-workflow-check.py +227 -0
  61. package/.skills/_shared/hooks/enforce-deep-research.py +185 -0
  62. package/.skills/_shared/hooks/enforce-disambiguation.py +155 -0
  63. package/.skills/_shared/hooks/enforce-documentation.py +192 -0
  64. package/.skills/_shared/hooks/enforce-environment.py +253 -0
  65. package/.skills/_shared/hooks/enforce-external-research.py +328 -0
  66. package/.skills/_shared/hooks/enforce-interview.py +421 -0
  67. package/.skills/_shared/hooks/enforce-refactor.py +189 -0
  68. package/.skills/_shared/hooks/enforce-research.py +159 -0
  69. package/.skills/_shared/hooks/enforce-schema.py +186 -0
  70. package/.skills/_shared/hooks/enforce-scope.py +160 -0
  71. package/.skills/_shared/hooks/enforce-tdd-red.py +250 -0
  72. package/.skills/_shared/hooks/enforce-verify.py +186 -0
  73. package/.skills/_shared/hooks/periodic-reground.py +154 -0
  74. package/.skills/_shared/hooks/session-startup.py +151 -0
  75. package/.skills/_shared/hooks/track-tool-use.py +626 -0
  76. package/.skills/_shared/hooks/verify-after-green.py +282 -0
  77. package/.skills/_shared/hooks/verify-implementation.py +225 -0
  78. package/.skills/_shared/install.sh +114 -0
  79. package/.skills/_shared/settings.json +93 -0
  80. package/.skills/add-command/SKILL.md +227 -0
  81. package/.skills/api-create/SKILL.md +623 -0
  82. package/.skills/api-env/SKILL.md +64 -0
  83. package/.skills/api-interview/SKILL.md +357 -0
  84. package/.skills/api-research/SKILL.md +370 -0
  85. package/.skills/api-status/SKILL.md +292 -0
  86. package/.skills/api-verify/SKILL.md +245 -0
  87. package/.skills/beepboop/SKILL.md +111 -0
  88. package/.skills/busycommit/SKILL.md +126 -0
  89. package/.skills/commit/SKILL.md +97 -0
  90. package/.skills/cycle/SKILL.md +152 -0
  91. package/.skills/gap/SKILL.md +100 -0
  92. package/.skills/green/SKILL.md +152 -0
  93. package/.skills/issue/SKILL.md +202 -0
  94. package/.skills/plan/SKILL.md +182 -0
  95. package/.skills/pr/SKILL.md +136 -0
  96. package/.skills/publish/SKILL.md +160 -0
  97. package/.skills/red/SKILL.md +152 -0
  98. package/.skills/refactor/SKILL.md +152 -0
  99. package/.skills/spike/SKILL.md +152 -0
  100. package/.skills/summarize/SKILL.md +108 -0
  101. package/.skills/tdd/SKILL.md +154 -0
  102. package/.skills/update-todos/SKILL.md +250 -0
  103. package/.skills/worktree-add/SKILL.md +322 -0
  104. package/.skills/worktree-cleanup/SKILL.md +290 -0
  105. package/CHANGELOG.md +115 -0
  106. package/README.md +161 -7101
  107. package/bin/cli.js +448 -805
  108. package/commands/README.md +66 -31
  109. package/commands/add-command.md +8 -5
  110. package/commands/beepboop.md +4 -5
  111. package/commands/busycommit.md +2 -3
  112. package/commands/commit.md +2 -3
  113. package/commands/cycle.md +2 -7
  114. package/commands/gap.md +2 -3
  115. package/commands/green.md +2 -7
  116. package/commands/hustle-api-continue.md +8 -5
  117. package/commands/hustle-api-create.md +70 -29
  118. package/commands/hustle-api-env.md +1 -0
  119. package/commands/hustle-api-interview.md +32 -19
  120. package/commands/hustle-api-research.md +47 -21
  121. package/commands/hustle-api-sessions.md +8 -7
  122. package/commands/hustle-api-status.md +21 -1
  123. package/commands/hustle-api-verify.md +14 -13
  124. package/commands/hustle-combine.md +488 -241
  125. package/commands/hustle-ui-create-page.md +113 -50
  126. package/commands/hustle-ui-create.md +179 -26
  127. package/commands/issue.md +3 -8
  128. package/commands/plan.md +2 -3
  129. package/commands/pr.md +2 -3
  130. package/commands/red.md +2 -7
  131. package/commands/refactor.md +2 -7
  132. package/commands/spike.md +2 -7
  133. package/commands/summarize.md +2 -3
  134. package/commands/tdd.md +2 -7
  135. package/commands/worktree-add.md +208 -216
  136. package/commands/worktree-cleanup.md +172 -178
  137. package/hooks/api-workflow-check.py +5 -3
  138. package/hooks/enforce-component-type-confirm.py +97 -0
  139. package/hooks/lib/__init__.py +1 -0
  140. package/hooks/lib/greptile.py +355 -0
  141. package/hooks/lib/ntfy.py +209 -0
  142. package/hooks/notify-input-needed.py +73 -0
  143. package/hooks/notify-phase-complete.py +90 -0
  144. package/hooks/run-code-review.py +246 -0
  145. package/hooks/track-token-usage.py +121 -0
  146. package/package.json +33 -12
  147. package/scripts/collect-test-results.ts +102 -77
  148. package/scripts/extract-parameters.ts +112 -70
  149. package/scripts/generate-test-manifest.ts +118 -77
  150. package/templates/.env.example +57 -0
  151. package/templates/BRAND_GUIDE.md +92 -52
  152. package/templates/CLAUDE-SECTION.md +40 -37
  153. package/templates/SPEC.json +186 -38
  154. package/templates/api-dev-state.json +33 -4
  155. package/templates/api-showcase/_components/APICard.tsx +22 -18
  156. package/templates/api-showcase/_components/APIModal.tsx +110 -64
  157. package/templates/api-showcase/_components/APIShowcase.tsx +53 -35
  158. package/templates/api-showcase/_components/APITester.tsx +128 -67
  159. package/templates/api-showcase/page.tsx +4 -4
  160. package/templates/api-test/page.tsx +51 -30
  161. package/templates/api-test/test-structure/route.ts +43 -34
  162. package/templates/component/Component.stories.tsx +41 -39
  163. package/templates/component/Component.test.tsx +96 -78
  164. package/templates/component/Component.tsx +63 -52
  165. package/templates/component/Component.types.ts +10 -6
  166. package/templates/component/Component.visual.spec.ts +170 -0
  167. package/templates/component/index.ts +2 -2
  168. package/templates/dev-tools/_components/DevToolsLanding.tsx +8 -8
  169. package/templates/dev-tools/page.tsx +4 -3
  170. package/templates/mcp-servers.json +30 -2
  171. package/templates/page/page.e2e.test.ts +56 -48
  172. package/templates/page/page.tsx +3 -3
  173. package/templates/shared/HeroHeader.tsx +16 -15
  174. package/templates/shared/index.ts +1 -1
  175. package/templates/ui-showcase/_components/PreviewCard.tsx +20 -20
  176. package/templates/ui-showcase/_components/PreviewModal.tsx +149 -108
  177. package/templates/ui-showcase/_components/UIShowcase.tsx +43 -35
  178. package/templates/ui-showcase/page.tsx +4 -4
@@ -0,0 +1,245 @@
1
+ ---
2
+ name: api-verify
3
+ description: Manual Phase 10 verification - re-research documentation after tests pass to catch memory-based implementation errors. Compares implementation to docs, reports gaps. Use after TDD Green phase. Keywords: verification, testing, documentation, gaps, quality
4
+ license: MIT
5
+ compatibility: Requires Claude Code with MCP servers (Context7, GitHub), Python 3.9+ for hooks, pnpm 10.11.0+
6
+ metadata:
7
+ version: "3.0.0"
8
+ category: "testing"
9
+ tags: ['verification', 'testing', 'documentation', 'quality']
10
+ author: "Hustle Together"
11
+ allowed-tools: WebSearch WebFetch mcp__context7 mcp__github AskUserQuestion Read Write Edit Bash TodoWrite
12
+ ---
13
+
14
+ # API Verify - Implementation Verification (Phase 10) v3.0
15
+
16
+ **Usage:** `/api-verify [endpoint-name]`
17
+
18
+ **Purpose:** Manually trigger Phase 10 verification - re-research documentation and compare to implementation to catch memory-based errors.
19
+
20
+ ## When to Use
21
+
22
+ - After tests pass (TDD Green complete)
23
+ - Before proceeding to Refactor phase
24
+ - When unsure if implementation matches documentation
25
+ - After significant time has passed since initial research
26
+
27
+ ## Verification Process
28
+
29
+ ### Step 1: Re-Read Original Documentation
30
+
31
+ ```
32
+ ┌────────────────────────────────────────────────────────────┐
33
+ │ RE-RESEARCHING DOCUMENTATION │
34
+ │ │
35
+ │ Fetching current documentation for: [endpoint-name] │
36
+ │ │
37
+ │ Sources: │
38
+ │ - Context7: [library-name] │
39
+ │ - Official docs: [URL] │
40
+ │ - Cached research: .claude/research/[api]/CURRENT.md │
41
+ │ │
42
+ │ Freshness: [X days old] │
43
+ └────────────────────────────────────────────────────────────┘
44
+ ```
45
+
46
+ ### Step 2: Feature-by-Feature Comparison
47
+
48
+ ```
49
+ ┌────────────────────────────────────────────────────────────┐
50
+ │ IMPLEMENTATION VERIFICATION │
51
+ │ │
52
+ │ Comparing documentation to implementation: │
53
+ │ │
54
+ │ │ Feature │ In Docs │ Implemented │ Status │
55
+ │ ├─────────────────┼─────────┼─────────────┼───────────────│
56
+ │ │ domain param │ ✓ │ ✓ │ ✅ Match │
57
+ │ │ format param │ 4 opts │ 3 opts │ ⚠️ Missing │
58
+ │ │ quality range │ 1-100 │ 1-100 │ ✅ Match │
59
+ │ │ size param │ ✓ │ ✗ │ ⚠️ Missing │
60
+ │ │ webhook support │ ✓ │ ✗ │ ℹ️ Intentional │
61
+ │ │ batch mode │ ✓ │ ✗ │ ℹ️ Intentional │
62
+ │ │
63
+ │ MATCHES: 2 │
64
+ │ MISSING: 2 │
65
+ │ INTENTIONAL OMISSIONS: 2 │
66
+ └────────────────────────────────────────────────────────────┘
67
+ ```
68
+
69
+ ### Step 3: Gap Analysis
70
+
71
+ For each discrepancy:
72
+
73
+ ```
74
+ ┌────────────────────────────────────────────────────────────┐
75
+ │ GAP #1: format parameter │
76
+ │ │
77
+ │ Documentation says: ["json", "svg", "png", "raw"] │
78
+ │ Implementation has: ["json", "svg", "png"] │
79
+ │ │
80
+ │ Missing: "raw" format │
81
+ │ │
82
+ │ Action? │
83
+ │ [x] Fix - Add "raw" format support │
84
+ │ [ ] Skip - Mark as intentional omission │
85
+ │ [ ] Defer - Add to backlog for later │
86
+ └────────────────────────────────────────────────────────────┘
87
+
88
+ ┌────────────────────────────────────────────────────────────┐
89
+ │ GAP #2: size parameter │
90
+ │ │
91
+ │ Documentation says: size parameter exists (16-4096) │
92
+ │ Implementation has: not implemented │
93
+ │ │
94
+ │ Action? │
95
+ │ [x] Fix - Add size parameter │
96
+ │ [ ] Skip - Mark as intentional omission │
97
+ │ [ ] Defer - Add to backlog for later │
98
+ └────────────────────────────────────────────────────────────┘
99
+ ```
100
+
101
+ ### Step 4: Loop Back or Proceed
102
+
103
+ ```
104
+ ┌────────────────────────────────────────────────────────────┐
105
+ │ VERIFICATION SUMMARY │
106
+ │ │
107
+ │ Gaps to fix: 2 │
108
+ │ Intentional omissions: 2 │
109
+ │ │
110
+ │ DECISION: │
111
+ │ │
112
+ │ [x] Fix gaps → Return to TDD Red (write tests for gaps) │
113
+ │ [ ] Skip all → Document as omissions, proceed to Refactor │
114
+ └────────────────────────────────────────────────────────────┘
115
+ ```
116
+
117
+ ## State File Updates
118
+
119
+ ```json
120
+ {
121
+ "phases": {
122
+ "verify": {
123
+ "status": "complete",
124
+ "gaps_found": 2,
125
+ "gaps_fixed": 2,
126
+ "intentional_omissions": [
127
+ {
128
+ "feature": "webhook support",
129
+ "reason": "User declined in interview",
130
+ "documented_at": "..."
131
+ },
132
+ {
133
+ "feature": "batch mode",
134
+ "reason": "Out of scope for v1",
135
+ "documented_at": "..."
136
+ }
137
+ ],
138
+ "re_research_done": true,
139
+ "completed_at": "..."
140
+ }
141
+ }
142
+ }
143
+ ```
144
+
145
+ ## Verification Report
146
+
147
+ Creates: `.claude/research/[api-name]/verification.md`
148
+
149
+ ```markdown
150
+ # Verification Report: [API Name]
151
+
152
+ **Date:** [current-date]
153
+ **Implementation File:** src/app/api/v2/[endpoint]/route.ts
154
+ **Test File:** src/app/api/v2/[endpoint]/**tests**/[endpoint].api.test.ts
155
+
156
+ ## Documentation Sources Re-Checked
157
+
158
+ | Source | URL | Checked |
159
+ | --------------- | --------------------------------- | ------- |
160
+ | Official docs | [URL] | ✓ |
161
+ | Context7 | [library] | ✓ |
162
+ | Cached research | .claude/research/[api]/CURRENT.md | ✓ |
163
+
164
+ ## Feature Comparison
165
+
166
+ | Feature | In Docs | Implemented | Status |
167
+ | ------------ | --------- | ----------- | -------------- |
168
+ | domain param | ✓ | ✓ | ✅ Match |
169
+ | format param | 4 options | 3 options | ⚠️ Fixed |
170
+ | size param | ✓ | ✓ | ⚠️ Fixed |
171
+ | webhook | ✓ | ✗ | ℹ️ Intentional |
172
+
173
+ ## Gaps Fixed
174
+
175
+ 1. **format parameter** - Added "raw" format support
176
+ - Test added: test/format-raw.test.ts:15
177
+ - Implementation: route.ts:45
178
+
179
+ 2. **size parameter** - Added size validation
180
+ - Test added: test/size-param.test.ts:10
181
+ - Implementation: route.ts:52
182
+
183
+ ## Intentional Omissions
184
+
185
+ 1. **webhook support**
186
+ - Reason: User declined in interview (Phase 4)
187
+ - Decision recorded: api-dev-state.json
188
+ - May add in v2
189
+
190
+ 2. **batch mode**
191
+ - Reason: Out of scope for initial release
192
+ - Documented for future consideration
193
+
194
+ ## Verification Result
195
+
196
+ - **Status:** PASSED
197
+ - **All documented features accounted for**
198
+ - **Ready for Refactor phase**
199
+ ```
200
+
201
+ ## Hook Integration
202
+
203
+ This command is normally triggered automatically by `verify-after-green.py` hook after tests pass.
204
+
205
+ Manual invocation is useful when:
206
+
207
+ - Hook was skipped or didn't trigger
208
+ - Want to re-verify after changes
209
+ - Research is stale and needs refresh
210
+
211
+ ## Workflow Position
212
+
213
+ ```
214
+ Phase 8: TDD Red (write tests)
215
+
216
+
217
+ Phase 9: TDD Green (implementation)
218
+
219
+
220
+ Phase 10: VERIFY ← /api-verify triggers this
221
+
222
+ ├─► Gaps found? → Loop back to Phase 8
223
+
224
+ └─► All verified → Proceed to Phase 11 (Refactor)
225
+ ```
226
+
227
+ <claude-commands-template>
228
+ ## Verification Guidelines
229
+
230
+ 1. **Re-read, don't remember** - Fresh fetch of docs every time
231
+ 2. **Feature-by-feature** - Systematic comparison
232
+ 3. **Document omissions** - Intentional != forgotten
233
+ 4. **Loop back for gaps** - Return to TDD Red if fixes needed
234
+ 5. **Update state file** - Track everything
235
+ 6. **Create verification report** - Audit trail
236
+
237
+ ## Common Gaps to Check
238
+
239
+ - Parameter counts match?
240
+ - Enum options complete?
241
+ - Range boundaries correct?
242
+ - Error codes handled?
243
+ - Optional features accounted for?
244
+ - Default values match docs?
245
+ </claude-commands-template>
@@ -0,0 +1,111 @@
1
+ ---
2
+ name: beepboop
3
+ description: Communicate AI-generated content with transparent attribution. Adds markers indicating AI authorship. Use when sharing AI-generated code or content. Keywords: attribution, transparency, ai-generated, ethics, communication
4
+ license: MIT
5
+ compatibility: Requires Claude Code with MCP servers (Context7, GitHub), Python 3.9+ for hooks, pnpm 10.11.0+
6
+ metadata:
7
+ version: "3.0.0"
8
+ category: "workflow"
9
+ tags: ['attribution', 'transparency', 'ai-generated', 'ethics']
10
+ author: "Hustle Together"
11
+ allowed-tools: WebSearch WebFetch mcp__context7 mcp__github AskUserQuestion Read Write Edit Bash TodoWrite
12
+ ---
13
+
14
+ ---
15
+
16
+ description: Communicate AI-generated content with transparent attribution
17
+ argument-hint: <task-description>
18
+
19
+ ---
20
+
21
+ # AI-Attributed Communication Command
22
+
23
+ Execute the user's requested task (e.g., posting PR comments, GitHub issue comments, or other communications through various MCPs), but frame the output with clear AI attribution.
24
+
25
+ ## General Guidelines
26
+
27
+ ### Output Style
28
+
29
+ - **Never explicitly mention TDD** in code, comments, commits, PRs, or issues
30
+ - Write natural, descriptive code without meta-commentary about the development process
31
+ - The code should speak for itself - TDD is the process, not the product
32
+
33
+ ## Instructions
34
+
35
+ Arguments: $ARGUMENTS
36
+
37
+ **IMPORTANT Communication Format:**
38
+
39
+ 1. **Opening**: Begin with "_Beep boop, I am Claude Code 🤖, my user has reviewed and approved the following written by me:_"
40
+ - Use italics for this line
41
+ - Clearly establishes AI authorship
42
+
43
+ 2. **Middle**: Perform the requested task (post comment, create review, etc.)
44
+ - Execute whatever communication task the user requested
45
+ - Write the actual content that accomplishes the user's goal
46
+
47
+ 3. **Closing**: End with "_Beep boop, Claude Code 🤖 out!_"
48
+ - Use italics for this line
49
+ - Provides clear closure
50
+
51
+ ## Purpose
52
+
53
+ This command ensures transparency about AI usage while maintaining that the user has reviewed and approved the content. It prevents offloading review responsibility to other users while being open about AI assistance.
54
+
55
+ ## Examples
56
+
57
+ - Posting a GitHub PR review comment
58
+ - Adding a comment to a GitHub issue
59
+ - Responding to feedback with AI-generated explanations
60
+ - Any communication where AI attribution is valuable
61
+
62
+ ## 🛡 Project Rules (Injected into every command)
63
+
64
+ 1. **NO BROKEN BUILDS:**
65
+ - Run `pnpm test` before every `/commit`
66
+ - Ensure all tests pass
67
+ - Fix any type errors immediately
68
+
69
+ 2. **API DEVELOPMENT:**
70
+ - All new APIs MUST have Zod request/response schemas
71
+ - All APIs MUST be documented in both:
72
+ - OpenAPI spec ([src/lib/openapi/](src/lib/openapi/))
73
+ - API test manifest ([src/app/api-test/api-tests-manifest.json](src/app/api-test/api-tests-manifest.json))
74
+ - Test ALL parameters and edge cases
75
+ - Include code examples and real-world outputs
76
+
77
+ 3. **TDD WORKFLOW:**
78
+ - ALWAYS use /red → /green → /refactor cycle
79
+ - NEVER write implementation without failing test first
80
+ - Use /cycle for feature development
81
+ - Use characterization tests for refactoring
82
+
83
+ 4. **API KEY MANAGEMENT:**
84
+ - Support three loading methods:
85
+ - Server environment variables
86
+ - NEXT*PUBLIC* variables (client-side)
87
+ - Custom headers (X-OpenAI-Key, X-Anthropic-Key, etc.)
88
+ - Never hardcode API keys
89
+ - Always validate key availability before use
90
+
91
+ 5. **COMPREHENSIVE TESTING:**
92
+ - When researching APIs, read actual implementation code
93
+ - Discover ALL possible parameters (not just documented ones)
94
+ - Test with various parameter combinations
95
+ - Document custom headers, query params, request/response schemas
96
+ - Include validation rules and testing notes
97
+
98
+ 6. **NO UI BLOAT:**
99
+ - This is an API project with minimal frontend
100
+ - Only keep necessary test/documentation interfaces
101
+ - Delete unused components immediately
102
+ - No unnecessary UI libraries or features
103
+
104
+ 7. **DOCUMENTATION:**
105
+ - If you change an API, you MUST update:
106
+ - OpenAPI spec
107
+ - api-tests-manifest.json
108
+ - Code examples
109
+ - Testing notes
110
+ - Document expected behavior and edge cases
111
+ - Include real-world output examples
@@ -0,0 +1,126 @@
1
+ ---
2
+ name: busycommit
3
+ description: Create multiple atomic git commits, one logical change at a time. Analyzes changes and separates into meaningful commits. Use for complex changesets. Keywords: git, commit, atomic, granular, organization
4
+ license: MIT
5
+ compatibility: Requires Claude Code with MCP servers (Context7, GitHub), Python 3.9+ for hooks, pnpm 10.11.0+
6
+ metadata:
7
+ version: "3.0.0"
8
+ category: "git"
9
+ tags: ['git', 'commit', 'atomic', 'granular']
10
+ author: "Hustle Together"
11
+ allowed-tools: WebSearch WebFetch mcp__context7 mcp__github AskUserQuestion Read Write Edit Bash TodoWrite
12
+ ---
13
+
14
+ ---
15
+
16
+ description: Create multiple atomic git commits, one logical change at a time
17
+ argument-hint: [optional-commit-description]
18
+
19
+ ---
20
+
21
+ ## General Guidelines
22
+
23
+ ### Output Style
24
+
25
+ - **Never explicitly mention TDD** in code, comments, commits, PRs, or issues
26
+ - Write natural, descriptive code without meta-commentary about the development process
27
+ - The code should speak for itself - TDD is the process, not the product
28
+
29
+ Create multiple atomic git commits, committing the smallest possible logical unit at a time
30
+
31
+ Include any of the following info if specified: $ARGUMENTS
32
+
33
+ ## Process
34
+
35
+ 1. Run `git status` and `git diff` to review changes
36
+ 2. Run `git log --oneline -5` to see recent commit style
37
+ 3. Stage relevant files with `git add`
38
+ 4. Create commit with descriptive message
39
+ 5. Verify with `git status`
40
+
41
+ ## Example
42
+
43
+ ```bash
44
+ git add <files>
45
+ git commit -m "feat(#123): add validation to user input form"
46
+ ```
47
+
48
+ ## Atomic Commit Approach
49
+
50
+ Each commit should represent ONE logical change. Do NOT bundle multiple unrelated changes into one commit.
51
+
52
+ - Identify the smallest atomic units of change
53
+ - For EACH atomic unit: stage only those files/hunks, commit, verify
54
+ - Use `git add -p` to stage partial file changes when a file contains multiple logical changes
55
+ - Repeat until all changes are committed
56
+ - It is OK to create multiple commits without stopping - keep going until `git status` shows clean
57
+
58
+ ## Multi-Commit Example
59
+
60
+ If a single file contains multiple unrelated changes, use `git add -p` to stage hunks interactively:
61
+
62
+ ```bash
63
+ # Stage only the validation-related hunks from the file
64
+ git add -p src/user-service.ts
65
+ # Select 'y' for validation hunks, 'n' for others
66
+ git commit -m "feat(#123): add email format validation"
67
+
68
+ # Stage the error handling hunks
69
+ git add -p src/user-service.ts
70
+ git commit -m "fix(#124): handle null user gracefully"
71
+
72
+ # Stage remaining changes
73
+ git add src/user-service.ts
74
+ git commit -m "refactor: extract user lookup to helper"
75
+ ```
76
+
77
+ ## 🛡 Project Rules (Injected into every command)
78
+
79
+ 1. **NO BROKEN BUILDS:**
80
+ - Run `pnpm test` before every `/commit`
81
+ - Ensure all tests pass
82
+ - Fix any type errors immediately
83
+
84
+ 2. **API DEVELOPMENT:**
85
+ - All new APIs MUST have Zod request/response schemas
86
+ - All APIs MUST be documented in both:
87
+ - OpenAPI spec ([src/lib/openapi/](src/lib/openapi/))
88
+ - API test manifest ([src/app/api-test/api-tests-manifest.json](src/app/api-test/api-tests-manifest.json))
89
+ - Test ALL parameters and edge cases
90
+ - Include code examples and real-world outputs
91
+
92
+ 3. **TDD WORKFLOW:**
93
+ - ALWAYS use /red → /green → /refactor cycle
94
+ - NEVER write implementation without failing test first
95
+ - Use /cycle for feature development
96
+ - Use characterization tests for refactoring
97
+
98
+ 4. **API KEY MANAGEMENT:**
99
+ - Support three loading methods:
100
+ - Server environment variables
101
+ - NEXT*PUBLIC* variables (client-side)
102
+ - Custom headers (X-OpenAI-Key, X-Anthropic-Key, etc.)
103
+ - Never hardcode API keys
104
+ - Always validate key availability before use
105
+
106
+ 5. **COMPREHENSIVE TESTING:**
107
+ - When researching APIs, read actual implementation code
108
+ - Discover ALL possible parameters (not just documented ones)
109
+ - Test with various parameter combinations
110
+ - Document custom headers, query params, request/response schemas
111
+ - Include validation rules and testing notes
112
+
113
+ 6. **NO UI BLOAT:**
114
+ - This is an API project with minimal frontend
115
+ - Only keep necessary test/documentation interfaces
116
+ - Delete unused components immediately
117
+ - No unnecessary UI libraries or features
118
+
119
+ 7. **DOCUMENTATION:**
120
+ - If you change an API, you MUST update:
121
+ - OpenAPI spec
122
+ - api-tests-manifest.json
123
+ - Code examples
124
+ - Testing notes
125
+ - Document expected behavior and edge cases
126
+ - Include real-world output examples
@@ -0,0 +1,97 @@
1
+ ---
2
+ name: commit
3
+ description: Create semantic git commit following project standards with co-author attribution. Analyzes staged changes, suggests commit message. Use after completing features. Keywords: git, commit, semantic, versioning, attribution
4
+ license: MIT
5
+ compatibility: Requires Claude Code with MCP servers (Context7, GitHub), Python 3.9+ for hooks, pnpm 10.11.0+
6
+ metadata:
7
+ version: "3.0.0"
8
+ category: "git"
9
+ tags: ['git', 'commit', 'semantic', 'versioning']
10
+ author: "Hustle Together"
11
+ allowed-tools: WebSearch WebFetch mcp__context7 mcp__github AskUserQuestion Read Write Edit Bash TodoWrite
12
+ ---
13
+
14
+ ---
15
+
16
+ description: Create a git commit following project standards
17
+ argument-hint: [optional-commit-description]
18
+
19
+ ---
20
+
21
+ ## General Guidelines
22
+
23
+ ### Output Style
24
+
25
+ - **Never explicitly mention TDD** in code, comments, commits, PRs, or issues
26
+ - Write natural, descriptive code without meta-commentary about the development process
27
+ - The code should speak for itself - TDD is the process, not the product
28
+
29
+ Create a git commit following project standards
30
+
31
+ Include any of the following info if specified: $ARGUMENTS
32
+
33
+ ## Process
34
+
35
+ 1. Run `git status` and `git diff` to review changes
36
+ 2. Run `git log --oneline -5` to see recent commit style
37
+ 3. Stage relevant files with `git add`
38
+ 4. Create commit with descriptive message
39
+ 5. Verify with `git status`
40
+
41
+ ## Example
42
+
43
+ ```bash
44
+ git add <files>
45
+ git commit -m "feat(#123): add validation to user input form"
46
+ ```
47
+
48
+ ## 🛡 Project Rules (Injected into every command)
49
+
50
+ 1. **NO BROKEN BUILDS:**
51
+ - Run `pnpm test` before every `/commit`
52
+ - Ensure all tests pass
53
+ - Fix any type errors immediately
54
+
55
+ 2. **API DEVELOPMENT:**
56
+ - All new APIs MUST have Zod request/response schemas
57
+ - All APIs MUST be documented in both:
58
+ - OpenAPI spec ([src/lib/openapi/](src/lib/openapi/))
59
+ - API test manifest ([src/app/api-test/api-tests-manifest.json](src/app/api-test/api-tests-manifest.json))
60
+ - Test ALL parameters and edge cases
61
+ - Include code examples and real-world outputs
62
+
63
+ 3. **TDD WORKFLOW:**
64
+ - ALWAYS use /red → /green → /refactor cycle
65
+ - NEVER write implementation without failing test first
66
+ - Use /cycle for feature development
67
+ - Use characterization tests for refactoring
68
+
69
+ 4. **API KEY MANAGEMENT:**
70
+ - Support three loading methods:
71
+ - Server environment variables
72
+ - NEXT*PUBLIC* variables (client-side)
73
+ - Custom headers (X-OpenAI-Key, X-Anthropic-Key, etc.)
74
+ - Never hardcode API keys
75
+ - Always validate key availability before use
76
+
77
+ 5. **COMPREHENSIVE TESTING:**
78
+ - When researching APIs, read actual implementation code
79
+ - Discover ALL possible parameters (not just documented ones)
80
+ - Test with various parameter combinations
81
+ - Document custom headers, query params, request/response schemas
82
+ - Include validation rules and testing notes
83
+
84
+ 6. **NO UI BLOAT:**
85
+ - This is an API project with minimal frontend
86
+ - Only keep necessary test/documentation interfaces
87
+ - Delete unused components immediately
88
+ - No unnecessary UI libraries or features
89
+
90
+ 7. **DOCUMENTATION:**
91
+ - If you change an API, you MUST update:
92
+ - OpenAPI spec
93
+ - api-tests-manifest.json
94
+ - Code examples
95
+ - Testing notes
96
+ - Document expected behavior and edge cases
97
+ - Include real-world output examples