@codihaus/claude-skills 1.6.28 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: dev-review
3
- description: Code review with focus on quality, security, and best practices
4
- version: 1.4.1
3
+ description: Code review comparing implementation against specs, BRD, and quality standards. Use when: (1) After implementation and testing, (2) Before merging a PR, (3) Verifying BRD use case coverage (--brd flag), (4) Checking code quality, security, and pattern compliance
4
+ version: 1.5.0
5
5
  ---
6
6
 
7
7
  # /dev-review - Code Review
@@ -28,6 +28,7 @@ Review code changes for quality, security, and adherence to standards.
28
28
  /dev-review --staged # Review staged changes only
29
29
  /dev-review src/auth/ # Review specific directory
30
30
  /dev-review UC-AUTH-001 # Review changes for specific UC
31
+ /dev-review billing --brd # Verify all BRD use cases covered
31
32
  ```
32
33
 
33
34
  ## Input
@@ -150,46 +151,7 @@ Review report with verdict and categorized issues.
150
151
 
151
152
  ### Stack-Specific
152
153
 
153
- **CRITICAL: Load framework-specific review checklists**
154
-
155
- After loading stack knowledge (from Context Sources → Step 1), apply framework-specific checks from the "For /dev-review" section:
156
-
157
- **React projects:**
158
- - Hooks follow Rules of Hooks (no conditional calls, correct order)
159
- - All dependencies included in useEffect/useCallback/useMemo
160
- - No infinite loops, no stale closures
161
- - State updates are immutable
162
- - Performance optimizations appropriate (memo, lazy)
163
- - Lists have stable keys
164
-
165
- **Vue 3 projects:**
166
- - Uses `<script setup>` (not Options API)
167
- - Composables follow naming convention (use*)
168
- - No destructuring reactive without toRefs
169
- - ref() accessed with .value in script (not in template)
170
- - v-for has unique :key
171
- - No v-for + v-if on same element
172
- - Props not mutated directly
173
-
174
- **Next.js projects:**
175
- - Server vs Client Components used correctly
176
- - Server Actions have "use server" directive
177
- - Data fetching uses proper Next.js patterns
178
- - No client-side code in Server Components
179
-
180
- **Nuxt projects:**
181
- - Composables follow naming convention (useX)
182
- - Server routes in correct location
183
- - Auto-imports used correctly
184
- - SSR-safe code (no window access in setup)
185
-
186
- **Directus projects:**
187
- - Collections accessed properly
188
- - Permissions configured
189
- - Field types match requirements
190
- - Flows and hooks follow patterns
191
-
192
- **If stack knowledge file doesn't exist**, apply general best practices only.
154
+ **CRITICAL**: Load framework-specific review checklists from `references/stack-checks.md`. Also load `knowledge/stacks/{stack}/_index.md` "For /dev-review" section for deeper patterns.
193
155
 
194
156
  ## Context Sources
195
157
 
@@ -235,234 +197,81 @@ After loading stack knowledge (from Context Sources → Step 1), apply framework
235
197
 
236
198
  ## Review Best Practices
237
199
 
238
- ### Be Constructive
200
+ See `references/review-examples.md` for constructive feedback patterns, example reviews, and fix loop details.
239
201
 
240
- ```markdown
241
- // BAD
242
- "This code is bad"
243
-
244
- // GOOD
245
- "This could cause a SQL injection. Consider using parameterized queries:
246
- ```sql
247
- SELECT * FROM users WHERE id = $1
248
- ```"
249
- ```
250
-
251
- ### Explain Why
252
-
253
- ```markdown
254
- // BAD
255
- "Don't use var"
256
-
257
- // GOOD
258
- "Use const/let instead of var - var has function scope which can lead to
259
- unexpected behavior. const also signals intent that the value won't change."
260
- ```
261
-
262
- ### Suggest Alternatives
263
-
264
- ```markdown
265
- // Issue + Solution
266
- "The N+1 query here will cause performance issues with many posts.
267
-
268
- Consider using an include/join:
269
- ```typescript
270
- const posts = await db.posts.findMany({
271
- include: { author: true }
272
- });
273
- ```"
274
- ```
275
-
276
- ### Acknowledge Good Work
277
-
278
- ```markdown
279
- ### Positives
280
- - Clean separation of API and business logic
281
- - Good error messages for users
282
- - Comprehensive input validation
283
- ```
202
+ **Key principles**: Be constructive (suggest fix, not just flag), explain why, suggest alternatives, acknowledge good work.
284
203
 
285
204
  ## Tools Used
286
205
 
287
206
  | Tool | Purpose |
288
207
  |------|---------|
289
208
  | `Bash` | git diff, git log |
290
- | `Read` | Read changed files |
209
+ | `Read` | Read changed files, specs, BRD use cases |
291
210
  | `Grep` | Search for patterns |
292
211
  | `Glob` | Find related files |
293
212
 
294
- ## Integration
295
-
296
- | Skill | Relationship |
297
- |-------|--------------|
298
- | `/dev-coding` | Review after implementation |
299
- | `/dev-scout` | Get project conventions |
300
- | `/dev-specs` | Check spec compliance |
301
-
302
- ## Example Review
303
-
304
- ```
305
- User: /dev-review UC-AUTH-001
306
-
307
- Step 1: Load Context
308
- - Read tech-context.md → Stack: Next.js 14 + TypeScript
309
- - Read knowledge/stacks/nextjs/_index.md → "For /dev-review" section
310
- → Check Server Actions, App Router, Server Components
311
- - Read knowledge/stacks/react/_index.md → "For /dev-review" section
312
- → Check Hooks, state management, performance
313
- - Read _quality-attributes.md → All level checklists
314
- - Read UC-AUTH-001 spec → Requirements
315
- - Get git diff → Changed files
316
-
317
- Step 2: Analyze
318
- - src/api/auth/login.ts: Clean ✓
319
- - src/components/LoginForm.tsx: 1 issue (React hooks deps missing)
320
- - src/lib/api.ts: 1 suggestion (naming)
321
-
322
- Step 3: Generate Report
323
-
324
- ## Review Summary
325
-
326
- **Verdict**: ⚠️ Request Changes
213
+ ## BRD Coverage Verification (--brd flag)
327
214
 
