@su-record/vibe 2.5.10 → 2.5.11

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 (233) hide show
  1. package/CLAUDE.md +448 -348
  2. package/LICENSE +21 -21
  3. package/README.md +262 -262
  4. package/agents/architect-low.md +41 -0
  5. package/agents/architect-medium.md +59 -0
  6. package/agents/architect.md +80 -0
  7. package/agents/build-error-resolver.md +115 -115
  8. package/agents/compounder.md +261 -261
  9. package/agents/diagrammer.md +178 -178
  10. package/agents/e2e-tester.md +266 -266
  11. package/agents/explorer-low.md +42 -0
  12. package/agents/explorer-medium.md +59 -0
  13. package/agents/explorer.md +48 -48
  14. package/agents/implementer-low.md +43 -0
  15. package/agents/implementer-medium.md +52 -0
  16. package/agents/implementer.md +54 -54
  17. package/agents/refactor-cleaner.md +143 -143
  18. package/agents/research/best-practices-agent.md +189 -189
  19. package/agents/research/codebase-patterns-agent.md +147 -147
  20. package/agents/research/framework-docs-agent.md +178 -178
  21. package/agents/research/security-advisory-agent.md +203 -203
  22. package/agents/review/architecture-reviewer.md +107 -107
  23. package/agents/review/complexity-reviewer.md +116 -116
  24. package/agents/review/data-integrity-reviewer.md +88 -88
  25. package/agents/review/git-history-reviewer.md +103 -103
  26. package/agents/review/performance-reviewer.md +86 -86
  27. package/agents/review/python-reviewer.md +150 -150
  28. package/agents/review/rails-reviewer.md +139 -139
  29. package/agents/review/react-reviewer.md +144 -144
  30. package/agents/review/security-reviewer.md +80 -80
  31. package/agents/review/simplicity-reviewer.md +140 -140
  32. package/agents/review/test-coverage-reviewer.md +116 -116
  33. package/agents/review/typescript-reviewer.md +127 -127
  34. package/agents/searcher.md +54 -54
  35. package/agents/simplifier.md +120 -120
  36. package/agents/tester.md +49 -49
  37. package/agents/ui-previewer.md +129 -129
  38. package/commands/vibe.analyze.md +356 -356
  39. package/commands/vibe.reason.md +329 -329
  40. package/commands/vibe.review.md +326 -326
  41. package/commands/vibe.run.md +1051 -1031
  42. package/commands/vibe.spec.md +1058 -1058
  43. package/commands/vibe.utils.md +296 -296
  44. package/commands/vibe.verify.md +375 -375
  45. package/dist/cli/collaborator.js +52 -52
  46. package/dist/cli/detect.js +32 -32
  47. package/dist/cli/index.js +102 -102
  48. package/dist/cli/llm.js +144 -144
  49. package/dist/lib/DeepInit.d.ts +62 -0
  50. package/dist/lib/DeepInit.d.ts.map +1 -0
  51. package/dist/lib/DeepInit.js +247 -0
  52. package/dist/lib/DeepInit.js.map +1 -0
  53. package/dist/lib/IterationTracker.d.ts +81 -0
  54. package/dist/lib/IterationTracker.d.ts.map +1 -0
  55. package/dist/lib/IterationTracker.js +190 -0
  56. package/dist/lib/IterationTracker.js.map +1 -0
  57. package/dist/lib/ModelRouter.d.ts +50 -0
  58. package/dist/lib/ModelRouter.d.ts.map +1 -0
  59. package/dist/lib/ModelRouter.js +218 -0
  60. package/dist/lib/ModelRouter.js.map +1 -0
  61. package/dist/lib/OrchestrateWorkflow.d.ts +90 -0
  62. package/dist/lib/OrchestrateWorkflow.d.ts.map +1 -0
  63. package/dist/lib/OrchestrateWorkflow.js +261 -0
  64. package/dist/lib/OrchestrateWorkflow.js.map +1 -0
  65. package/dist/lib/PythonParser.js +108 -108
  66. package/dist/lib/SkillFrontmatter.d.ts +64 -0
  67. package/dist/lib/SkillFrontmatter.d.ts.map +1 -0
  68. package/dist/lib/SkillFrontmatter.js +221 -0
  69. package/dist/lib/SkillFrontmatter.js.map +1 -0
  70. package/dist/lib/SkillQualityGate.d.ts +40 -0
  71. package/dist/lib/SkillQualityGate.d.ts.map +1 -0
  72. package/dist/lib/SkillQualityGate.js +218 -0
  73. package/dist/lib/SkillQualityGate.js.map +1 -0
  74. package/dist/lib/UltraQA.d.ts +70 -0
  75. package/dist/lib/UltraQA.d.ts.map +1 -0
  76. package/dist/lib/UltraQA.js +234 -0
  77. package/dist/lib/UltraQA.js.map +1 -0
  78. package/dist/lib/gpt-api.js +4 -4
  79. package/dist/lib/memory/KnowledgeGraph.js +4 -4
  80. package/dist/lib/memory/MemorySearch.js +20 -20
  81. package/dist/lib/memory/MemoryStorage.js +64 -64
  82. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  83. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  84. package/dist/tools/index.d.ts +7 -0
  85. package/dist/tools/index.d.ts.map +1 -1
  86. package/dist/tools/index.js +12 -0
  87. package/dist/tools/index.js.map +1 -1
  88. package/hooks/hooks.json +222 -204
  89. package/hooks/scripts/code-check.js +22 -22
  90. package/hooks/scripts/code-review.js +22 -22
  91. package/hooks/scripts/complexity.js +22 -22
  92. package/hooks/scripts/compound.js +23 -23
  93. package/hooks/scripts/context-save.js +33 -33
  94. package/hooks/scripts/hud-multiline.js +264 -0
  95. package/hooks/scripts/hud-status.js +293 -0
  96. package/hooks/scripts/keyword-detector.js +216 -0
  97. package/hooks/scripts/llm-orchestrate.js +171 -171
  98. package/hooks/scripts/post-edit.js +97 -97
  99. package/hooks/scripts/post-tool-verify.js +212 -0
  100. package/hooks/scripts/pre-tool-guard.js +127 -0
  101. package/hooks/scripts/recall.js +22 -22
  102. package/hooks/scripts/session-start.js +30 -30
  103. package/hooks/scripts/skill-injector.js +193 -0
  104. package/hooks/scripts/utils.js +97 -97
  105. package/languages/csharp-unity.md +515 -515
  106. package/languages/gdscript-godot.md +470 -470
  107. package/languages/ruby-rails.md +489 -489
  108. package/languages/typescript-angular.md +433 -433
  109. package/languages/typescript-astro.md +416 -416
  110. package/languages/typescript-electron.md +406 -406
  111. package/languages/typescript-nestjs.md +524 -524
  112. package/languages/typescript-svelte.md +407 -407
  113. package/languages/typescript-tauri.md +365 -365
  114. package/package.json +83 -83
  115. package/skills/context7-usage.md +102 -102
  116. package/skills/git-worktree.md +181 -181
  117. package/skills/parallel-research.md +77 -77
  118. package/skills/priority-todos.md +239 -239
  119. package/skills/tool-fallback.md +190 -190
  120. package/skills/vibe-capabilities.md +161 -161
  121. package/vibe/constitution.md +227 -227
  122. package/vibe/rules/core/communication-guide.md +98 -98
  123. package/vibe/rules/core/development-philosophy.md +52 -52
  124. package/vibe/rules/core/quick-start.md +102 -102
  125. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  126. package/vibe/rules/quality/checklist.md +276 -276
  127. package/vibe/rules/quality/testing-strategy.md +440 -440
  128. package/vibe/rules/standards/anti-patterns.md +541 -541
  129. package/vibe/rules/standards/code-structure.md +291 -291
  130. package/vibe/rules/standards/complexity-metrics.md +313 -313
  131. package/vibe/rules/standards/naming-conventions.md +198 -198
  132. package/vibe/setup.sh +31 -31
  133. package/vibe/templates/constitution-template.md +252 -252
  134. package/vibe/templates/contract-backend-template.md +526 -526
  135. package/vibe/templates/contract-frontend-template.md +599 -599
  136. package/vibe/templates/feature-template.md +96 -96
  137. package/vibe/templates/spec-template.md +221 -221
  138. package/dist/cli/mcp.d.ts +0 -49
  139. package/dist/cli/mcp.d.ts.map +0 -1
  140. package/dist/cli/mcp.js +0 -169
  141. package/dist/cli/mcp.js.map +0 -1
  142. package/dist/lib/gemini-mcp.d.ts +0 -10
  143. package/dist/lib/gemini-mcp.d.ts.map +0 -1
  144. package/dist/lib/gemini-mcp.js +0 -353
  145. package/dist/lib/gemini-mcp.js.map +0 -1
  146. package/dist/lib/gpt-mcp.d.ts +0 -10
  147. package/dist/lib/gpt-mcp.d.ts.map +0 -1
  148. package/dist/lib/gpt-mcp.js +0 -352
  149. package/dist/lib/gpt-mcp.js.map +0 -1
  150. package/dist/tools/analytics/getUsageAnalytics.d.ts +0 -10
  151. package/dist/tools/analytics/getUsageAnalytics.d.ts.map +0 -1
  152. package/dist/tools/analytics/getUsageAnalytics.js +0 -246
  153. package/dist/tools/analytics/getUsageAnalytics.js.map +0 -1
  154. package/dist/tools/analytics/index.d.ts +0 -5
  155. package/dist/tools/analytics/index.d.ts.map +0 -1
  156. package/dist/tools/analytics/index.js +0 -5
  157. package/dist/tools/analytics/index.js.map +0 -1
  158. package/dist/tools/convention/getCodingGuide.d.ts +0 -7
  159. package/dist/tools/convention/getCodingGuide.d.ts.map +0 -1
  160. package/dist/tools/convention/getCodingGuide.js +0 -69
  161. package/dist/tools/convention/getCodingGuide.js.map +0 -1
  162. package/dist/tools/planning/analyzeRequirements.d.ts +0 -9
  163. package/dist/tools/planning/analyzeRequirements.d.ts.map +0 -1
  164. package/dist/tools/planning/analyzeRequirements.js +0 -171
  165. package/dist/tools/planning/analyzeRequirements.js.map +0 -1
  166. package/dist/tools/planning/createUserStories.d.ts +0 -9
  167. package/dist/tools/planning/createUserStories.d.ts.map +0 -1
  168. package/dist/tools/planning/createUserStories.js +0 -124
  169. package/dist/tools/planning/createUserStories.js.map +0 -1
  170. package/dist/tools/planning/featureRoadmap.d.ts +0 -10
  171. package/dist/tools/planning/featureRoadmap.d.ts.map +0 -1
  172. package/dist/tools/planning/featureRoadmap.js +0 -207
  173. package/dist/tools/planning/featureRoadmap.js.map +0 -1
  174. package/dist/tools/planning/generatePrd.d.ts +0 -11
  175. package/dist/tools/planning/generatePrd.d.ts.map +0 -1
  176. package/dist/tools/planning/generatePrd.js +0 -161
  177. package/dist/tools/planning/generatePrd.js.map +0 -1
  178. package/dist/tools/planning/index.d.ts +0 -8
  179. package/dist/tools/planning/index.d.ts.map +0 -1
  180. package/dist/tools/planning/index.js +0 -8
  181. package/dist/tools/planning/index.js.map +0 -1
  182. package/dist/tools/prompt/analyzePrompt.d.ts +0 -7
  183. package/dist/tools/prompt/analyzePrompt.d.ts.map +0 -1
  184. package/dist/tools/prompt/analyzePrompt.js +0 -150
  185. package/dist/tools/prompt/analyzePrompt.js.map +0 -1
  186. package/dist/tools/prompt/enhancePrompt.d.ts +0 -8
  187. package/dist/tools/prompt/enhancePrompt.d.ts.map +0 -1
  188. package/dist/tools/prompt/enhancePrompt.js +0 -110
  189. package/dist/tools/prompt/enhancePrompt.js.map +0 -1
  190. package/dist/tools/prompt/enhancePromptGemini.d.ts +0 -8
  191. package/dist/tools/prompt/enhancePromptGemini.d.ts.map +0 -1
  192. package/dist/tools/prompt/enhancePromptGemini.js +0 -332
  193. package/dist/tools/prompt/enhancePromptGemini.js.map +0 -1
  194. package/dist/tools/prompt/index.d.ts +0 -7
  195. package/dist/tools/prompt/index.d.ts.map +0 -1
  196. package/dist/tools/prompt/index.js +0 -7
  197. package/dist/tools/prompt/index.js.map +0 -1
  198. package/dist/tools/reasoning/applyReasoningFramework.d.ts +0 -8
  199. package/dist/tools/reasoning/applyReasoningFramework.d.ts.map +0 -1
  200. package/dist/tools/reasoning/applyReasoningFramework.js +0 -266
  201. package/dist/tools/reasoning/applyReasoningFramework.js.map +0 -1
  202. package/dist/tools/reasoning/index.d.ts +0 -5
  203. package/dist/tools/reasoning/index.d.ts.map +0 -1
  204. package/dist/tools/reasoning/index.js +0 -5
  205. package/dist/tools/reasoning/index.js.map +0 -1
  206. package/dist/tools/thinking/analyzeProblem.d.ts +0 -7
  207. package/dist/tools/thinking/analyzeProblem.d.ts.map +0 -1
  208. package/dist/tools/thinking/analyzeProblem.js +0 -55
  209. package/dist/tools/thinking/analyzeProblem.js.map +0 -1
  210. package/dist/tools/thinking/breakDownProblem.d.ts +0 -8
  211. package/dist/tools/thinking/breakDownProblem.d.ts.map +0 -1
  212. package/dist/tools/thinking/breakDownProblem.js +0 -145
  213. package/dist/tools/thinking/breakDownProblem.js.map +0 -1
  214. package/dist/tools/thinking/createThinkingChain.d.ts +0 -7
  215. package/dist/tools/thinking/createThinkingChain.d.ts.map +0 -1
  216. package/dist/tools/thinking/createThinkingChain.js +0 -44
  217. package/dist/tools/thinking/createThinkingChain.js.map +0 -1
  218. package/dist/tools/thinking/formatAsPlan.d.ts +0 -9
  219. package/dist/tools/thinking/formatAsPlan.d.ts.map +0 -1
  220. package/dist/tools/thinking/formatAsPlan.js +0 -78
  221. package/dist/tools/thinking/formatAsPlan.js.map +0 -1
  222. package/dist/tools/thinking/index.d.ts +0 -10
  223. package/dist/tools/thinking/index.d.ts.map +0 -1
  224. package/dist/tools/thinking/index.js +0 -10
  225. package/dist/tools/thinking/index.js.map +0 -1
  226. package/dist/tools/thinking/stepByStepAnalysis.d.ts +0 -8
  227. package/dist/tools/thinking/stepByStepAnalysis.d.ts.map +0 -1
  228. package/dist/tools/thinking/stepByStepAnalysis.js +0 -63
  229. package/dist/tools/thinking/stepByStepAnalysis.js.map +0 -1
  230. package/dist/tools/thinking/thinkAloudProcess.d.ts +0 -8
  231. package/dist/tools/thinking/thinkAloudProcess.d.ts.map +0 -1
  232. package/dist/tools/thinking/thinkAloudProcess.js +0 -80
  233. package/dist/tools/thinking/thinkAloudProcess.js.map +0 -1
