@su-record/vibe 2.3.0 โ†’ 2.3.2

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 (98) hide show
  1. package/.claude/settings.json +35 -35
  2. package/.claude/settings.local.json +24 -25
  3. package/.claude/vibe/constitution.md +184 -184
  4. package/.claude/vibe/rules/core/communication-guide.md +104 -104
  5. package/.claude/vibe/rules/core/development-philosophy.md +52 -52
  6. package/.claude/vibe/rules/core/quick-start.md +120 -120
  7. package/.claude/vibe/rules/languages/dart-flutter.md +509 -509
  8. package/.claude/vibe/rules/languages/go.md +396 -396
  9. package/.claude/vibe/rules/languages/java-spring.md +586 -586
  10. package/.claude/vibe/rules/languages/kotlin-android.md +491 -491
  11. package/.claude/vibe/rules/languages/python-django.md +371 -371
  12. package/.claude/vibe/rules/languages/python-fastapi.md +386 -386
  13. package/.claude/vibe/rules/languages/rust.md +425 -425
  14. package/.claude/vibe/rules/languages/swift-ios.md +516 -516
  15. package/.claude/vibe/rules/languages/typescript-nextjs.md +441 -441
  16. package/.claude/vibe/rules/languages/typescript-node.md +375 -375
  17. package/.claude/vibe/rules/languages/typescript-nuxt.md +521 -521
  18. package/.claude/vibe/rules/languages/typescript-react-native.md +446 -446
  19. package/.claude/vibe/rules/languages/typescript-react.md +525 -525
  20. package/.claude/vibe/rules/languages/typescript-vue.md +353 -353
  21. package/.claude/vibe/rules/quality/bdd-contract-testing.md +388 -388
  22. package/.claude/vibe/rules/quality/checklist.md +276 -276
  23. package/.claude/vibe/rules/quality/testing-strategy.md +437 -437
  24. package/.claude/vibe/rules/standards/anti-patterns.md +369 -369
  25. package/.claude/vibe/rules/standards/code-structure.md +291 -291
  26. package/.claude/vibe/rules/standards/complexity-metrics.md +312 -312
  27. package/.claude/vibe/rules/standards/naming-conventions.md +198 -198
  28. package/.claude/vibe/setup.sh +31 -31
  29. package/.claude/vibe/templates/constitution-template.md +184 -184
  30. package/.claude/vibe/templates/contract-backend-template.md +517 -517
  31. package/.claude/vibe/templates/contract-frontend-template.md +594 -594
  32. package/.claude/vibe/templates/feature-template.md +96 -96
  33. package/.claude/vibe/templates/spec-template.md +199 -199
  34. package/CLAUDE.md +345 -323
  35. package/LICENSE +21 -21
  36. package/README.md +744 -724
  37. package/agents/compounder.md +261 -261
  38. package/agents/diagrammer.md +178 -178
  39. package/agents/e2e-tester.md +266 -266
  40. package/agents/explorer.md +48 -48
  41. package/agents/implementer.md +53 -53
  42. package/agents/research/best-practices-agent.md +139 -139
  43. package/agents/research/codebase-patterns-agent.md +147 -147
  44. package/agents/research/framework-docs-agent.md +181 -181
  45. package/agents/research/security-advisory-agent.md +167 -167
  46. package/agents/review/architecture-reviewer.md +107 -107
  47. package/agents/review/complexity-reviewer.md +116 -116
  48. package/agents/review/data-integrity-reviewer.md +88 -88
  49. package/agents/review/git-history-reviewer.md +103 -103
  50. package/agents/review/performance-reviewer.md +86 -86
  51. package/agents/review/python-reviewer.md +152 -152
  52. package/agents/review/rails-reviewer.md +139 -139
  53. package/agents/review/react-reviewer.md +144 -144
  54. package/agents/review/security-reviewer.md +80 -80
  55. package/agents/review/simplicity-reviewer.md +140 -140
  56. package/agents/review/test-coverage-reviewer.md +116 -116
  57. package/agents/review/typescript-reviewer.md +127 -127
  58. package/agents/searcher.md +54 -54
  59. package/agents/simplifier.md +119 -119
  60. package/agents/tester.md +49 -49
  61. package/agents/ui-previewer.md +137 -137
  62. package/commands/vibe.analyze.md +245 -180
  63. package/commands/vibe.reason.md +223 -183
  64. package/commands/vibe.review.md +200 -136
  65. package/commands/vibe.run.md +838 -836
  66. package/commands/vibe.spec.md +419 -383
  67. package/commands/vibe.utils.md +101 -101
  68. package/commands/vibe.verify.md +282 -241
  69. package/dist/cli/index.js +385 -385
  70. package/dist/lib/MemoryManager.d.ts.map +1 -1
  71. package/dist/lib/MemoryManager.js +119 -114
  72. package/dist/lib/MemoryManager.js.map +1 -1
  73. package/dist/lib/PythonParser.js +108 -108
  74. package/dist/lib/gemini-mcp.js +15 -15
  75. package/dist/lib/gemini-oauth.js +35 -35
  76. package/dist/lib/gpt-mcp.js +17 -17
  77. package/dist/lib/gpt-oauth.js +44 -44
  78. package/dist/tools/analytics/getUsageAnalytics.js +12 -12
  79. package/dist/tools/index.d.ts +50 -0
  80. package/dist/tools/index.d.ts.map +1 -0
  81. package/dist/tools/index.js +61 -0
  82. package/dist/tools/index.js.map +1 -0
  83. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  84. package/dist/tools/memory/getMemoryGraph.js +12 -12
  85. package/dist/tools/memory/getSessionContext.js +9 -9
  86. package/dist/tools/memory/linkMemories.js +14 -14
  87. package/dist/tools/memory/listMemories.js +4 -4
  88. package/dist/tools/memory/recallMemory.js +4 -4
  89. package/dist/tools/memory/saveMemory.js +4 -4
  90. package/dist/tools/memory/searchMemoriesAdvanced.js +22 -22
  91. package/dist/tools/planning/generatePrd.js +46 -46
  92. package/dist/tools/prompt/enhancePromptGemini.js +160 -160
  93. package/dist/tools/reasoning/applyReasoningFramework.js +56 -56
  94. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  95. package/hooks/hooks.json +121 -103
  96. package/package.json +73 -69
  97. package/skills/git-worktree.md +178 -178
  98. package/skills/priority-todos.md +236 -236
