@codihaus/claude-skills 1.0.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.
Files changed (46) hide show
  1. package/README.md +167 -0
  2. package/bin/cli.js +58 -0
  3. package/package.json +46 -0
  4. package/skills/_quality-attributes.md +392 -0
  5. package/skills/_registry.md +189 -0
  6. package/skills/debrief/SKILL.md +647 -0
  7. package/skills/debrief/references/change-request-template.md +124 -0
  8. package/skills/debrief/references/file-patterns.md +173 -0
  9. package/skills/debrief/references/group-codes.md +72 -0
  10. package/skills/debrief/references/research-queries.md +106 -0
  11. package/skills/debrief/references/use-case-template.md +141 -0
  12. package/skills/debrief/scripts/generate_questionnaire.py +195 -0
  13. package/skills/dev-arch/SKILL.md +747 -0
  14. package/skills/dev-changelog/SKILL.md +378 -0
  15. package/skills/dev-coding/SKILL.md +470 -0
  16. package/skills/dev-coding-backend/SKILL.md +361 -0
  17. package/skills/dev-coding-frontend/SKILL.md +534 -0
  18. package/skills/dev-coding-frontend/references/nextjs.md +477 -0
  19. package/skills/dev-review/SKILL.md +548 -0
  20. package/skills/dev-scout/SKILL.md +723 -0
  21. package/skills/dev-scout/references/feature-patterns.md +210 -0
  22. package/skills/dev-scout/references/file-patterns.md +252 -0
  23. package/skills/dev-scout/references/tech-detection.md +211 -0
  24. package/skills/dev-scout/scripts/scout-analyze.sh +280 -0
  25. package/skills/dev-specs/SKILL.md +577 -0
  26. package/skills/dev-specs/references/checklist.md +176 -0
  27. package/skills/dev-specs/references/spec-templates.md +460 -0
  28. package/skills/dev-test/SKILL.md +364 -0
  29. package/skills/utils/diagram/SKILL.md +205 -0
  30. package/skills/utils/diagram/references/common-errors.md +305 -0
  31. package/skills/utils/diagram/references/diagram-types.md +636 -0
  32. package/skills/utils/docs-graph/SKILL.md +204 -0
  33. package/skills/utils/gemini/SKILL.md +292 -0
  34. package/skills/utils/gemini/scripts/gemini-scan.py +340 -0
  35. package/skills/utils/gemini/scripts/setup.sh +169 -0
  36. package/src/commands/add.js +64 -0
  37. package/src/commands/doctor.js +179 -0
  38. package/src/commands/init.js +251 -0
  39. package/src/commands/list.js +88 -0
  40. package/src/commands/remove.js +60 -0
  41. package/src/commands/update.js +72 -0
  42. package/src/index.js +26 -0
  43. package/src/utils/config.js +272 -0
  44. package/src/utils/deps.js +599 -0
  45. package/src/utils/skills.js +253 -0
  46. package/templates/CLAUDE.md.template +58 -0