328
- **Stats**: 3 files, +245 additions, -12 deletions
329
-
330
- ### Issues Found
215
+ When `--brd` flag provided, perform macro-level verification: Code vs BRD use cases.
331
216
 
332
- #### 🔴 Critical
333
- None
217
+ **1. Load BRD use cases:**
218
+ - Read all `plans/brd/use-cases/{feature}/UC-*.md`
219
+ - Extract requirements and acceptance criteria per UC
334
220
 
335
- #### 🟡 Important
336
- - [error-handling] `src/components/LoginForm.tsx:34`
337
- Promise rejection not handled. If API fails, user sees nothing.
338
- ```tsx
339
- // Add error state
340
- .catch(err => setError(err.message))
341
- ```
221
+ **2. Load code changes:**
222
+ - `git log --oneline` for feature branch/period
223
+ - `git diff --stat` for files changed
342
224
 
343
- #### 🔵 Suggestions
344
- - [naming] `src/lib/api.ts:12`
345
- `data` is generic. Consider `credentials` for clarity.
225
+ **3. Map changes to UCs:**
346
226
 
347
- ### Spec Compliance
348
- - [x] POST /api/auth/login works
349
- - [x] Returns token
350
- - [x] Validates input
351
- - [ ] Missing: Rate limiting (spec requirement)
227
+ For each UC, determine:
228
+ - **Covered**: Code changes address requirements
229
+ - ⚠️ **Partial**: Some requirements met, some missing
230
+ - **Not covered**: No code changes for this UC
352
231
 
353
- ### Positives
354
- - Good validation on both client and server
355
- - Clean component structure
356
- - Proper TypeScript types
357
- ```
358
-
359
- ## Fix Loop
360
-
361
- When issues are found, `/dev-review` can trigger `/dev-coding` to fix them:
362
-
363
- ```
364
- /dev-review
365
-
366
- Issues found?
367
- ├── No → Pass ✅ → Suggest /dev-changelog
368
- └── Yes → Offer to fix
369
-
370
- "1 important issue found. Fix now?"
371
- ├── Yes → Load /dev-coding with fix context
372
- │ ↓
373
- │ Fix applied
374
- │ ↓
375
- │ Re-run /dev-review (auto)
376
- └── No → Output review, user fixes manually
377
- ```
378
-
379
- ### Fix Flow
232
+ **4. Report:**
380
233
 
381
234
  ```markdown
