@su-record/vibe 2.6.27 → 2.6.28

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 (246) hide show
  1. package/CLAUDE.md +202 -202
  2. package/LICENSE +21 -21
  3. package/README.md +267 -267
  4. package/agents/architect-low.md +41 -41
  5. package/agents/architect-medium.md +59 -59
  6. package/agents/architect.md +80 -80
  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/docs/api-documenter.md +99 -99
  11. package/agents/docs/changelog-writer.md +93 -93
  12. package/agents/e2e-tester.md +266 -266
  13. package/agents/explorer-low.md +42 -42
  14. package/agents/explorer-medium.md +59 -59
  15. package/agents/explorer.md +48 -48
  16. package/agents/implementer-low.md +43 -43
  17. package/agents/implementer-medium.md +52 -52
  18. package/agents/implementer.md +54 -54
  19. package/agents/planning/requirements-analyst.md +84 -84
  20. package/agents/planning/ux-advisor.md +83 -83
  21. package/agents/qa/acceptance-tester.md +86 -86
  22. package/agents/qa/edge-case-finder.md +93 -93
  23. package/agents/refactor-cleaner.md +143 -143
  24. package/agents/research/best-practices-agent.md +199 -199
  25. package/agents/research/codebase-patterns-agent.md +157 -157
  26. package/agents/research/framework-docs-agent.md +188 -188
  27. package/agents/research/security-advisory-agent.md +213 -213
  28. package/agents/review/architecture-reviewer.md +107 -107
  29. package/agents/review/complexity-reviewer.md +116 -116
  30. package/agents/review/data-integrity-reviewer.md +88 -88
  31. package/agents/review/git-history-reviewer.md +103 -103
  32. package/agents/review/performance-reviewer.md +86 -86
  33. package/agents/review/python-reviewer.md +150 -150
  34. package/agents/review/rails-reviewer.md +139 -139
  35. package/agents/review/react-reviewer.md +144 -144
  36. package/agents/review/security-reviewer.md +80 -80
  37. package/agents/review/simplicity-reviewer.md +140 -140
  38. package/agents/review/test-coverage-reviewer.md +116 -116
  39. package/agents/review/typescript-reviewer.md +127 -127
  40. package/agents/searcher.md +54 -54
  41. package/agents/simplifier.md +120 -120
  42. package/agents/tester.md +49 -49
  43. package/agents/ui-previewer.md +268 -268
  44. package/commands/vibe.analyze.md +356 -356
  45. package/commands/vibe.reason.md +329 -329
  46. package/commands/vibe.review.md +423 -423
  47. package/commands/vibe.run.md +1313 -1313
  48. package/commands/vibe.spec.md +1054 -1054
  49. package/commands/vibe.spec.review.md +412 -412
  50. package/commands/vibe.trace.md +161 -161
  51. package/commands/vibe.utils.md +376 -376
  52. package/commands/vibe.verify.md +375 -375
  53. package/dist/cli/collaborator.js +52 -52
  54. package/dist/cli/detect.js +32 -32
  55. package/dist/cli/hud.js +20 -20
  56. package/dist/cli/index.js +112 -112
  57. package/dist/cli/llm.js +144 -144
  58. package/dist/cli/mcp.d.ts +49 -0
  59. package/dist/cli/mcp.d.ts.map +1 -0
  60. package/dist/cli/mcp.js +169 -0
  61. package/dist/cli/mcp.js.map +1 -0
  62. package/dist/cli/postinstall.d.ts.map +1 -1
  63. package/dist/cli/postinstall.js +886 -858
  64. package/dist/cli/postinstall.js.map +1 -1
  65. package/dist/cli/setup/GlobalInstaller.d.ts +6 -0
  66. package/dist/cli/setup/GlobalInstaller.d.ts.map +1 -1
  67. package/dist/cli/setup/GlobalInstaller.js +26 -0
  68. package/dist/cli/setup/GlobalInstaller.js.map +1 -1
  69. package/dist/lib/DeepInit.js +24 -24
  70. package/dist/lib/IterationTracker.js +11 -11
  71. package/dist/lib/PythonParser.js +108 -108
  72. package/dist/lib/ReviewRace.js +96 -96
  73. package/dist/lib/SkillFrontmatter.js +28 -28
  74. package/dist/lib/SkillQualityGate.js +9 -9
  75. package/dist/lib/SkillRepository.js +159 -159
  76. package/dist/lib/UltraQA.js +77 -77
  77. package/dist/lib/gemini-api.js +5 -5
  78. package/dist/lib/gemini-mcp.d.ts +10 -0
  79. package/dist/lib/gemini-mcp.d.ts.map +1 -0
  80. package/dist/lib/gemini-mcp.js +353 -0
  81. package/dist/lib/gemini-mcp.js.map +1 -0
  82. package/dist/lib/gpt-api.js +4 -4
  83. package/dist/lib/gpt-mcp.d.ts +10 -0
  84. package/dist/lib/gpt-mcp.d.ts.map +1 -0
  85. package/dist/lib/gpt-mcp.js +352 -0
  86. package/dist/lib/gpt-mcp.js.map +1 -0
  87. package/dist/lib/memory/KnowledgeGraph.js +4 -4
  88. package/dist/lib/memory/MemorySearch.js +43 -43
  89. package/dist/lib/memory/MemoryStorage.js +130 -130
  90. package/dist/lib/memory/ObservationStore.js +28 -28
  91. package/dist/lib/memory/SessionRAGRetriever.js +7 -7
  92. package/dist/lib/memory/SessionRAGStore.js +216 -216
  93. package/dist/lib/memory/SessionSummarizer.js +9 -9
  94. package/dist/orchestrator/AgentManager.js +12 -12
  95. package/dist/orchestrator/MultiLlmResearch.js +8 -8
  96. package/dist/orchestrator/SmartRouter.js +11 -11
  97. package/dist/orchestrator/SwarmOrchestrator.test.js +16 -16
  98. package/dist/orchestrator/parallelResearch.js +24 -24
  99. package/dist/tools/analytics/getUsageAnalytics.d.ts +10 -0
  100. package/dist/tools/analytics/getUsageAnalytics.d.ts.map +1 -0
  101. package/dist/tools/analytics/getUsageAnalytics.js +246 -0
  102. package/dist/tools/analytics/getUsageAnalytics.js.map +1 -0
  103. package/dist/tools/analytics/index.d.ts +5 -0
  104. package/dist/tools/analytics/index.d.ts.map +1 -0
  105. package/dist/tools/analytics/index.js +5 -0
  106. package/dist/tools/analytics/index.js.map +1 -0
  107. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  108. package/dist/tools/convention/getCodingGuide.d.ts +7 -0
  109. package/dist/tools/convention/getCodingGuide.d.ts.map +1 -0
  110. package/dist/tools/convention/getCodingGuide.js +69 -0
  111. package/dist/tools/convention/getCodingGuide.js.map +1 -0
  112. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  113. package/dist/tools/planning/analyzeRequirements.d.ts +9 -0
  114. package/dist/tools/planning/analyzeRequirements.d.ts.map +1 -0
  115. package/dist/tools/planning/analyzeRequirements.js +171 -0
  116. package/dist/tools/planning/analyzeRequirements.js.map +1 -0
  117. package/dist/tools/planning/createUserStories.d.ts +9 -0
  118. package/dist/tools/planning/createUserStories.d.ts.map +1 -0
  119. package/dist/tools/planning/createUserStories.js +124 -0
  120. package/dist/tools/planning/createUserStories.js.map +1 -0
  121. package/dist/tools/planning/featureRoadmap.d.ts +10 -0
  122. package/dist/tools/planning/featureRoadmap.d.ts.map +1 -0
  123. package/dist/tools/planning/featureRoadmap.js +207 -0
  124. package/dist/tools/planning/featureRoadmap.js.map +1 -0
  125. package/dist/tools/planning/generatePrd.d.ts +11 -0
  126. package/dist/tools/planning/generatePrd.d.ts.map +1 -0
  127. package/dist/tools/planning/generatePrd.js +161 -0
  128. package/dist/tools/planning/generatePrd.js.map +1 -0
  129. package/dist/tools/planning/index.d.ts +8 -0
  130. package/dist/tools/planning/index.d.ts.map +1 -0
  131. package/dist/tools/planning/index.js +8 -0
  132. package/dist/tools/planning/index.js.map +1 -0
  133. package/dist/tools/prompt/analyzePrompt.d.ts +7 -0
  134. package/dist/tools/prompt/analyzePrompt.d.ts.map +1 -0
  135. package/dist/tools/prompt/analyzePrompt.js +150 -0
  136. package/dist/tools/prompt/analyzePrompt.js.map +1 -0
  137. package/dist/tools/prompt/enhancePrompt.d.ts +8 -0
  138. package/dist/tools/prompt/enhancePrompt.d.ts.map +1 -0
  139. package/dist/tools/prompt/enhancePrompt.js +110 -0
  140. package/dist/tools/prompt/enhancePrompt.js.map +1 -0
  141. package/dist/tools/prompt/enhancePromptGemini.d.ts +8 -0
  142. package/dist/tools/prompt/enhancePromptGemini.d.ts.map +1 -0
  143. package/dist/tools/prompt/enhancePromptGemini.js +332 -0
  144. package/dist/tools/prompt/enhancePromptGemini.js.map +1 -0
  145. package/dist/tools/prompt/index.d.ts +7 -0
  146. package/dist/tools/prompt/index.d.ts.map +1 -0
  147. package/dist/tools/prompt/index.js +7 -0
  148. package/dist/tools/prompt/index.js.map +1 -0
  149. package/dist/tools/reasoning/applyReasoningFramework.d.ts +8 -0
  150. package/dist/tools/reasoning/applyReasoningFramework.d.ts.map +1 -0
  151. package/dist/tools/reasoning/applyReasoningFramework.js +266 -0
  152. package/dist/tools/reasoning/applyReasoningFramework.js.map +1 -0
  153. package/dist/tools/reasoning/index.d.ts +5 -0
  154. package/dist/tools/reasoning/index.d.ts.map +1 -0
  155. package/dist/tools/reasoning/index.js +5 -0
  156. package/dist/tools/reasoning/index.js.map +1 -0
  157. package/dist/tools/spec/prdParser.test.js +171 -171
  158. package/dist/tools/spec/specGenerator.js +169 -169
  159. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  160. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  161. package/dist/tools/thinking/analyzeProblem.d.ts +7 -0
  162. package/dist/tools/thinking/analyzeProblem.d.ts.map +1 -0
  163. package/dist/tools/thinking/analyzeProblem.js +55 -0
  164. package/dist/tools/thinking/analyzeProblem.js.map +1 -0
  165. package/dist/tools/thinking/breakDownProblem.d.ts +8 -0
  166. package/dist/tools/thinking/breakDownProblem.d.ts.map +1 -0
  167. package/dist/tools/thinking/breakDownProblem.js +145 -0
  168. package/dist/tools/thinking/breakDownProblem.js.map +1 -0
  169. package/dist/tools/thinking/createThinkingChain.d.ts +7 -0
  170. package/dist/tools/thinking/createThinkingChain.d.ts.map +1 -0
  171. package/dist/tools/thinking/createThinkingChain.js +44 -0
  172. package/dist/tools/thinking/createThinkingChain.js.map +1 -0
  173. package/dist/tools/thinking/formatAsPlan.d.ts +9 -0
  174. package/dist/tools/thinking/formatAsPlan.d.ts.map +1 -0
  175. package/dist/tools/thinking/formatAsPlan.js +78 -0
  176. package/dist/tools/thinking/formatAsPlan.js.map +1 -0
  177. package/dist/tools/thinking/index.d.ts +10 -0
  178. package/dist/tools/thinking/index.d.ts.map +1 -0
  179. package/dist/tools/thinking/index.js +10 -0
  180. package/dist/tools/thinking/index.js.map +1 -0
  181. package/dist/tools/thinking/stepByStepAnalysis.d.ts +8 -0
  182. package/dist/tools/thinking/stepByStepAnalysis.d.ts.map +1 -0
  183. package/dist/tools/thinking/stepByStepAnalysis.js +63 -0
  184. package/dist/tools/thinking/stepByStepAnalysis.js.map +1 -0
  185. package/dist/tools/thinking/thinkAloudProcess.d.ts +8 -0
  186. package/dist/tools/thinking/thinkAloudProcess.d.ts.map +1 -0
  187. package/dist/tools/thinking/thinkAloudProcess.js +80 -0
  188. package/dist/tools/thinking/thinkAloudProcess.js.map +1 -0
  189. package/hooks/hooks.json +115 -115
  190. package/hooks/scripts/code-check.js +70 -70
  191. package/hooks/scripts/code-review.js +22 -22
  192. package/hooks/scripts/complexity.js +22 -22
  193. package/hooks/scripts/compound.js +23 -23
  194. package/hooks/scripts/context-save.js +53 -53
  195. package/hooks/scripts/gemini-ui-gen.js +281 -281
  196. package/hooks/scripts/generate-brand-assets.js +474 -474
  197. package/hooks/scripts/hud-multiline.js +262 -262
  198. package/hooks/scripts/hud-status.js +291 -291
  199. package/hooks/scripts/keyword-detector.js +214 -214
  200. package/hooks/scripts/llm-orchestrate.js +171 -171
  201. package/hooks/scripts/post-edit.js +97 -97
  202. package/hooks/scripts/post-tool-verify.js +210 -210
  203. package/hooks/scripts/pre-tool-guard.js +125 -125
  204. package/hooks/scripts/prompt-dispatcher.js +161 -161
  205. package/hooks/scripts/recall.js +22 -22
  206. package/hooks/scripts/session-start.js +30 -30
  207. package/hooks/scripts/skill-injector.js +191 -191
  208. package/hooks/scripts/utils.js +97 -97
  209. package/languages/csharp-unity.md +515 -515
  210. package/languages/gdscript-godot.md +470 -470
  211. package/languages/ruby-rails.md +489 -489
  212. package/languages/typescript-angular.md +433 -433
  213. package/languages/typescript-astro.md +416 -416
  214. package/languages/typescript-electron.md +406 -406
  215. package/languages/typescript-nestjs.md +524 -524
  216. package/languages/typescript-svelte.md +407 -407
  217. package/languages/typescript-tauri.md +365 -365
  218. package/package.json +84 -84
  219. package/skills/brand-assets.md +141 -141
  220. package/skills/commerce-patterns.md +361 -361
  221. package/skills/context7-usage.md +102 -102
  222. package/skills/e2e-commerce.md +304 -304
  223. package/skills/frontend-design.md +92 -92
  224. package/skills/git-worktree.md +181 -181
  225. package/skills/parallel-research.md +77 -77
  226. package/skills/priority-todos.md +239 -239
  227. package/skills/seo-checklist.md +244 -244
  228. package/skills/tool-fallback.md +190 -190
  229. package/skills/vibe-capabilities.md +161 -161
  230. package/vibe/constitution.md +227 -227
  231. package/vibe/rules/core/communication-guide.md +98 -98
  232. package/vibe/rules/core/development-philosophy.md +52 -52
  233. package/vibe/rules/core/quick-start.md +102 -102
  234. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  235. package/vibe/rules/quality/checklist.md +276 -276
  236. package/vibe/rules/quality/testing-strategy.md +440 -440
  237. package/vibe/rules/standards/anti-patterns.md +541 -541
  238. package/vibe/rules/standards/code-structure.md +291 -291
  239. package/vibe/rules/standards/complexity-metrics.md +313 -313
  240. package/vibe/rules/standards/naming-conventions.md +198 -198
  241. package/vibe/setup.sh +31 -31
  242. package/vibe/templates/constitution-template.md +252 -252
  243. package/vibe/templates/contract-backend-template.md +526 -526
  244. package/vibe/templates/contract-frontend-template.md +599 -599
  245. package/vibe/templates/feature-template.md +96 -96
  246. package/vibe/templates/spec-template.md +221 -221