@@ -0,0 +1,636 @@
1
+ # Mermaid Diagram Types
2
+
3
+ Complete syntax reference for all supported diagram types.
4
+
5
+ ## Quick Reference
6
+
7
+ | Type | Keyword | Best For |
8
+ |------|---------|----------|
9
+ | Flowchart | `flowchart` | Process flows, decisions |
10
+ | Sequence | `sequenceDiagram` | API interactions |
11
+ | State | `stateDiagram-v2` | Status lifecycle |
12
+ | ER Diagram | `erDiagram` | Database schema |
13
+ | Class | `classDiagram` | Object structures |
14
+ | Gantt | `gantt` | Project timelines |
15
+ | Journey | `journey` | User experience |
16
+ | Mindmap | `mindmap` | Hierarchical ideas |
17
+ | Pie | `pie` | Distribution |
18
+ | Timeline | `timeline` | Chronological events |
19
+ | Git Graph | `gitGraph` | Version control |
20
+ | Block | `block-beta` | System blocks |
21
+ | **Architecture** | `architecture-beta` | Cloud/AWS diagrams |
22
+ | Quadrant | `quadrantChart` | Priority matrix |
23
+ | XY Chart | `xychart-beta` | Line/bar charts |
24
+ | Sankey | `sankey-beta` | Flow visualization |
25
+ | Packet | `packet-beta` | Network protocols |
26
+ | C4 | `C4Context` | Software architecture |
27
+ | Requirement | `requirementDiagram` | Requirements tracking |
28
+ | Kanban | `kanban` | Task boards |
29
+
30
+ ---
31
+
32
+ ## Flowchart
33
+
34
+ **Best for**: User journeys, decision trees, process flows.
35
+
36
+ ```mermaid
37
+ flowchart LR
38
+ A[Start] --> B{Decision}
39
+ B -->|Yes| C[Action 1]
40
+ B -->|No| D[Action 2]
41
+ C --> E[End]
42
+ D --> E
43
+ ```
44
+
45
+ **Directions**: `LR` (left-right), `TD` (top-down), `RL`, `BT`
46
+
47
+ **Node shapes**:
48
+ - `[text]` - Rectangle
49
+ - `(text)` - Rounded
50
+ - `{text}` - Diamond (decision)
51
+ - `([text])` - Stadium
52
+ - `[[text]]` - Subroutine
53
+ - `[(text)]` - Cylinder (database)
54
+ - `((text))` - Circle
55
+ - `>text]` - Flag
56
+ - `{{text}}` - Hexagon
57
+
58
+ **Links**:
59
+ - `-->` - Arrow
60
+ - `---` - Line
61
+ - `-.->` - Dotted arrow
62
+ - `==>` - Thick arrow
63
+ - `-->|text|` - Arrow with label
64
+ - `--o` - Circle end
65
+ - `--x` - Cross end
66
+
67
+ **Subgraphs**:
68
+ ```mermaid
69
+ flowchart TB
70
+ subgraph API[API Layer]
71
+ A1[Route] --> A2[Controller]
72
+ end
73
+ subgraph DB[Database]
74
+ D1[(PostgreSQL)]
75
+ end
76
+ A2 --> D1
77
+ ```
78
+
79
+ ---
80
+
81
+ ## Sequence Diagram
82
+
83
+ **Best for**: API flows, multi-actor interactions.
84
+
85
+ ```mermaid
86
+ sequenceDiagram
87
+ actor User
88
+ participant API
89
+ participant DB
90
+
91
+ User->>API: Request
92
+ activate API
93
+ API->>DB: Query
94
+ DB-->>API: Result
95
+ API-->>User: Response
96
+ deactivate API
97
+ ```
98
+
99
+ **Arrows**:
100
+ - `->>` - Solid with arrowhead
101
+ - `-->>` - Dotted with arrowhead
102
+ - `-x` - Solid with cross (async)
103
+ - `--x` - Dotted with cross
104
+
105
+ **Features**:
106
+ ```mermaid
107
+ sequenceDiagram
108
+ participant A
109
+ participant B
110
+
111
+ Note over A,B: Shared note
112
+
113
+ loop Every minute
114
+ A->>B: Heartbeat
115
+ end
116
+
117
+ alt Success
118
+ B-->>A: OK
119
+ else Failure
120
+ B-->>A: Error
121
+ end
122
+
123
+ opt Optional step
124
+ A->>B: Extra call
125
+ end
126
+
127
+ par Parallel
128
+ A->>B: Request 1
129
+ and
130
+ A->>B: Request 2
131
+ end
132
+ ```
133
+
134
+ ---
135
+
136
+ ## State Diagram
137
+
138
+ **Best for**: Status lifecycle, state machines.
139
+
140
+ ```mermaid
141
+ stateDiagram-v2
142
+ [*] --> Draft
143
+ Draft --> Review: Submit
144
+ Review --> Approved: Accept
145
+ Review --> Draft: Reject
146
+ Approved --> Published: Publish
147
+ Published --> [*]
148
+
149
+ state Review {
150
+ [*] --> Pending
151
+ Pending --> InProgress
152
+ InProgress --> Complete
153
+ }
154
+ ```
155
+
156
+ ---
157
+
158
+ ## ER Diagram
159
+
160
+ **Best for**: Data relationships, database schema.
161
+
162
+ ```mermaid
163
+ erDiagram
164
+ USER ||--o{ ORDER : places
165
+ ORDER ||--|{ ORDER_ITEM : contains
166
+ PRODUCT ||--o{ ORDER_ITEM : "ordered in"
167
+
168
+ USER {
169
+ int id PK
170
+ string email UK
171
+ string name
172
+ datetime created_at
173
+ }
174
+ ORDER {
175
+ int id PK
176
+ int user_id FK
177
+ decimal total
178
+ string status
179
+ }
180
+ ```
181
+
182
+ **Relationships**:
183
+ - `||--||` - One to one
184
+ - `||--o{` - One to many
185
+ - `o{--o{` - Many to many
186
+ - `|o--o|` - Zero or one
187
+
188
+ ---
189
+
190
+ ## Architecture Diagram (Cloud/AWS)
191
+
192
+ **Best for**: Cloud infrastructure, AWS/GCP/Azure diagrams, CI/CD pipelines.
193
+
194
+ ### Basic Syntax
195
+
196
+ ```mermaid
197
+ architecture-beta
198
+ group api(cloud)[API]
199
+
200
+ service db(database)[Database] in api
201
+ service server(server)[Server] in api
202
+ service disk(disk)[Storage] in api
203
+
204
+ db:L -- R:server
205
+ disk:T -- B:server
206
+ ```
207
+
208
+ ### Components
209
+
210
+ **Groups** - Container for services:
211
+ ```
212
+ group {id}({icon})[{label}]
213
+ group {id}({icon})[{label}] in {parent}
214
+ ```
215
+
216
+ **Services** - Individual components:
217
+ ```
218
+ service {id}({icon})[{label}]
219
+ service {id}({icon})[{label}] in {group}
220
+ ```
221
+
222
+ **Edges** - Connections with direction (L/R/T/B):
223
+ ```
224
+ {service1}:{side} -- {side}:{service2}
225
+ {service1}:{side} --> {side}:{service2} # with arrow
226
+ ```
227
+
228
+ **Junctions** - 4-way connectors:
229
+ ```
230
+ junction {id}
231
+ junction {id} in {parent}
232
+ ```
233
+
234
+ ### Default Icons
235
+
236
+ | Icon | Keyword |
237
+ |------|---------|
238
+ | Cloud | `cloud` |
239
+ | Database | `database` |
240
+ | Disk/Storage | `disk` |
241
+ | Internet | `internet` |
242
+ | Server | `server` |
243
+
244
+ ### AWS Architecture Example
245
+
246
+ ```mermaid
247
+ architecture-beta
248
+ group aws(cloud)[AWS]
249
+
250
+ group vpc(cloud)[VPC] in aws
251
+ group public(cloud)[Public Subnet] in vpc
252
+ group private(cloud)[Private Subnet] in vpc
253
+
254
+ service internet(internet)[Internet]
255
+ service alb(server)[ALB] in public
256
+ service ec2(server)[EC2] in private
257
+ service rds(database)[RDS] in private
258
+ service s3(disk)[S3] in aws
259
+
260
+ internet:R --> L:alb
261
+ alb:R --> L:ec2
262
+ ec2:R --> L:rds
263
+ ec2:B --> T:s3
264
+ ```
265
+
266
+ ### Custom Icons (Iconify)
267
+
268
+ For AWS-specific icons, register icon packs:
269
+ ```javascript
270
+ // In your setup
271
+ import { icons } from '@iconify-json/logos';
272
+ mermaid.registerIconPacks([{ name: icons.prefix, icons }]);
273
+ ```
274
+
275
+ Then use:
276
+ ```
277
+ service lambda(logos:aws-lambda)[Lambda]
278
+ service s3(logos:aws-s3)[S3 Bucket]
279
+ service ec2(logos:aws-ec2)[EC2 Instance]
280
+ service rds(logos:aws-aurora)[Aurora DB]
281
+ ```
282
+
283
+ ### CI/CD Pipeline Example
284
+
285
+ ```mermaid
286
+ architecture-beta
287
+ group cicd(cloud)[CI/CD Pipeline]
288
+
289
+ service github(internet)[GitHub]
290
+ service ci(server)[CI Server] in cicd
291
+ service test(server)[Test Runner] in cicd
292
+ service deploy(server)[Deploy] in cicd
293
+ service prod(cloud)[Production]
294
+
295
+ github:R --> L:ci
296
+ ci:R --> L:test
297
+ test:R --> L:deploy
298
+ deploy:R --> L:prod
299
+ ```
300
+
301
+ ### Microservices Example
302
+
303
+ ```mermaid
304
+ architecture-beta
305
+ group frontend(cloud)[Frontend]
306
+ group backend(cloud)[Backend Services]
307
+ group data(cloud)[Data Layer]
308
+
309
+ service web(server)[Web App] in frontend
310
+ service mobile(server)[Mobile API] in frontend
311
+
312
+ service auth(server)[Auth Service] in backend
313
+ service api(server)[API Gateway] in backend
314
+ service orders(server)[Orders] in backend
315
+ service payments(server)[Payments] in backend
316
+
317
+ service postgres(database)[PostgreSQL] in data
318
+ service redis(database)[Redis] in data
319
+ service s3(disk)[S3] in data
320
+
321
+ junction junc1 in backend
322
+
323
+ web:B --> T:api
324
+ mobile:B --> T:api
325
+ api:B --> T:junc1
326
+ junc1:L --> R:auth
327
+ junc1:R --> L:orders
328
+ junc1:B --> T:payments
329
+ orders:B --> T:postgres
330
+ auth:B --> T:redis
331
+ payments:B --> T:s3
332
+ ```
333
+
334
+ ---
335
+
336
+ ## Quadrant Chart
337
+
338
+ **Best for**: Priority matrix, effort/impact analysis.
339
+
340
+ ```mermaid
341
+ quadrantChart
342
+ title Priority Matrix
343
+ x-axis Low Effort --> High Effort
344
+ y-axis Low Impact --> High Impact
345
+ quadrant-1 Do First
346
+ quadrant-2 Schedule
347
+ quadrant-3 Delegate
348
+ quadrant-4 Eliminate
349
+
350
+ Feature A: [0.8, 0.9]
351
+ Feature B: [0.2, 0.8]
352
+ Feature C: [0.7, 0.3]
353
+ Feature D: [0.3, 0.2]
354
+ ```
355
+
356
+ ---
357
+
358
+ ## XY Chart
359
+
360
+ **Best for**: Line charts, bar charts, trends.
361
+
362
+ ```mermaid
363
+ xychart-beta
364
+ title "Monthly Revenue"
365
+ x-axis [Jan, Feb, Mar, Apr, May, Jun]
366
+ y-axis "Revenue (USD)" 0 --> 10000
367
+ bar [5000, 6000, 7500, 8200, 7800, 9200]
368
+ line [5000, 6000, 7500, 8200, 7800, 9200]
369
+ ```
370
+
371
+ ### Multi-series
372
+
373
+ ```mermaid
374
+ xychart-beta
375
+ title "Sales Comparison"
376
+ x-axis [Q1, Q2, Q3, Q4]
377
+ y-axis "Sales" 0 --> 100
378
+ bar "Product A" [30, 45, 60, 80]
379
+ bar "Product B" [20, 35, 50, 70]
380
+ line "Target" [40, 50, 60, 70]
381
+ ```
382
+
383
+ ---
384
+
385
+ ## Sankey Diagram
386
+
387
+ **Best for**: Flow visualization, resource allocation, conversion funnels.
388
+
389
+ ```mermaid
390
+ sankey-beta
391
+
392
+ Website,Signup,5000
393
+ Website,Bounce,3000
394
+ Signup,Free Trial,4000
395
+ Signup,Direct Buy,1000
396
+ Free Trial,Convert,2000
397
+ Free Trial,Churn,2000
398
+ ```
399
+
400
+ ### Budget Flow Example
401
+
402
+ ```mermaid
403
+ sankey-beta
404
+
405
+ Revenue,Operations,40
406
+ Revenue,Marketing,25
407
+ Revenue,R&D,20
408
+ Revenue,Admin,15
409
+ Operations,Salaries,30
410
+ Operations,Infrastructure,10
411
+ Marketing,Ads,15
412
+ Marketing,Events,10
413
+ ```
414
+
415
+ ---
416
+
417
+ ## Packet Diagram
418
+
419
+ **Best for**: Network protocols, binary data formats.
420
+
421
+ ```mermaid
422
+ packet-beta
423
+ 0-15: "Source Port"
424
+ 16-31: "Destination Port"
425
+ 32-63: "Sequence Number"
426
+ 64-95: "Acknowledgment Number"
427
+ 96-99: "Data Offset"
428
+ 100-105: "Reserved"
429
+ 106-111: "Flags"
430
+ 112-127: "Window Size"
431
+ 128-143: "Checksum"
432
+ 144-159: "Urgent Pointer"
433
+ ```
434
+
435
+ ---
436
+
437
+ ## C4 Diagram
438
+
439
+ **Best for**: Software architecture at different abstraction levels.
440
+
441
+ ### Context
442
+
443
+ ```mermaid
444
+ C4Context
445
+ title System Context
446
+
447
+ Person(user, "User", "End user of the system")
448
+ System(system, "Our System", "Main application")
449
+ System_Ext(email, "Email Service", "Sends emails")
450
+
451
+ Rel(user, system, "Uses")
452
+ Rel(system, email, "Sends emails via")
453
+ ```
454
+
455
+ ### Container
456
+
457
+ ```mermaid
458
+ C4Container
459
+ title Container Diagram
460
+
461
+ Person(user, "User")
462
+
463
+ Container_Boundary(system, "System") {
464
+ Container(web, "Web App", "React", "Frontend")
465
+ Container(api, "API", "Node.js", "Backend")
466
+ ContainerDb(db, "Database", "PostgreSQL", "Stores data")
467
+ }
468
+
469
+ Rel(user, web, "Uses", "HTTPS")
470
+ Rel(web, api, "Calls", "REST")
471
+ Rel(api, db, "Reads/Writes", "SQL")
472
+ ```
473
+
474
+ ---
475
+
476
+ ## Mindmap
477
+
478
+ **Best for**: Feature breakdown, brainstorming.
479
+
480
+ ```mermaid
481
+ mindmap
482
+ root((Project))
483
+ Features
484
+ Auth
485
+ Login
486
+ Signup
487
+ OAuth
488
+ Payments
489
+ Checkout
490
+ Subscriptions
491
+ Refunds
492
+ Technical
493
+ Frontend
494
+ React
495
+ Tailwind
496
+ Backend
497
+ Node.js
498
+ PostgreSQL
499
+ ```
500
+
501
+ ---
502
+
503
+ ## Timeline
504
+
505
+ **Best for**: Project phases, milestones, history.
506
+
507
+ ```mermaid
508
+ timeline
509
+ title Project Roadmap
510
+ section Phase 1
511
+ 2024-Q1 : Requirements
512
+ : Design
513
+ section Phase 2
514
+ 2024-Q2 : Development
515
+ : Testing
516
+ section Phase 3
517
+ 2024-Q3 : Beta Launch
518
+ 2024-Q4 : GA Release
519
+ ```
520
+
521
+ ---
522
+
523
+ ## Journey
524
+
525
+ **Best for**: User experience mapping, satisfaction tracking.
526
+
527
+ ```mermaid
528
+ journey
529
+ title User Onboarding
530
+ section Discovery
531
+ Visit website: 5: User
532
+ Read docs: 4: User
533
+ section Signup
534
+ Create account: 3: User
535
+ Verify email: 2: User
536
+ section First Use
537
+ Complete tutorial: 4: User
538
+ Create first item: 5: User
539
+ ```
540
+
541
+ Score: 1 (worst) to 5 (best)
542
+
543
+ ---
544
+
545
+ ## Pie Chart
546
+
547
+ **Best for**: Distribution, percentages.
548
+
549
+ ```mermaid
550
+ pie showData
551
+ title Traffic Sources
552
+ "Organic" : 45
553
+ "Direct" : 25
554
+ "Referral" : 20
555
+ "Social" : 10
556
+ ```
557
+
558
+ ---
559
+
560
+ ## Git Graph
561
+
562
+ **Best for**: Branch strategies, version control flows.
563
+
564
+ ```mermaid
565
+ gitGraph
566
+ commit id: "Initial"
567
+ branch develop
568
+ checkout develop
569
+ commit id: "Feature 1"
570
+ commit id: "Feature 2"
571
+ checkout main
572
+ merge develop id: "Release v1.0"
573
+ branch hotfix
574
+ commit id: "Fix bug"
575
+ checkout main
576
+ merge hotfix
577
+ ```
578
+
579
+ ---
580
+
581
+ ## Block Diagram
582
+
583
+ **Best for**: System architecture blocks, layouts.
584
+
585
+ ```mermaid
586
+ block-beta
587
+ columns 3
588
+
589
+ Frontend:3
590
+ block:backend:2
591
+ API
592
+ Worker
593
+ end
594
+ Cache
595
+ Database:2
596
+ Storage
597
+ ```
598
+
599
+ ---
600
+
601
+ ## Requirement Diagram
602
+
603
+ **Best for**: Requirements tracking, traceability.
604
+
605
+ ```mermaid
606
+ requirementDiagram
607
+ requirement user_auth {
608
+ id: REQ-001
609
+ text: Users must authenticate
610
+ risk: high
611
+ verifymethod: test
612
+ }
613
+
614
+ element login_page {
615
+ type: ui
616
+ }
617
+
618
+ login_page - satisfies -> user_auth
619
+ ```
620
+
621
+ ---
622
+
623
+ ## Tips
624
+
625
+ 1. **Keep diagrams focused** - One concept per diagram
626
+ 2. **Use meaningful IDs** - `userLogin` not `A`
627
+ 3. **Add labels** - Especially on decision branches
628
+ 4. **Test incrementally** - Validate after each addition
629
+ 5. **Use subgraphs/groups** - Organize complex diagrams
630
+ 6. **Match direction to reading** - LR for processes, TD for hierarchies
631
+
632
+ ## References
633
+
634
+ - [Mermaid Official Docs](https://mermaid.js.org/)
635
+ - [Architecture Diagrams](https://mermaid.js.org/syntax/architecture.html)
636
+ - [Iconify Icons](https://iconify.design/)