382
- **Review found issues:**
383
-
384
- | # | Severity | File | Issue |
385
- |---|----------|------|-------|
386
- | 1 | 🟡 Important | LoginForm.tsx:34 | Promise rejection not handled |
387
- | 2 | 🔵 Suggestion | api.ts:12 | Generic variable name |
388
-
389
- **Options:**
390
- - A: Fix important issues automatically (1 issue)
391
- - B: Fix all issues automatically (2 issues)
392
- - C: I'll fix manually
235
+ ## BRD Coverage Report: {feature}
236
+
237
+ | UC | Title | Status | Evidence |
238
+ |----|-------|--------|----------|
239
+ | UC-PAY-001 | Checkout | Covered | src/api/checkout.ts, src/components/Checkout.tsx |
240
+ | UC-PAY-002 | Refund | ⚠️ Partial | API done, UI missing |
241
+ | UC-PAY-004 | Invoice | ❌ Not covered | No related changes |
242
+
243
+ ### Summary
244
+ - **Covered**: 3/5 UCs
245
+ - **Partial**: 1/5 UCs
246
+ - **Not covered**: 1/5 UCs
393
247
  ```
394
248
 
395
- **If user chooses A or B:**
396
-
397
- ```
398
- 1. Load /dev-coding skill
399
- → Pass: files to fix, issues to address
249
+ **5. Recommendation:**
250
+ - All covered → "BRD requirements fully addressed"
251
+ - Gaps exist → "X UCs not covered. Run `/dev-specs` + `/dev-coding` for missing UCs"
400
252
 
401
- 2. /dev-coding applies fixes
402
- → Uses existing patterns from scout
403
- → Follows spec requirements
253
+ ## Fix Loop
404
254
 
405
- 3. Auto re-run /dev-review
406
- → Verify fixes applied correctly
407
- → Check for new issues introduced
255
+ When issues found, offer to fix via `/dev-coding`. See `references/review-examples.md` for detailed fix loop flow.
408
256
 
409
- 4. If pass → Suggest /dev-changelog
257
+ ```
258
+ Issues found? → Offer fix → /dev-coding (fix) → /dev-review (re-run) → Pass → /dev-changelog
410
259
  ```
411
260
 
412
- ## After Pass: Changelog
413
-
414
- When review passes (no critical/important issues):
415
-
416
- ```markdown
417
- ## Review Complete ✅
418
-
419
- **Verdict**: Approved
420
-
421
- No critical or important issues found.
261
+ ## After Pass
422
262
 
423
- **Next Steps:**
424
- 1. Run `/dev-changelog` to document what was built
425
- 2. Commit and push changes
426
- 3. Create PR
427
-
428
- 💡 Run `/dev-changelog {feature}` to create implementation summary.
429
- ```
263
+ When review passes: suggest `/dev-changelog {feature}` to document what was built.
430
264
 
431
265
  ## Integration
432
266
 
433
267
  | Skill | Relationship |
434
268
  |-------|--------------|
435
- | `/dev-coding` | Review after implementation |
436
- | `/dev-coding` | Call to fix issues (fix loop) |
269
+ | `/dev-coding` | Review after implementation, call to fix issues |
437
270
  | `/dev-scout` | Get project conventions |
438
271
  | `/dev-specs` | Check spec compliance |
439
272
  | `/dev-changelog` | Document after pass |
440
273
 
441
- ## Complete Flow
274
+ ## References
442
275
 