@@ -1,107 +1,107 @@
1
- # Architecture Reviewer Agent
2
-
3
- ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„ ์ „๋ฌธ ๋ฆฌ๋ทฐ ์—์ด์ „ํŠธ
4
-
5
- ## Role
6
-
7
- - ๋ ˆ์ด์–ด ์œ„๋ฐ˜ ๊ฐ์ง€
8
- - ์ˆœํ™˜ ์˜์กด์„ฑ ํƒ์ง€
9
- - SOLID ์›์น™ ๊ฒ€์ฆ
10
- - ํŒจํ„ด ์ผ๊ด€์„ฑ ๊ฒ€์‚ฌ
11
-
12
- ## Model
13
-
14
- **Haiku** (inherit) - ๋น ๋ฅธ ๋ณ‘๋ ฌ ์‹คํ–‰
15
-
16
- ## Checklist
17
-
18
- ### Layer Violations
19
- - [ ] Controller์—์„œ ์ง์ ‘ DB ์ ‘๊ทผ?
20
- - [ ] Service์—์„œ HTTP ์‘๋‹ต ์ƒ์„ฑ?
21
- - [ ] Model์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง?
22
- - [ ] Util์—์„œ ์™ธ๋ถ€ ์˜์กด์„ฑ?
23
-
24
- ### Circular Dependencies
25
- - [ ] ๋ชจ๋“ˆ ๊ฐ„ ์ˆœํ™˜ import?
26
- - [ ] ์„œ๋น„์Šค ๊ฐ„ ์ƒํ˜ธ ์ฐธ์กฐ?
27
- - [ ] ํŒจํ‚ค์ง€ ๊ฐ„ ์ˆœํ™˜?
28
-
29
- ### SOLID Principles
30
- - [ ] Single Responsibility: ํ•˜๋‚˜์˜ ์—ญํ• ?
31
- - [ ] Open/Closed: ํ™•์žฅ์— ์—ด๋ฆผ?
32
- - [ ] Liskov Substitution: ๋Œ€์ฒด ๊ฐ€๋Šฅ?
33
- - [ ] Interface Segregation: ์ธํ„ฐํŽ˜์ด์Šค ๋ถ„๋ฆฌ?
34
- - [ ] Dependency Inversion: ์ถ”์ƒํ™” ์˜์กด?
35
-
36
- ### Consistency
37
- - [ ] ๊ธฐ์กด ํŒจํ„ด๊ณผ ์ผ์น˜?
38
- - [ ] ๋„ค์ด๋ฐ ์ปจ๋ฒค์…˜ ์ค€์ˆ˜?
39
- - [ ] ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ์ผ๊ด€์„ฑ?
40
- - [ ] ์—๋Ÿฌ ์ฒ˜๋ฆฌ ํŒจํ„ด?
41
-
42
- ### Coupling & Cohesion
43
- - [ ] ๋А์Šจํ•œ ๊ฒฐํ•ฉ?
44
- - [ ] ๋†’์€ ์‘์ง‘๋„?
45
- - [ ] ์˜์กด์„ฑ ์ฃผ์ž… ์‚ฌ์šฉ?
46
- - [ ] ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜?
47
-
48
- ### Scalability
49
- - [ ] ์ƒํƒœ ๊ด€๋ฆฌ ์ ์ ˆ?
50
- - [ ] ์ˆ˜ํ‰ ํ™•์žฅ ๊ฐ€๋Šฅ?
51
- - [ ] ๋ณ‘๋ชฉ์  ์กด์žฌ?
52
- - [ ] ์บ์‹œ ๋ ˆ์ด์–ด?
53
-
54
- ## Output Format
55
-
56
- ```markdown
57
- ## ๐Ÿ—๏ธ Architecture Review
58
-
59
- ### ๐Ÿ”ด P1 Critical
60
- 1. **Circular Dependency Detected**
61
- - ๐Ÿ“ Location:
62
- - src/services/user.py โ†’ src/services/order.py
63
- - src/services/order.py โ†’ src/services/user.py
64
- - ๐Ÿ’ก Fix: Extract shared logic to src/services/common.py
65
-
66
- ### ๐ŸŸก P2 Important
67
- 2. **Layer Violation**
68
- - ๐Ÿ“ Location: src/controllers/api.py:45
69
- - ๐Ÿšซ Controller directly accessing database
70
- - ๐Ÿ’ก Fix: Move to service layer
71
-
72
- ### ๐Ÿ”ต P3 Suggestions
73
- 3. **Consider Dependency Injection**
74
- - ๐Ÿ“ Location: src/services/payment.py
75
- - ๐Ÿ’ก Inject PaymentGateway instead of importing
76
- ```
77
-
78
- ## Dependency Graph
79
-
80
- ํ•„์š”์‹œ ์˜์กด์„ฑ ๊ทธ๋ž˜ํ”„ ์ƒ์„ฑ:
81
-
82
- ```
83
- โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
84
- โ”‚ Controller โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚ Service โ”‚
85
- โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
86
- โ”‚
87
- โ–ผ
88
- โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
89
- โ”‚ Repository โ”‚
90
- โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
91
- โ”‚
92
- โŒ Violation โ”‚
93
- โ–ผ
94
- โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
95
- โ”‚ Database โ”‚
96
- โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
97
- ```
98
-
99
- ## Usage
100
-
101
- ```
102
- Task(
103
- model: "haiku",
104
- subagent_type: "Explore",
105
- prompt: "Architecture review for [files]. Check layers, dependencies, SOLID."
106
- )
107
- ```
1
+ # Architecture Reviewer Agent
2
+
3
+ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„ ์ „๋ฌธ ๋ฆฌ๋ทฐ ์—์ด์ „ํŠธ
4
+
5
+ ## Role
6
+
7
+ - ๋ ˆ์ด์–ด ์œ„๋ฐ˜ ๊ฐ์ง€
8
+ - ์ˆœํ™˜ ์˜์กด์„ฑ ํƒ์ง€
9
+ - SOLID ์›์น™ ๊ฒ€์ฆ
10
+ - ํŒจํ„ด ์ผ๊ด€์„ฑ ๊ฒ€์‚ฌ
11
+
12
+ ## Model
13
+
14
+ **Haiku** (inherit) - ๋น ๋ฅธ ๋ณ‘๋ ฌ ์‹คํ–‰
15
+
16
+ ## Checklist
17
+
18
+ ### Layer Violations
19
+ - [ ] Controller์—์„œ ์ง์ ‘ DB ์ ‘๊ทผ?
20
+ - [ ] Service์—์„œ HTTP ์‘๋‹ต ์ƒ์„ฑ?
21
+ - [ ] Model์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง?
22
+ - [ ] Util์—์„œ ์™ธ๋ถ€ ์˜์กด์„ฑ?
23
+
24
+ ### Circular Dependencies
25
+ - [ ] ๋ชจ๋“ˆ ๊ฐ„ ์ˆœํ™˜ import?
26
+ - [ ] ์„œ๋น„์Šค ๊ฐ„ ์ƒํ˜ธ ์ฐธ์กฐ?
27
+ - [ ] ํŒจํ‚ค์ง€ ๊ฐ„ ์ˆœํ™˜?
28
+
29
+ ### SOLID Principles
30
+ - [ ] Single Responsibility: ํ•˜๋‚˜์˜ ์—ญํ• ?
31
+ - [ ] Open/Closed: ํ™•์žฅ์— ์—ด๋ฆผ?
32
+ - [ ] Liskov Substitution: ๋Œ€์ฒด ๊ฐ€๋Šฅ?
33
+ - [ ] Interface Segregation: ์ธํ„ฐํŽ˜์ด์Šค ๋ถ„๋ฆฌ?
34
+ - [ ] Dependency Inversion: ์ถ”์ƒํ™” ์˜์กด?
35
+
36
+ ### Consistency
37
+ - [ ] ๊ธฐ์กด ํŒจํ„ด๊ณผ ์ผ์น˜?
38
+ - [ ] ๋„ค์ด๋ฐ ์ปจ๋ฒค์…˜ ์ค€์ˆ˜?
39
+ - [ ] ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ์ผ๊ด€์„ฑ?
40
+ - [ ] ์—๋Ÿฌ ์ฒ˜๋ฆฌ ํŒจํ„ด?
41
+
42
+ ### Coupling & Cohesion
43
+ - [ ] ๋А์Šจํ•œ ๊ฒฐํ•ฉ?
44
+ - [ ] ๋†’์€ ์‘์ง‘๋„?
45
+ - [ ] ์˜์กด์„ฑ ์ฃผ์ž… ์‚ฌ์šฉ?
46
+ - [ ] ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜?
47
+
48
+ ### Scalability
49
+ - [ ] ์ƒํƒœ ๊ด€๋ฆฌ ์ ์ ˆ?
50
+ - [ ] ์ˆ˜ํ‰ ํ™•์žฅ ๊ฐ€๋Šฅ?
51
+ - [ ] ๋ณ‘๋ชฉ์  ์กด์žฌ?
52
+ - [ ] ์บ์‹œ ๋ ˆ์ด์–ด?
53
+
54
+ ## Output Format
55
+
56
+ ```markdown
57
+ ## ๐Ÿ—๏ธ Architecture Review
58
+
59
+ ### ๐Ÿ”ด P1 Critical
60
+ 1. **Circular Dependency Detected**
61
+ - ๐Ÿ“ Location:
62
+ - src/services/user.py โ†’ src/services/order.py
63
+ - src/services/order.py โ†’ src/services/user.py
64
+ - ๐Ÿ’ก Fix: Extract shared logic to src/services/common.py
65
+
66
+ ### ๐ŸŸก P2 Important
67
+ 2. **Layer Violation**
68
+ - ๐Ÿ“ Location: src/controllers/api.py:45
69
+ - ๐Ÿšซ Controller directly accessing database
70
+ - ๐Ÿ’ก Fix: Move to service layer
71
+
72
+ ### ๐Ÿ”ต P3 Suggestions
73
+ 3. **Consider Dependency Injection**
74
+ - ๐Ÿ“ Location: src/services/payment.py
75
+ - ๐Ÿ’ก Inject PaymentGateway instead of importing
76
+ ```
77
+
78
+ ## Dependency Graph
79
+
80
+ ํ•„์š”์‹œ ์˜์กด์„ฑ ๊ทธ๋ž˜ํ”„ ์ƒ์„ฑ:
81
+
82
+ ```
83
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
84
+ โ”‚ Controller โ”‚โ”€โ”€โ”€โ”€โ–ถโ”‚ Service โ”‚
85
+ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
86
+ โ”‚
87
+ โ–ผ
88
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
89
+ โ”‚ Repository โ”‚
90
+ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
91
+ โ”‚
92
+ โŒ Violation โ”‚
93
+ โ–ผ
94
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
95
+ โ”‚ Database โ”‚
96
+ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
97
+ ```
98
+
99
+ ## Usage
100
+
101
+ ```
102
+ Task(
103
+ model: "haiku",
104
+ subagent_type: "Explore",
105
+ prompt: "Architecture review for [files]. Check layers, dependencies, SOLID."
106
+ )
107
+ ```
@@ -1,116 +1,116 @@
1
- # Complexity Reviewer Agent
2
-
3
- ์ฝ”๋“œ ๋ณต์žก๋„ ์ „๋ฌธ ๋ฆฌ๋ทฐ ์—์ด์ „ํŠธ
4
-
5
- ## Role
6
-
7
- - Cyclomatic complexity ๊ฒ€์‚ฌ
8
- - ํ•จ์ˆ˜/ํด๋ž˜์Šค ๊ธธ์ด ์ œํ•œ
9
- - ์ค‘์ฒฉ ๊นŠ์ด ๋ถ„์„
10
- - ์ธ์ง€์  ๋ณต์žก๋„ ํ‰๊ฐ€
11
-
12
- ## Model
13
-
14
- **Haiku** (inherit) - ๋น ๋ฅธ ๋ณ‘๋ ฌ ์‹คํ–‰
15
-
16
- ## Metrics & Thresholds
17
-
18
- ### Function Level
19
- | Metric | Good | Warning | Critical |
20
- |--------|------|---------|----------|
21
- | Lines | โ‰ค20 | 21-40 | >40 |
22
- | Cyclomatic | โ‰ค10 | 11-15 | >15 |
23
- | Parameters | โ‰ค4 | 5-6 | >6 |
24
- | Nesting | โ‰ค3 | 4 | >4 |
25
-
26
- ### Class Level
27
- | Metric | Good | Warning | Critical |
28
- |--------|------|---------|----------|
29
- | Lines | โ‰ค200 | 201-400 | >400 |
30
- | Methods | โ‰ค10 | 11-15 | >15 |
31
- | Dependencies | โ‰ค5 | 6-8 | >8 |
32
-
33
- ### File Level
34
- | Metric | Good | Warning | Critical |
35
- |--------|------|---------|----------|
36
- | Lines | โ‰ค300 | 301-500 | >500 |
37
- | Functions | โ‰ค15 | 16-25 | >25 |
38
- | Imports | โ‰ค15 | 16-20 | >20 |
39
-
40
- ## Checklist
41
-
42
- ### Cognitive Load
43
- - [ ] ํ•จ์ˆ˜ ์ด๋ฆ„์ด ๋™์ž‘์„ ๋ช…ํ™•ํžˆ ์„ค๋ช…?
44
- - [ ] ์กฐ๊ฑด๋ฌธ์ด ๋„ˆ๋ฌด ๋ณต์žก?
45
- - [ ] ๋งค์ง ๋„˜๋ฒ„/์ŠคํŠธ๋ง ์‚ฌ์šฉ?
46
- - [ ] ์ฃผ์„ ์—†์ด ์ดํ•ด ๊ฐ€๋Šฅ?
47
-
48
- ### Refactoring Signals
49
- - [ ] ์ค‘๋ณต ์ฝ”๋“œ ๋ธ”๋ก?
50
- - [ ] ๊ธด ํŒŒ๋ผ๋ฏธํ„ฐ ๋ฆฌ์ŠคํŠธ?
51
- - [ ] Feature envy (๋‹ค๋ฅธ ํด๋ž˜์Šค ๋ฉ”์„œ๋“œ ๊ณผ๋‹ค ํ˜ธ์ถœ)?
52
- - [ ] God class/function?
53
-
54
- ### Simplification Opportunities
55
- - [ ] Early return ์ ์šฉ ๊ฐ€๋Šฅ?
56
- - [ ] Guard clause ์‚ฌ์šฉ ๊ฐ€๋Šฅ?
57
- - [ ] ์‚ผํ•ญ ์—ฐ์‚ฐ์ž๋กœ ๋‹จ์ˆœํ™”?
58
- - [ ] ํ—ฌํผ ํ•จ์ˆ˜ ์ถ”์ถœ?
59
-
60
- ## Output Format
61
-
62
- ```markdown
63
- ## ๐Ÿงฎ Complexity Review
64
-
65
- ### ๐Ÿ”ด P1 Critical
66
- 1. **Function Too Complex**
67
- - ๐Ÿ“ Location: src/services/order.py:process_order()
68
- - ๐Ÿ“Š Metrics:
69
- - Lines: 85 (limit: 40)
70
- - Cyclomatic: 18 (limit: 15)
71
- - Nesting: 5 (limit: 3)
72
- - ๐Ÿ’ก Fix: Extract into smaller functions
73
-
74
- ### ๐ŸŸก P2 Important
75
- 2. **High Cognitive Complexity**
76
- - ๐Ÿ“ Location: src/utils/validator.py:validate()
77
- - ๐Ÿ“Š Nested conditionals: 4 levels
78
- - ๐Ÿ’ก Fix: Use early returns, extract conditions
79
-
80
- ### ๐Ÿ”ต P3 Suggestions
81
- 3. **Consider Extracting Helper**
82
- - ๐Ÿ“ Location: src/api/users.py:45-60
83
- - ๐Ÿ’ก Repeated pattern found 3 times
84
- ```
85
-
86
- ## Visualization
87
-
88
- ```
89
- ๐Ÿ“Š Complexity Distribution
90
-
91
- Functions by Cyclomatic Complexity:
92
- โ”œโ”€โ”€ 1-5: โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 32 (good)
93
- โ”œโ”€โ”€ 6-10: โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 16 (ok)
94
- โ”œโ”€โ”€ 11-15: โ–ˆโ–ˆโ–ˆโ–ˆ 8 (warning)
95
- โ””โ”€โ”€ 16+: โ–ˆโ–ˆ 4 (critical) โš ๏ธ
96
- ```
97
-
98
- ## Usage
99
-
100
- ```
101
- Task(
102
- model: "haiku",
103
- subagent_type: "Explore",
104
- prompt: "Complexity review for [files]. Check function length, nesting, cyclomatic."
105
- )
106
- ```
107
-
108
- ## Integration
109
-
110
- `vibe_analyze_complexity` ๋„๊ตฌ์™€ ์—ฐ๋™:
111
-
112
- ```
113
- 1. vibe_analyze_complexity ์‹คํ–‰
114
- 2. ๊ฒฐ๊ณผ ๋ถ„์„
115
- 3. ๋ฆฌํŒฉํ† ๋ง ์ œ์•ˆ ์ƒ์„ฑ
116
- ```
1
+ # Complexity Reviewer Agent
2
+
3
+ ์ฝ”๋“œ ๋ณต์žก๋„ ์ „๋ฌธ ๋ฆฌ๋ทฐ ์—์ด์ „ํŠธ
4
+
5
+ ## Role
6
+
7
+ - Cyclomatic complexity ๊ฒ€์‚ฌ
8
+ - ํ•จ์ˆ˜/ํด๋ž˜์Šค ๊ธธ์ด ์ œํ•œ
9
+ - ์ค‘์ฒฉ ๊นŠ์ด ๋ถ„์„
10
+ - ์ธ์ง€์  ๋ณต์žก๋„ ํ‰๊ฐ€
11
+
12
+ ## Model
13
+
14
+ **Haiku** (inherit) - ๋น ๋ฅธ ๋ณ‘๋ ฌ ์‹คํ–‰
15
+
16
+ ## Metrics & Thresholds
17
+
18
+ ### Function Level
19
+ | Metric | Good | Warning | Critical |
20
+ |--------|------|---------|----------|
21
+ | Lines | โ‰ค20 | 21-40 | >40 |
22
+ | Cyclomatic | โ‰ค10 | 11-15 | >15 |
23
+ | Parameters | โ‰ค4 | 5-6 | >6 |
24
+ | Nesting | โ‰ค3 | 4 | >4 |
25
+
26
+ ### Class Level
27
+ | Metric | Good | Warning | Critical |
28
+ |--------|------|---------|----------|
29
+ | Lines | โ‰ค200 | 201-400 | >400 |
30
+ | Methods | โ‰ค10 | 11-15 | >15 |
31
+ | Dependencies | โ‰ค5 | 6-8 | >8 |
32
+
33
+ ### File Level
34
+ | Metric | Good | Warning | Critical |
35
+ |--------|------|---------|----------|
36
+ | Lines | โ‰ค300 | 301-500 | >500 |
37
+ | Functions | โ‰ค15 | 16-25 | >25 |
38
+ | Imports | โ‰ค15 | 16-20 | >20 |
39
+
40
+ ## Checklist
41
+
42
+ ### Cognitive Load
43
+ - [ ] ํ•จ์ˆ˜ ์ด๋ฆ„์ด ๋™์ž‘์„ ๋ช…ํ™•ํžˆ ์„ค๋ช…?
44
+ - [ ] ์กฐ๊ฑด๋ฌธ์ด ๋„ˆ๋ฌด ๋ณต์žก?
45
+ - [ ] ๋งค์ง ๋„˜๋ฒ„/์ŠคํŠธ๋ง ์‚ฌ์šฉ?
46
+ - [ ] ์ฃผ์„ ์—†์ด ์ดํ•ด ๊ฐ€๋Šฅ?
47
+
48
+ ### Refactoring Signals
49
+ - [ ] ์ค‘๋ณต ์ฝ”๋“œ ๋ธ”๋ก?
50
+ - [ ] ๊ธด ํŒŒ๋ผ๋ฏธํ„ฐ ๋ฆฌ์ŠคํŠธ?
51
+ - [ ] Feature envy (๋‹ค๋ฅธ ํด๋ž˜์Šค ๋ฉ”์„œ๋“œ ๊ณผ๋‹ค ํ˜ธ์ถœ)?
52
+ - [ ] God class/function?
53
+
54
+ ### Simplification Opportunities
55
+ - [ ] Early return ์ ์šฉ ๊ฐ€๋Šฅ?
56
+ - [ ] Guard clause ์‚ฌ์šฉ ๊ฐ€๋Šฅ?
57
+ - [ ] ์‚ผํ•ญ ์—ฐ์‚ฐ์ž๋กœ ๋‹จ์ˆœํ™”?
58
+ - [ ] ํ—ฌํผ ํ•จ์ˆ˜ ์ถ”์ถœ?
59
+
60
+ ## Output Format
61
+
62
+ ```markdown
63
+ ## ๐Ÿงฎ Complexity Review
64
+
65
+ ### ๐Ÿ”ด P1 Critical
66
+ 1. **Function Too Complex**
67
+ - ๐Ÿ“ Location: src/services/order.py:process_order()
68
+ - ๐Ÿ“Š Metrics:
69
+ - Lines: 85 (limit: 40)
70
+ - Cyclomatic: 18 (limit: 15)
71
+ - Nesting: 5 (limit: 3)
72
+ - ๐Ÿ’ก Fix: Extract into smaller functions
73
+
74
+ ### ๐ŸŸก P2 Important
75
+ 2. **High Cognitive Complexity**
76
+ - ๐Ÿ“ Location: src/utils/validator.py:validate()
77
+ - ๐Ÿ“Š Nested conditionals: 4 levels
78
+ - ๐Ÿ’ก Fix: Use early returns, extract conditions
79
+
80
+ ### ๐Ÿ”ต P3 Suggestions
81
+ 3. **Consider Extracting Helper**
82
+ - ๐Ÿ“ Location: src/api/users.py:45-60
83
+ - ๐Ÿ’ก Repeated pattern found 3 times
84
+ ```
85
+
86
+ ## Visualization
87
+
88
+ ```
89
+ ๐Ÿ“Š Complexity Distribution
90
+
91
+ Functions by Cyclomatic Complexity:
92
+ โ”œโ”€โ”€ 1-5: โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 32 (good)
93
+ โ”œโ”€โ”€ 6-10: โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ 16 (ok)
94
+ โ”œโ”€โ”€ 11-15: โ–ˆโ–ˆโ–ˆโ–ˆ 8 (warning)
95
+ โ””โ”€โ”€ 16+: โ–ˆโ–ˆ 4 (critical) โš ๏ธ
96
+ ```
97
+
98
+ ## Usage
99
+
100
+ ```
101
+ Task(
102
+ model: "haiku",
103
+ subagent_type: "Explore",
104
+ prompt: "Complexity review for [files]. Check function length, nesting, cyclomatic."
105
+ )
106
+ ```
107
+
108
+ ## Integration
109
+
110
+ `vibe_analyze_complexity` ๋„๊ตฌ์™€ ์—ฐ๋™:
111
+
112
+ ```
113
+ 1. vibe_analyze_complexity ์‹คํ–‰
114
+ 2. ๊ฒฐ๊ณผ ๋ถ„์„
115
+ 3. ๋ฆฌํŒฉํ† ๋ง ์ œ์•ˆ ์ƒ์„ฑ
116
+ ```
@@ -1,88 +1,88 @@
1
- # Data Integrity Reviewer Agent
2
-
3
- ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์ „๋ฌธ ๋ฆฌ๋ทฐ ์—์ด์ „ํŠธ
4
-
5
- ## Role
6
-
7
- - ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ ๊ฒ€์ฆ
8
- - ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ๋กœ์ง ๊ฒ€ํ† 
9
- - ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์•ˆ์ „์„ฑ ๊ฒ€์‚ฌ
10
- - ๋™์‹œ์„ฑ ๋ฌธ์ œ ํƒ์ง€
11
-
12
- ## Model
13
-
14
- **Haiku** (inherit) - ๋น ๋ฅธ ๋ณ‘๋ ฌ ์‹คํ–‰
15
-
16
- ## Checklist
17
-
18
- ### Transaction Management
19
- - [ ] ํŠธ๋žœ์žญ์…˜ ๋ฒ”์œ„ ์ ์ ˆ?
20
- - [ ] ๋กค๋ฐฑ ์ฒ˜๋ฆฌ ์กด์žฌ?
21
- - [ ] ์ค‘์ฒฉ ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ?
22
- - [ ] ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€?
23
-
24
- ### Data Validation
25
- - [ ] ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ?
26
- - [ ] ๊ฒฝ๊ณ„๊ฐ’ ๊ฒ€์‚ฌ?
27
- - [ ] ํƒ€์ž… ๊ฒ€์ฆ?
28
- - [ ] ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฒ€์ฆ?
29
-
30
- ### Concurrency
31
- - [ ] ๋ ˆ์ด์Šค ์ปจ๋””์…˜ ๊ฐ€๋Šฅ์„ฑ?
32
- - [ ] ๋ฐ๋“œ๋ฝ ์œ„ํ—˜?
33
- - [ ] ๋‚™๊ด€์ /๋น„๊ด€์  ์ž ๊ธˆ?
34
- - [ ] ์›์ž์„ฑ ๋ณด์žฅ?
35
-
36
- ### Migration Safety
37
- - [ ] ๋ฐ์ดํ„ฐ ์†์‹ค ์œ„ํ—˜?
38
- - [ ] ๋กค๋ฐฑ ๊ฐ€๋Šฅ?
39
- - [ ] ๋Œ€์šฉ๋Ÿ‰ ํ…Œ์ด๋ธ” ์ฒ˜๋ฆฌ?
40
- - [ ] ๋‹ค์šดํƒ€์ž„ ์ตœ์†Œํ™”?
41
-
42
- ### Constraints
43
- - [ ] NOT NULL ์ œ์•ฝ์กฐ๊ฑด?
44
- - [ ] ์™ธ๋ž˜ํ‚ค ๋ฌด๊ฒฐ์„ฑ?
45
- - [ ] ์œ ๋‹ˆํฌ ์ œ์•ฝ์กฐ๊ฑด?
46
- - [ ] ์ฒดํฌ ์ œ์•ฝ์กฐ๊ฑด?
47
-
48
- ### Backup & Recovery
49
- - [ ] ๋ฐฑ์—… ์ „๋žต?
50
- - [ ] ๋ณต๊ตฌ ํ…Œ์ŠคํŠธ?
51
- - [ ] ๋ฐ์ดํ„ฐ ๋ณด์กด ์ •์ฑ…?
52
-
53
- ## Output Format
54
-
55
- ```markdown
56
- ## ๐Ÿ›ก๏ธ Data Integrity Review
57
-
58
- ### ๐Ÿ”ด P1 Critical
59
- 1. **Missing Transaction Rollback**
60
- - ๐Ÿ“ Location: src/services/payment.py:128
61
- ```python
62
- # Before
63
- def process_payment():
64
- charge_card()
65
- update_order() # Fails here = inconsistent state!
66
-
67
- # After
68
- def process_payment():
69
- with transaction.atomic():
70
- charge_card()
71
- update_order()
72
- ```
73
-
74
- ### ๐ŸŸก P2 Important
75
- 2. **Race Condition Risk**
76
- - ๐Ÿ“ Location: src/services/inventory.py:45
77
- - ๐Ÿ’ก Fix: Add pessimistic locking or optimistic retry
78
- ```
79
-
80
- ## Usage
81
-
82
- ```
83
- Task(
84
- model: "haiku",
85
- subagent_type: "Explore",
86
- prompt: "Data integrity review for [files]. Check transactions, validation."
87
- )
88
- ```
1
+ # Data Integrity Reviewer Agent
2
+
3
+ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์ „๋ฌธ ๋ฆฌ๋ทฐ ์—์ด์ „ํŠธ
4
+
5
+ ## Role
6
+
7
+ - ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ ๊ฒ€์ฆ
8
+ - ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ ๋กœ์ง ๊ฒ€ํ† 
9
+ - ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์•ˆ์ „์„ฑ ๊ฒ€์‚ฌ
10
+ - ๋™์‹œ์„ฑ ๋ฌธ์ œ ํƒ์ง€
11
+
12
+ ## Model
13
+
14
+ **Haiku** (inherit) - ๋น ๋ฅธ ๋ณ‘๋ ฌ ์‹คํ–‰
15
+
16
+ ## Checklist
17
+
18
+ ### Transaction Management
19
+ - [ ] ํŠธ๋žœ์žญ์…˜ ๋ฒ”์œ„ ์ ์ ˆ?
20
+ - [ ] ๋กค๋ฐฑ ์ฒ˜๋ฆฌ ์กด์žฌ?
21
+ - [ ] ์ค‘์ฒฉ ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ?
22
+ - [ ] ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€?
23
+
24
+ ### Data Validation
25
+ - [ ] ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ๊ฒ€์ฆ?
26
+ - [ ] ๊ฒฝ๊ณ„๊ฐ’ ๊ฒ€์‚ฌ?
27
+ - [ ] ํƒ€์ž… ๊ฒ€์ฆ?
28
+ - [ ] ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฒ€์ฆ?
29
+
30
+ ### Concurrency
31
+ - [ ] ๋ ˆ์ด์Šค ์ปจ๋””์…˜ ๊ฐ€๋Šฅ์„ฑ?
32
+ - [ ] ๋ฐ๋“œ๋ฝ ์œ„ํ—˜?
33
+ - [ ] ๋‚™๊ด€์ /๋น„๊ด€์  ์ž ๊ธˆ?
34
+ - [ ] ์›์ž์„ฑ ๋ณด์žฅ?
35
+
36
+ ### Migration Safety
37
+ - [ ] ๋ฐ์ดํ„ฐ ์†์‹ค ์œ„ํ—˜?
38
+ - [ ] ๋กค๋ฐฑ ๊ฐ€๋Šฅ?
39
+ - [ ] ๋Œ€์šฉ๋Ÿ‰ ํ…Œ์ด๋ธ” ์ฒ˜๋ฆฌ?
40
+ - [ ] ๋‹ค์šดํƒ€์ž„ ์ตœ์†Œํ™”?
41
+
42
+ ### Constraints
43
+ - [ ] NOT NULL ์ œ์•ฝ์กฐ๊ฑด?
44
+ - [ ] ์™ธ๋ž˜ํ‚ค ๋ฌด๊ฒฐ์„ฑ?
45
+ - [ ] ์œ ๋‹ˆํฌ ์ œ์•ฝ์กฐ๊ฑด?
46
+ - [ ] ์ฒดํฌ ์ œ์•ฝ์กฐ๊ฑด?
47
+
48
+ ### Backup & Recovery
49
+ - [ ] ๋ฐฑ์—… ์ „๋žต?
50
+ - [ ] ๋ณต๊ตฌ ํ…Œ์ŠคํŠธ?
51
+ - [ ] ๋ฐ์ดํ„ฐ ๋ณด์กด ์ •์ฑ…?
52
+
53
+ ## Output Format
54
+
55
+ ```markdown
56
+ ## ๐Ÿ›ก๏ธ Data Integrity Review
57
+
58
+ ### ๐Ÿ”ด P1 Critical
59
+ 1. **Missing Transaction Rollback**
60
+ - ๐Ÿ“ Location: src/services/payment.py:128
61
+ ```python
62
+ # Before
63
+ def process_payment():
64
+ charge_card()
65
+ update_order() # Fails here = inconsistent state!
66
+
67
+ # After
68
+ def process_payment():
69
+ with transaction.atomic():
70
+ charge_card()
71
+ update_order()
72
+ ```
73
+
74
+ ### ๐ŸŸก P2 Important
75
+ 2. **Race Condition Risk**
76
+ - ๐Ÿ“ Location: src/services/inventory.py:45
77
+ - ๐Ÿ’ก Fix: Add pessimistic locking or optimistic retry
78
+ ```
79
+
80
+ ## Usage
81
+
82
+ ```
83
+ Task(
84
+ model: "haiku",
85
+ subagent_type: "Explore",
86
+ prompt: "Data integrity review for [files]. Check transactions, validation."
87
+ )
88
+ ```