package/CLAUDE.md CHANGED
@@ -1,202 +1,202 @@
1
- # VIBE
2
-
3
- SPEC-driven AI Coding Framework (Claude Code Exclusive)
4
-
5
- ## Response Language
6
-
7
- **IMPORTANT: Always respond in Korean (한국어) unless the user explicitly requests otherwise.**
8
-
9
- ## Code Quality Standards (Mandatory)
10
-
11
- Follow these standards when writing code. See `~/.claude/vibe/rules/` (global) for detailed rules.
12
-
13
- ### Core Principles
14
-
15
- - **Modify only requested scope** - Don't touch unrelated code
16
- - **Preserve existing style** - Follow project conventions
17
- - **Keep working code** - No unnecessary refactoring
18
- - **Respect user interrupts** - If user interrupts (Ctrl+C/Escape) and sends a new message, the previous task is CANCELLED. Do NOT resume or continue interrupted work. Respond ONLY to the new message.
19
-
20
- ### Code Complexity Limits
21
-
22
- | Metric | Limit |
23
- |----------------------|----------------------------------------------|
24
- | Function length | ≤30 lines (recommended), ≤50 lines (allowed) |
25
- | Nesting depth | ≤3 levels |
26
- | Parameters | ≤5 |
27
- | Cyclomatic complexity | ≤10 |
28
-
29
- ### TypeScript Rules
30
-
31
- - No `any` → `unknown` + type guards
32
- - No `as any` → proper interfaces
33
- - No `@ts-ignore`
34
- - Explicit return types
35
-
36
- ### Error Handling Required
37
-
38
- - try-catch or error state required
39
- - Loading state handling
40
- - User-friendly error messages
41
-
42
- ### Forbidden Patterns
43
-
44
- - No console.log in commits
45
- - No hardcoded strings/numbers
46
- - No commented-out code
47
- - No incomplete code without TODO
48
-
49
- ## Workflow
50
-
51
- ```text
52
- /vibe.spec → /new → /vibe.spec.review → /vibe.run → /vibe.trace → (auto) code review → ✅ Done
53
- ```
54
-
55
- 1. `/vibe.spec` - Write SPEC (requirements + research + draft)
56
- 2. `/new` - Start new session (clean context)
57
- 3. `/vibe.spec.review` - GPT/Gemini review (3-round mandatory)
58
- 4. `/vibe.run` - Implementation + Gemini review
59
- 5. **(auto)** 13+ agent parallel review + P1/P2 auto-fix
60
-
61
- ## Plan Mode vs VIBE
62
-
63
- | Task Size | Recommended |
64
- |------------------------------|--------------|
65
- | Simple changes (1-2 files) | Plan Mode |
66
- | Complex features (3+ files) | `/vibe.spec` |
67
-
68
- After `/vibe.analyze` or `/vibe.review` with dev request → **Ask user for workflow choice**
69
-
70
- ## ULTRAWORK Mode
71
-
72
- Include `ultrawork` or `ulw` keyword for maximum performance:
73
-
74
- - Parallel sub-agent exploration (3+ concurrent)
75
- - Background agents + Phase pipelining
76
- - Boulder Loop (auto-continue until all Phases complete)
77
- - Auto-retry on error (max 3), Auto-save at 70%+ context
78
-
79
- ## Commands
80
-
81
- | Command | Description |
82
- |------------------------------|-----------------------------------|
83
- | `/vibe.spec "name"` | Write SPEC (PTCF) + parallel research |
84
- | `/vibe.spec.review "name"` | GPT/Gemini review (new session) |
85
- | `/vibe.run "name"` | Execute implementation |
86
- | `/vibe.run "name" ultrawork` | Maximum performance mode |
87
- | `/vibe.verify "name"` | Verification against SPEC |
88
- | `/vibe.review` | 13+ agent parallel code review |
89
- | `/vibe.trace "name"` | Requirements traceability matrix |
90
- | `/vibe.reason "problem"` | Systematic reasoning |
91
- | `/vibe.analyze` | Project analysis |
92
- | `/vibe.utils --e2e` | E2E testing (Playwright) |
93
- | `/vibe.utils --diagram` | Generate diagrams |
94
- | `/vibe.utils --ui "desc"` | UI preview |
95
- | `/vibe.utils --continue` | Session restore |
96
-
97
- ## Magic Keywords
98
-
99
- | Keyword | Effect |
100
- |----------------------|-----------------------------------------------|
101
- | `ultrawork` / `ulw` | Parallel + auto-continue + Ralph Loop |
102
- | `ralph` | Iterate until 100% complete (no scope reduction) |
103
- | `ralplan` | Iterative planning + persistence |
104
- | `verify` | Strict verification mode |
105
- | `quick` | Fast mode, minimal verification |
106
-
107
- ## PTCF Structure
108
-
109
- SPEC documents use: `<role>` `<context>` `<task>` `<constraints>` `<output_format>` `<acceptance>`
110
-
111
- ## Built-in Tools
112
-
113
- ### Semantic & Quality
114
-
115
- | Tool | Purpose |
116
- |-------------------------------|----------------------------------|
117
- | `vibe_find_symbol` | Find symbol definitions |
118
- | `vibe_find_references` | Find references |
119
- | `vibe_analyze_complexity` | Analyze complexity |
120
- | `vibe_validate_code_quality` | Validate quality |
121
-
122
- ### Memory & Session
123
-
124
- | Tool | Purpose |
125
- |-------------------------------|----------------------------------|
126
- | `vibe_start_session` | Restore previous session context |
127
- | `vibe_auto_save_context` | Save current state |
128
- | `vibe_save_memory` | Save important decisions |
129
-
130
- ### Session RAG (v2.6.27)
131
-
132
- 구조화된 세션 컨텍스트를 저장/검색하는 시스템. SQLite + FTS5 BM25 하이브리드 검색.
133
-
134
- | Tool | Purpose |
135
- |-------------------------------|----------------------------------|
136
- | `save_session_item` | Decision/Constraint/Goal/Evidence 저장 |
137
- | `retrieve_session_context` | 하이브리드 검색 (BM25 + recency + priority) |
138
- | `manage_goals` | Goal 생명주기 관리 (list/update/complete) |
139
-
140
- **4가지 엔티티:**
141
-
142
- | Entity | Description | Key Fields |
143
- |--------|-------------|------------|
144
- | Decision | 사용자 확인 결정사항 | title, rationale, alternatives, impact, priority |
145
- | Constraint | 명시적 제약조건 | title, type (technical/business/resource/quality), severity |
146
- | Goal | 현재 목표 스택 (계층 지원) | title, status, priority, progressPercent, successCriteria |
147
- | Evidence | 검증/테스트 결과 | title, type (test/build/lint/coverage), status, metrics |
148
-
149
- **자동 주입:** `start_session` 호출 시 활성 Goals, 중요 Constraints, 최근 Decisions가 자동으로 세션 컨텍스트에 포함됨.
150
-
151
- ```typescript
152
- import { saveSessionItem, retrieveSessionContext, manageGoals } from '@su-record/vibe/tools';
153
-
154
- // 결정 저장
155
- await saveSessionItem({ itemType: 'decision', title: 'Use Vitest', rationale: 'Fast and modern' });
156
-
157
- // 제약 저장
158
- await saveSessionItem({ itemType: 'constraint', title: 'No vector DB', type: 'technical', severity: 'high' });
159
-
160
- // 목표 저장
161
- await saveSessionItem({ itemType: 'goal', title: 'Implement Session RAG', priority: 2 });
162
-
163
- // 컨텍스트 검색
164
- await retrieveSessionContext({ query: 'testing' });
165
-
166
- // 목표 관리
167
- await manageGoals({ action: 'list' });
168
- await manageGoals({ action: 'update', goalId: 1, progressPercent: 80 });
169
- await manageGoals({ action: 'complete', goalId: 1 });
170
- ```
171
-
172
- ## Agents
173
-
174
- - **Review (12)**: security, performance, architecture, complexity, simplicity, data-integrity, test-coverage, git-history, python, typescript, rails, react reviewers → `.claude/agents/review/`
175
- - **Research (4)**: best-practices, framework-docs, codebase-patterns, security-advisory → `.claude/agents/research/`
176
-
177
- ## Context Management
178
-
179
- ### Model Selection
180
-
181
- - **Exploration/Search**: Haiku
182
- - **Implementation**: Sonnet
183
- - **Architecture**: Opus
184
-
185
- ### At 70%+ Context
186
-
187
- - Do NOT use `/compact` (information loss risk)
188
- - Use `save_memory` → `/new` for new session
189
- - Restore with `/vibe.utils --continue`
190
-
191
- ## Documentation Guidelines
192
-
193
- - Avoid ASCII boxes → Use Mermaid diagrams, Markdown tables, or indented lists
194
- - Flowcharts → Mermaid | Structure → Indented lists | Comparisons → Tables
195
-
196
- ## Git Commit Rules
197
-
198
- **Must include:** `.claude/vibe/specs/`, `.claude/vibe/features/`, `.claude/vibe/todos/`, `.claude/vibe/config.json`, `CLAUDE.md`
199
-
200
- **Exclude:** `~/.claude/vibe/rules/`, `~/.claude/commands/`, `~/.claude/agents/`, `~/.claude/skills/`, `.claude/settings.local.json`
201
-
202
- <!-- VIBE:END -->
1
+ # VIBE
2
+
3
+ SPEC-driven AI Coding Framework (Claude Code Exclusive)
4
+
5
+ ## Response Language
6
+
7
+ **IMPORTANT: Always respond in Korean (한국어) unless the user explicitly requests otherwise.**
8
+
9
+ ## Code Quality Standards (Mandatory)
10
+
11
+ Follow these standards when writing code. See `~/.claude/vibe/rules/` (global) for detailed rules.
12
+
13
+ ### Core Principles
14
+
15
+ - **Modify only requested scope** - Don't touch unrelated code
16
+ - **Preserve existing style** - Follow project conventions
17
+ - **Keep working code** - No unnecessary refactoring
18
+ - **Respect user interrupts** - If user interrupts (Ctrl+C/Escape) and sends a new message, the previous task is CANCELLED. Do NOT resume or continue interrupted work. Respond ONLY to the new message.
19
+
20
+ ### Code Complexity Limits
21
+
22
+ | Metric | Limit |
23
+ |----------------------|----------------------------------------------|
24
+ | Function length | ≤30 lines (recommended), ≤50 lines (allowed) |
25
+ | Nesting depth | ≤3 levels |
26
+ | Parameters | ≤5 |
27
+ | Cyclomatic complexity | ≤10 |
28
+
29
+ ### TypeScript Rules
30
+
31
+ - No `any` → `unknown` + type guards
32
+ - No `as any` → proper interfaces
33
+ - No `@ts-ignore`
34
+ - Explicit return types
35
+
36
+ ### Error Handling Required
37
+
38
+ - try-catch or error state required
39
+ - Loading state handling
40
+ - User-friendly error messages
41
+
42
+ ### Forbidden Patterns
43
+
44
+ - No console.log in commits
45
+ - No hardcoded strings/numbers
46
+ - No commented-out code
47
+ - No incomplete code without TODO
48
+
49
+ ## Workflow
50
+
51
+ ```text
52
+ /vibe.spec → /new → /vibe.spec.review → /vibe.run → /vibe.trace → (auto) code review → ✅ Done
53
+ ```
54
+
55
+ 1. `/vibe.spec` - Write SPEC (requirements + research + draft)
56
+ 2. `/new` - Start new session (clean context)
57
+ 3. `/vibe.spec.review` - GPT/Gemini review (3-round mandatory)
58
+ 4. `/vibe.run` - Implementation + Gemini review
59
+ 5. **(auto)** 13+ agent parallel review + P1/P2 auto-fix
60
+
61
+ ## Plan Mode vs VIBE
62
+
63
+ | Task Size | Recommended |
64
+ |------------------------------|--------------|
65
+ | Simple changes (1-2 files) | Plan Mode |
66
+ | Complex features (3+ files) | `/vibe.spec` |
67
+
68
+ After `/vibe.analyze` or `/vibe.review` with dev request → **Ask user for workflow choice**
69
+
70
+ ## ULTRAWORK Mode
71
+
72
+ Include `ultrawork` or `ulw` keyword for maximum performance:
73
+
74
+ - Parallel sub-agent exploration (3+ concurrent)
75
+ - Background agents + Phase pipelining
76
+ - Boulder Loop (auto-continue until all Phases complete)
77
+ - Auto-retry on error (max 3), Auto-save at 70%+ context
78
+
79
+ ## Commands
80
+
81
+ | Command | Description |
82
+ |------------------------------|-----------------------------------|
83
+ | `/vibe.spec "name"` | Write SPEC (PTCF) + parallel research |
84
+ | `/vibe.spec.review "name"` | GPT/Gemini review (new session) |
85
+ | `/vibe.run "name"` | Execute implementation |
86
+ | `/vibe.run "name" ultrawork` | Maximum performance mode |
87
+ | `/vibe.verify "name"` | Verification against SPEC |
88
+ | `/vibe.review` | 13+ agent parallel code review |
89
+ | `/vibe.trace "name"` | Requirements traceability matrix |
90
+ | `/vibe.reason "problem"` | Systematic reasoning |
91
+ | `/vibe.analyze` | Project analysis |
92
+ | `/vibe.utils --e2e` | E2E testing (Playwright) |
93
+ | `/vibe.utils --diagram` | Generate diagrams |
94
+ | `/vibe.utils --ui "desc"` | UI preview |
95
+ | `/vibe.utils --continue` | Session restore |
96
+
97
+ ## Magic Keywords
98
+
99
+ | Keyword | Effect |
100
+ |----------------------|-----------------------------------------------|
101
+ | `ultrawork` / `ulw` | Parallel + auto-continue + Ralph Loop |
102
+ | `ralph` | Iterate until 100% complete (no scope reduction) |
103
+ | `ralplan` | Iterative planning + persistence |
104
+ | `verify` | Strict verification mode |
105
+ | `quick` | Fast mode, minimal verification |
106
+
107
+ ## PTCF Structure
108
+
109
+ SPEC documents use: `<role>` `<context>` `<task>` `<constraints>` `<output_format>` `<acceptance>`
110
+
111
+ ## Built-in Tools
112
+
113
+ ### Semantic & Quality
114
+
115
+ | Tool | Purpose |
116
+ |-------------------------------|----------------------------------|
117
+ | `vibe_find_symbol` | Find symbol definitions |
118
+ | `vibe_find_references` | Find references |
119
+ | `vibe_analyze_complexity` | Analyze complexity |
120
+ | `vibe_validate_code_quality` | Validate quality |
121
+
122
+ ### Memory & Session
123
+
124
+ | Tool | Purpose |
125
+ |-------------------------------|----------------------------------|
126
+ | `vibe_start_session` | Restore previous session context |
127
+ | `vibe_auto_save_context` | Save current state |
128
+ | `vibe_save_memory` | Save important decisions |
129
+
130
+ ### Session RAG (v2.6.27)
131
+
132
+ 구조화된 세션 컨텍스트를 저장/검색하는 시스템. SQLite + FTS5 BM25 하이브리드 검색.
133
+
134
+ | Tool | Purpose |
135
+ |-------------------------------|----------------------------------|
136
+ | `save_session_item` | Decision/Constraint/Goal/Evidence 저장 |
137
+ | `retrieve_session_context` | 하이브리드 검색 (BM25 + recency + priority) |
138
+ | `manage_goals` | Goal 생명주기 관리 (list/update/complete) |
139
+
140
+ **4가지 엔티티:**
141
+
142
+ | Entity | Description | Key Fields |
143
+ |--------|-------------|------------|
144
+ | Decision | 사용자 확인 결정사항 | title, rationale, alternatives, impact, priority |
145
+ | Constraint | 명시적 제약조건 | title, type (technical/business/resource/quality), severity |
146
+ | Goal | 현재 목표 스택 (계층 지원) | title, status, priority, progressPercent, successCriteria |
147
+ | Evidence | 검증/테스트 결과 | title, type (test/build/lint/coverage), status, metrics |
148
+
149
+ **자동 주입:** `start_session` 호출 시 활성 Goals, 중요 Constraints, 최근 Decisions가 자동으로 세션 컨텍스트에 포함됨.
150
+
151
+ ```typescript
152
+ import { saveSessionItem, retrieveSessionContext, manageGoals } from '@su-record/vibe/tools';
153
+
154
+ // 결정 저장
155
+ await saveSessionItem({ itemType: 'decision', title: 'Use Vitest', rationale: 'Fast and modern' });
156
+
157
+ // 제약 저장
158
+ await saveSessionItem({ itemType: 'constraint', title: 'No vector DB', type: 'technical', severity: 'high' });
159
+
160
+ // 목표 저장
161
+ await saveSessionItem({ itemType: 'goal', title: 'Implement Session RAG', priority: 2 });
162
+
163
+ // 컨텍스트 검색
164
+ await retrieveSessionContext({ query: 'testing' });
165
+
166
+ // 목표 관리
167
+ await manageGoals({ action: 'list' });
168
+ await manageGoals({ action: 'update', goalId: 1, progressPercent: 80 });
169
+ await manageGoals({ action: 'complete', goalId: 1 });
170
+ ```
171
+
172
+ ## Agents
173
+
174
+ - **Review (12)**: security, performance, architecture, complexity, simplicity, data-integrity, test-coverage, git-history, python, typescript, rails, react reviewers → `.claude/agents/review/`
175
+ - **Research (4)**: best-practices, framework-docs, codebase-patterns, security-advisory → `.claude/agents/research/`
176
+
177
+ ## Context Management
178
+
179
+ ### Model Selection
180
+
181
+ - **Exploration/Search**: Haiku
182
+ - **Implementation**: Sonnet
183
+ - **Architecture**: Opus
184
+
185
+ ### At 70%+ Context
186
+
187
+ - Do NOT use `/compact` (information loss risk)
188
+ - Use `save_memory` → `/new` for new session
189
+ - Restore with `/vibe.utils --continue`
190
+
191
+ ## Documentation Guidelines
192
+
193
+ - Avoid ASCII boxes → Use Mermaid diagrams, Markdown tables, or indented lists
194
+ - Flowcharts → Mermaid | Structure → Indented lists | Comparisons → Tables
195
+
196
+ ## Git Commit Rules
197
+
198
+ **Must include:** `.claude/vibe/specs/`, `.claude/vibe/features/`, `.claude/vibe/todos/`, `.claude/vibe/config.json`, `CLAUDE.md`
199
+
200
+ **Exclude:** `~/.claude/vibe/rules/`, `~/.claude/commands/`, `~/.claude/agents/`, `~/.claude/skills/`, `.claude/settings.local.json`
201
+
202
+ <!-- VIBE:END -->
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 Su
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Su
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.