@@ -1,239 +1,239 @@
1
- ---
2
- description: Priority-based TODO management (P1/P2/P3). Auto-activates when managing tasks, reviewing issues, or organizing work by priority.
3
- ---
4
- # Priority-Based Todo Management Skill
5
-
6
- Priority-based TODO management system
7
-
8
- ## Overview
9
-
10
- Classify tasks by P1/P2/P3 priority to handle important items first
11
-
12
- ## Priority Levels
13
-
14
- ```
15
- ┌─────────────────────────────────────────────────────────────────┐
16
- │ Priority Levels │
17
- ├─────────────────────────────────────────────────────────────────┤
18
- │ │
19
- │ 🔴 P1 (Critical) │
20
- │ ├── Security vulnerabilities │
21
- │ ├── Data loss risk │
22
- │ ├── Production incidents │
23
- │ └── Merge-blocking issues │
24
- │ │
25
- │ 🟡 P2 (Important) │
26
- │ ├── Performance issues │
27
- │ ├── Missing tests │
28
- │ ├── Architecture violations │
29
- │ └── Technical debt │
30
- │ │
31
- │ 🔵 P3 (Nice-to-have) │
32
- │ ├── Code style │
33
- │ ├── Refactoring suggestions │
34
- │ ├── Documentation │
35
- │ └── Optimization opportunities │
36
- │ │
37
- └─────────────────────────────────────────────────────────────────┘
38
- ```
39
-
40
- ## File-Based Todo System
41
-
42
- ### Directory Structure
43
-
44
- ```
45
- .claude/vibe/todos/
46
- ├── P1-security-sql-injection.md
47
- ├── P1-data-transaction-missing.md
48
- ├── P2-perf-n1-query.md
49
- ├── P2-test-missing-edge-case.md
50
- ├── P2-arch-circular-dependency.md
51
- ├── P3-style-extract-helper.md
52
- ├── P3-docs-add-readme.md
53
- └── index.md
54
- ```
55
-
56
- ### Todo File Format
57
-
58
- ```markdown
59
- # [P1] SQL Injection Vulnerability
60
-
61
- ## Summary
62
- User input directly concatenated in SQL query without sanitization.
63
-
64
- ## Priority Justification
65
- - 🔴 P1 (Critical)
66
- - Category: Security
67
- - Impact: High (data breach risk)
68
- - Effort: Low (simple fix)
69
-
70
- ## Location
71
- - **File**: src/api/users.py
72
- - **Line**: 42-45
73
- - **Function**: `get_user_by_email()`
74
-
75
- ## Current Code
76
- ```python
77
- def get_user_by_email(email: str):
78
- query = f"SELECT * FROM users WHERE email = '{email}'"
79
- return db.execute(query)
80
- ```
81
-
82
- ## Suggested Fix
83
- ```python
84
- def get_user_by_email(email: str):
85
- query = "SELECT * FROM users WHERE email = %s"
86
- return db.execute(query, (email,))
87
- ```
88
-
89
- ## Checklist
90
- - [ ] Fix implemented
91
- - [ ] Unit test added
92
- - [ ] Security test added
93
- - [ ] Code reviewed
94
- - [ ] Merged
95
-
96
- ## References
97
- - OWASP SQL Injection: https://owasp.org/www-community/attacks/SQL_Injection
98
- - Project Security Guide: docs/security.md
99
-
100
- ## Metadata
101
- - Created: 2026-01-11
102
- - Author: Claude
103
- - Review: /vibe.review PR#123
104
- ```
105
-
106
- ### Index File
107
-
108
- ```markdown
109
- # Todo Index
110
-
111
- ## Summary
112
- | Priority | Count | Status |
113
- |----------|-------|--------|
114
- | 🔴 P1 | 2 | 🚨 Blocks merge |
115
- | 🟡 P2 | 5 | ⚠️ Should fix |
116
- | 🔵 P3 | 3 | 💡 Backlog |
117
-
118
- ## 🔴 P1 Critical (Blocks Merge)
119
-
120
- | # | Title | Location | Status |
121
- |---|-------|----------|--------|
122
- | 1 | SQL Injection | users.py:42 | ❌ Open |
123
- | 2 | Missing Rollback | payment.py:128 | ❌ Open |
124
-
125
- ## 🟡 P2 Important
126
-
127
- | # | Title | Location | Status |
128
- |---|-------|----------|--------|
129
- | 3 | N+1 Query | orders.py:78 | ❌ Open |
130
- | 4 | Missing Tests | auth.py | ❌ Open |
131
- | 5 | Circular Dep | services/ | ❌ Open |
132
-
133
- ## 🔵 P3 Nice-to-have
134
-
135
- | # | Title | Location | Status |
136
- |---|-------|----------|--------|
137
- | 6 | Extract Helper | utils.py:45 | 💤 Backlog |
138
- | 7 | Add README | /payment | 💤 Backlog |
139
-
140
- ---
141
-
142
- Last updated: 2026-01-11 10:30
143
- ```
144
-
145
- ## Workflow Commands
146
-
147
- ### Create Todo
148
-
149
- ```bash
150
- # Auto-generated from /vibe.review results
151
- /vibe.review PR#123
152
- # -> Creates files in .claude/vibe/todos/
153
-
154
- # Manual creation
155
- vibe todo add "SQL Injection in users.py" --priority P1 --category security
156
- ```
157
-
158
- ### List Todos
159
-
160
- ```bash
161
- # Full list
162
- vibe todo list
163
-
164
- # By priority
165
- vibe todo list --priority P1
166
- vibe todo list --priority P2
167
-
168
- # By category
169
- vibe todo list --category security
170
- vibe todo list --category performance
171
- ```
172
-
173
- ### Complete Todo
174
-
175
- ```bash
176
- # Mark as complete
177
- vibe todo done P1-security-sql-injection
178
-
179
- # Updates checklist in file + updates index
180
- ```
181
-
182
- ### Clean Up
183
-
184
- ```bash
185
- # Archive completed items
186
- vibe todo archive
187
-
188
- # Result:
189
- # .claude/vibe/todos/P1-security-sql-injection.md
190
- # -> .claude/vibe/todos/done/2026-01-11-P1-security-sql-injection.md
191
- ```
192
-
193
- ## Integration with TodoWrite
194
-
195
- Integration with existing TodoWrite tool:
196
-
197
- ```javascript
198
- TodoWrite({
199
- todos: [
200
- {
201
- content: "[P1] Fix SQL injection in users.py:42",
202
- status: "in_progress",
203
- activeForm: "Fixing SQL injection vulnerability",
204
- priority: "P1", // extended field
205
- category: "security" // extended field
206
- },
207
- {
208
- content: "[P2] Add missing tests for auth",
209
- status: "pending",
210
- activeForm: "Adding auth tests",
211
- priority: "P2",
212
- category: "testing"
213
- }
214
- ]
215
- })
216
- ```
217
-
218
- ## Auto-Blocking Rules
219
-
220
- ```yaml
221
- # .claude/vibe/config.yaml
222
- merge_blocking:
223
- P1: true # Block merge if P1 exists
224
- P2: false # Warning only
225
- P3: false # Ignore
226
-
227
- notifications:
228
- P1: immediate # Immediate notification
229
- P2: daily # Daily summary
230
- P3: weekly # Weekly summary
231
- ```
232
-
233
- ## Best Practices
234
-
235
- 1. **Handle P1 immediately**: Stop other work and fix
236
- 2. **Handle P2 before PR**: Recommended to resolve before merge
237
- 3. **P3 is backlog**: Handle when time permits
238
- 4. **Regular cleanup**: Review todos weekly
239
- 5. **Document completions**: Document how issues were resolved
1
+ ---
2
+ description: Priority-based TODO management (P1/P2/P3). Auto-activates when managing tasks, reviewing issues, or organizing work by priority.
3
+ ---
4
+ # Priority-Based Todo Management Skill
5
+
6
+ Priority-based TODO management system
7
+
8
+ ## Overview
9
+
10
+ Classify tasks by P1/P2/P3 priority to handle important items first
11
+
12
+ ## Priority Levels
13
+
14
+ ```
15
+ ┌─────────────────────────────────────────────────────────────────┐
16
+ │ Priority Levels │
17
+ ├─────────────────────────────────────────────────────────────────┤
18
+ │ │
19
+ │ 🔴 P1 (Critical) │
20
+ │ ├── Security vulnerabilities │
21
+ │ ├── Data loss risk │
22
+ │ ├── Production incidents │
23
+ │ └── Merge-blocking issues │
24
+ │ │
25
+ │ 🟡 P2 (Important) │
26
+ │ ├── Performance issues │
27
+ │ ├── Missing tests │
28
+ │ ├── Architecture violations │
29
+ │ └── Technical debt │
30
+ │ │
31
+ │ 🔵 P3 (Nice-to-have) │
32
+ │ ├── Code style │
33
+ │ ├── Refactoring suggestions │
34
+ │ ├── Documentation │
35
+ │ └── Optimization opportunities │
36
+ │ │
37
+ └─────────────────────────────────────────────────────────────────┘
38
+ ```
39
+
40
+ ## File-Based Todo System
41
+
42
+ ### Directory Structure
43
+
44
+ ```
45
+ .claude/vibe/todos/
46
+ ├── P1-security-sql-injection.md
47
+ ├── P1-data-transaction-missing.md
48
+ ├── P2-perf-n1-query.md
49
+ ├── P2-test-missing-edge-case.md
50
+ ├── P2-arch-circular-dependency.md
51
+ ├── P3-style-extract-helper.md
52
+ ├── P3-docs-add-readme.md
53
+ └── index.md
54
+ ```
55
+
56
+ ### Todo File Format
57
+
58
+ ```markdown
59
+ # [P1] SQL Injection Vulnerability
60
+
61
+ ## Summary
62
+ User input directly concatenated in SQL query without sanitization.
63
+
64
+ ## Priority Justification
65
+ - 🔴 P1 (Critical)
66
+ - Category: Security
67
+ - Impact: High (data breach risk)
68
+ - Effort: Low (simple fix)
69
+
70
+ ## Location
71
+ - **File**: src/api/users.py
72
+ - **Line**: 42-45
73
+ - **Function**: `get_user_by_email()`
74
+
75
+ ## Current Code
76
+ ```python
77
+ def get_user_by_email(email: str):
78
+ query = f"SELECT * FROM users WHERE email = '{email}'"
79
+ return db.execute(query)
80
+ ```
81
+
82
+ ## Suggested Fix
83
+ ```python
84
+ def get_user_by_email(email: str):
85
+ query = "SELECT * FROM users WHERE email = %s"
86
+ return db.execute(query, (email,))
87
+ ```
88
+
89
+ ## Checklist
90
+ - [ ] Fix implemented
91
+ - [ ] Unit test added
92
+ - [ ] Security test added
93
+ - [ ] Code reviewed
94
+ - [ ] Merged
95
+
96
+ ## References
97
+ - OWASP SQL Injection: https://owasp.org/www-community/attacks/SQL_Injection
98
+ - Project Security Guide: docs/security.md
99
+
100
+ ## Metadata
101
+ - Created: 2026-01-11
102
+ - Author: Claude
103
+ - Review: /vibe.review PR#123
104
+ ```
105
+
106
+ ### Index File
107
+
108
+ ```markdown
109
+ # Todo Index
110
+
111
+ ## Summary
112
+ | Priority | Count | Status |
113
+ |----------|-------|--------|
114
+ | 🔴 P1 | 2 | 🚨 Blocks merge |
115
+ | 🟡 P2 | 5 | ⚠️ Should fix |
116
+ | 🔵 P3 | 3 | 💡 Backlog |
117
+
118
+ ## 🔴 P1 Critical (Blocks Merge)
119
+
120
+ | # | Title | Location | Status |
121
+ |---|-------|----------|--------|
122
+ | 1 | SQL Injection | users.py:42 | ❌ Open |
123
+ | 2 | Missing Rollback | payment.py:128 | ❌ Open |
124
+
125
+ ## 🟡 P2 Important
126
+
127
+ | # | Title | Location | Status |
128
+ |---|-------|----------|--------|
129
+ | 3 | N+1 Query | orders.py:78 | ❌ Open |
130
+ | 4 | Missing Tests | auth.py | ❌ Open |
131
+ | 5 | Circular Dep | services/ | ❌ Open |
132
+
133
+ ## 🔵 P3 Nice-to-have
134
+
135
+ | # | Title | Location | Status |
136
+ |---|-------|----------|--------|
137
+ | 6 | Extract Helper | utils.py:45 | 💤 Backlog |
138
+ | 7 | Add README | /payment | 💤 Backlog |
139
+
140
+ ---
141
+
142
+ Last updated: 2026-01-11 10:30
143
+ ```
144
+
145
+ ## Workflow Commands
146
+
147
+ ### Create Todo
148
+
149
+ ```bash
150
+ # Auto-generated from /vibe.review results
151
+ /vibe.review PR#123
152
+ # -> Creates files in .claude/vibe/todos/
153
+
154
+ # Manual creation
155
+ vibe todo add "SQL Injection in users.py" --priority P1 --category security
156
+ ```
157
+
158
+ ### List Todos
159
+
160
+ ```bash
161
+ # Full list
162
+ vibe todo list
163
+
164
+ # By priority
165
+ vibe todo list --priority P1
166
+ vibe todo list --priority P2
167
+
168
+ # By category
169
+ vibe todo list --category security
170
+ vibe todo list --category performance
171
+ ```
172
+
173
+ ### Complete Todo
174
+
175
+ ```bash
176
+ # Mark as complete
177
+ vibe todo done P1-security-sql-injection
178
+
179
+ # Updates checklist in file + updates index
180
+ ```
181
+
182
+ ### Clean Up
183
+
184
+ ```bash
185
+ # Archive completed items
186
+ vibe todo archive
187
+
188
+ # Result:
189
+ # .claude/vibe/todos/P1-security-sql-injection.md
190
+ # -> .claude/vibe/todos/done/2026-01-11-P1-security-sql-injection.md
191
+ ```
192
+
193
+ ## Integration with TodoWrite
194
+
195
+ Integration with existing TodoWrite tool:
196
+
197
+ ```javascript
198
+ TodoWrite({
199
+ todos: [
200
+ {
201
+ content: "[P1] Fix SQL injection in users.py:42",
202
+ status: "in_progress",
203
+ activeForm: "Fixing SQL injection vulnerability",
204
+ priority: "P1", // extended field
205
+ category: "security" // extended field
206
+ },
207
+ {
208
+ content: "[P2] Add missing tests for auth",
209
+ status: "pending",
210
+ activeForm: "Adding auth tests",
211
+ priority: "P2",
212
+ category: "testing"
213
+ }
214
+ ]
215
+ })
216
+ ```
217
+
218
+ ## Auto-Blocking Rules
219
+
220
+ ```yaml
221
+ # .claude/vibe/config.yaml
222
+ merge_blocking:
223
+ P1: true # Block merge if P1 exists
224
+ P2: false # Warning only
225
+ P3: false # Ignore
226
+
227
+ notifications:
228
+ P1: immediate # Immediate notification
229
+ P2: daily # Daily summary
230
+ P3: weekly # Weekly summary
231
+ ```
232
+
233
+ ## Best Practices
234
+
235
+ 1. **Handle P1 immediately**: Stop other work and fix
236
+ 2. **Handle P2 before PR**: Recommended to resolve before merge
237
+ 3. **P3 is backlog**: Handle when time permits
238
+ 4. **Regular cleanup**: Review todos weekly
239
+ 5. **Document completions**: Document how issues were resolved