443
- ```
444
- /dev-coding /dev-test /dev-review
445
-
446
- ┌─────────┴─────────┐
447
- │ Issues found? │
448
- └─────────┬─────────┘
449
-
450
- ┌───────────────┼───────────────┐
451
- ↓ ↓ ↓
452
- Critical Important None
453
- │ │ │
454
- ↓ ↓ ↓
455
- Must fix Offer fix Pass ✅
456
- │ │ │
457
- └───────┬───────┘ │
458
- ↓ │
459
- /dev-coding (fix) │
460
- ↓ │
461
- /dev-review (re-run) │
462
- ↓ │
463
- Pass ────────────────────→│
464
-
465
- /dev-changelog
466
-
467
- summary.md created
468
- ```
276
+ - `references/stack-checks.md` - Framework-specific review checklists
277
+ - `references/review-examples.md` - Examples, fix loop, best practices
@@ -0,0 +1,160 @@
1
+ # Review Examples & Patterns
2
+
3
+ ## Review Best Practices
4
+
5
+ ### Be Constructive
6
+
7
+ ```markdown
8
+ // BAD
9
+ "This code is bad"
10
+
11
+ // GOOD
12
+ "This could cause a SQL injection. Consider using parameterized queries:
13
+ ```sql
14
+ SELECT * FROM users WHERE id = $1
15
+ ```"
16
+ ```
17
+
18
+ ### Explain Why
19
+
20
+ ```markdown
21
+ // BAD
22
+ "Don't use var"
23
+
24
+ // GOOD
25
+ "Use const/let instead of var - var has function scope which can lead to
26
+ unexpected behavior. const also signals intent that the value won't change."
27
+ ```
28
+
29
+ ### Suggest Alternatives
30
+
31
+ ```markdown
32
+ // Issue + Solution
33
+ "The N+1 query here will cause performance issues with many posts.
34
+
35
+ Consider using an include/join:
36
+ ```typescript
37
+ const posts = await db.posts.findMany({
38
+ include: { author: true }
39
+ });
40
+ ```"
41
+ ```
42
+
43
+ ### Acknowledge Good Work
44
+
45
+ ```markdown
46
+ ### Positives
47
+ - Clean separation of API and business logic
48
+ - Good error messages for users
49
+ - Comprehensive input validation
50
+ ```
51
+
52
+ ## Example Review
53
+
54
+ ```
55
+ User: /dev-review UC-AUTH-001
56
+
57
+ Step 1: Load Context
58
+ - Read tech-context.md → Stack: Next.js 14 + TypeScript
59
+ - Read knowledge/stacks/nextjs/_index.md → "For /dev-review" section
60
+ → Check Server Actions, App Router, Server Components
61
+ - Read knowledge/stacks/react/_index.md → "For /dev-review" section
62
+ → Check Hooks, state management, performance
63
+ - Read _quality-attributes.md → All level checklists
64
+ - Read UC-AUTH-001 spec → Requirements
65
+ - Get git diff → Changed files
66
+
67
+ Step 2: Analyze
68
+ - src/api/auth/login.ts: Clean ✓
69
+ - src/components/LoginForm.tsx: 1 issue (React hooks deps missing)
70
+ - src/lib/api.ts: 1 suggestion (naming)
71
+
72
+ Step 3: Generate Report
73
+
74
+ ## Review Summary
75
+
76
+ **Verdict**: ⚠️ Request Changes
77
+
78
+ **Stats**: 3 files, +245 additions, -12 deletions
79
+
80
+ ### Issues Found
81
+
82
+ #### 🔴 Critical
83
+ None
84
+
85
+ #### 🟡 Important
86
+ - [error-handling] `src/components/LoginForm.tsx:34`
87
+ Promise rejection not handled. If API fails, user sees nothing.
88
+ ```tsx
89
+ // Add error state
90
+ .catch(err => setError(err.message))
91
+ ```
92
+
93
+ #### 🔵 Suggestions
94
+ - [naming] `src/lib/api.ts:12`
95
+ `data` is generic. Consider `credentials` for clarity.
96
+
97
+ ### Spec Compliance
98
+ - [x] POST /api/auth/login works
99
+ - [x] Returns token
100
+ - [x] Validates input
101
+ - [ ] Missing: Rate limiting (spec requirement)
102
+
103
+ ### Positives
104
+ - Good validation on both client and server
105
+ - Clean component structure
106
+ - Proper TypeScript types
107
+ ```
108
+
109
+ ## Fix Loop
110
+
111
+ When issues are found, `/dev-review` can trigger `/dev-coding` to fix them:
112
+
113
+ ```
114
+ /dev-review
115
+
116
+ Issues found?
117
+ ├── No → Pass ✅ → Suggest /dev-changelog
118
+ └── Yes → Offer to fix
119
+
120
+ "1 important issue found. Fix now?"
121
+ ├── Yes → Load /dev-coding with fix context
122
+ │ ↓
123
+ │ Fix applied
124
+ │ ↓
125
+ │ Re-run /dev-review (auto)
126
+ └── No → Output review, user fixes manually
127
+ ```
128
+
129
+ ### Fix Flow
130
+
131
+ ```markdown
132
+ **Review found issues:**
133
+
134
+ | # | Severity | File | Issue |
135
+ |---|----------|------|-------|
136
+ | 1 | 🟡 Important | LoginForm.tsx:34 | Promise rejection not handled |
137
+ | 2 | 🔵 Suggestion | api.ts:12 | Generic variable name |
138
+
139
+ **Options:**
140
+ - A: Fix important issues automatically (1 issue)
141
+ - B: Fix all issues automatically (2 issues)
142
+ - C: I'll fix manually
143
+ ```
144
+
145
+ **If user chooses A or B:**
146
+
147
+ ```
148
+ 1. Load /dev-coding skill
149
+ → Pass: files to fix, issues to address
150
+
151
+ 2. /dev-coding applies fixes
152
+ → Uses existing patterns from scout
153
+ → Follows spec requirements
154
+
155
+ 3. Auto re-run /dev-review
156
+ → Verify fixes applied correctly
157
+ → Check for new issues introduced
158
+
159
+ 4. If pass → Suggest /dev-changelog
160
+ ```
@@ -0,0 +1,45 @@
1
+ # Stack-Specific Review Checklists
2
+
3
+ Load the relevant checklist based on stack detected in `tech-context.md`. Also load `knowledge/stacks/{stack}/_index.md` "For /dev-review" section for deeper patterns.
4
+
5
+ ## React
6
+
7
+ - Hooks follow Rules of Hooks (no conditional calls, correct order)
8
+ - All dependencies included in useEffect/useCallback/useMemo
9
+ - No infinite loops, no stale closures
10
+ - State updates are immutable
11
+ - Performance optimizations appropriate (memo, lazy)
12
+ - Lists have stable keys
13
+
14
+ ## Vue 3
15
+
16
+ - Uses `<script setup>` (not Options API)
17
+ - Composables follow naming convention (use*)
18
+ - No destructuring reactive without toRefs
19
+ - ref() accessed with .value in script (not in template)
20
+ - v-for has unique :key
21
+ - No v-for + v-if on same element
22
+ - Props not mutated directly
23
+
24
+ ## Next.js
25
+
26
+ - Server vs Client Components used correctly
27
+ - Server Actions have "use server" directive
28
+ - Data fetching uses proper Next.js patterns
29
+ - No client-side code in Server Components
30
+
31
+ ## Nuxt
32
+
33
+ - Composables follow naming convention (useX)
34
+ - Server routes in correct location
35
+ - Auto-imports used correctly
36
+ - SSR-safe code (no window access in setup)
37
+
38
+ ## Directus
39
+
40
+ - Collections accessed properly
41
+ - Permissions configured
42
+ - Field types match requirements
43
+ - Flows and hooks follow patterns
44
+
45
+ **If stack knowledge file doesn't exist**, apply general best practices only.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: dev-scout
3
- description: Discover and document how the codebase works - patterns, rules, and team conventions
4
- version: 3.0.0
3
+ description: Discover and document how the codebase works - patterns, rules, and team conventions. Use when: (1) Before implementation to understand existing code, (2) Onboarding to a new codebase, (3) Documenting team patterns and architecture, (4) Understanding how a specific feature is implemented
4
+ version: 3.1.0
5
5
  ---
6
6
 
7
7
  # /dev-scout - Codebase Pattern Discovery
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: dev-specs
3
- description: Generate lean implementation specifications from BRD use cases
4
- version: 2.0.1
3
+ description: Generate lean implementation specifications from BRD use cases. Use when: (1) BRD/use cases exist and implementation planning needed, (2) Before starting coding on a feature, (3) Onboarding engineers to a feature's technical scope
4
+ version: 2.1.0
5
5
  ---
6
6
 
7
7
  # /dev-specs - Lean Implementation Specifications
@@ -51,20 +51,6 @@ Specs define **requirements and constraints**, not implementation details.
51
51
  2. `plans/features/{feature}/` exists
52
52
  3. `plans/brd/tech-context.md` exists (auto-runs scout if missing)
53
53
 
54
- ## Output Structure
55
-
56
- ```
57
- plans/features/{feature}/
58
- ├── codebase-context.md # From /dev-scout
59
- └── specs/
60
- ├── README.md # Index, implementation order
61
- ├── shared/ # Shared across UCs
62
- │ ├── data-model.md
63
- │ ├── patterns.md
64
- │ └── security.md
65
- └── UC-XXX-001-slug.md # Lean spec per UC (~150 lines)
66
- ```
67
-
68
54
  ## Expected Outcome
69
55
 
70
56
  **Lean specs** (~150 lines per UC) that define **WHAT to build**, not HOW.