@claude-collective/cli 0.13.0 → 0.13.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.
- package/CHANGELOG.md +18 -0
- package/config/skills-matrix.yaml +858 -0
- package/config/stacks.yaml +254 -0
- package/dist/{chunk-7Q44DMSP.js → chunk-ORVG4P2D.js} +4 -4
- package/dist/{chunk-6DCSSORF.js → chunk-SWZXWQ6I.js} +11 -11
- package/dist/commands/edit.js +6 -6
- package/dist/commands/init.js +6 -6
- package/dist/components/wizard/step-build.js +2 -2
- package/dist/components/wizard/step-build.test.js +2 -2
- package/dist/components/wizard/wizard.js +6 -6
- package/dist/config/skills-matrix.yaml +858 -0
- package/dist/config/stacks.yaml +254 -0
- package/dist/src/agents/_templates/agent.liquid +140 -0
- package/dist/src/agents/developer/api-developer/agent.yaml +12 -0
- package/dist/src/agents/developer/api-developer/critical-reminders.md +23 -0
- package/dist/src/agents/developer/api-developer/critical-requirements.md +11 -0
- package/dist/src/agents/developer/api-developer/examples.md +72 -0
- package/dist/src/agents/developer/api-developer/intro.md +22 -0
- package/dist/src/agents/developer/api-developer/output-format.md +359 -0
- package/dist/src/agents/developer/api-developer/workflow.md +471 -0
- package/dist/src/agents/developer/cli-developer/agent.yaml +12 -0
- package/dist/src/agents/developer/cli-developer/critical-reminders.md +28 -0
- package/dist/src/agents/developer/cli-developer/critical-requirements.md +15 -0
- package/dist/src/agents/developer/cli-developer/examples.md +68 -0
- package/dist/src/agents/developer/cli-developer/intro.md +23 -0
- package/dist/src/agents/developer/cli-developer/output-format.md +216 -0
- package/dist/src/agents/developer/cli-developer/workflow.md +509 -0
- package/dist/src/agents/developer/web-architecture/agent.yaml +12 -0
- package/dist/src/agents/developer/web-architecture/critical-reminders.md +27 -0
- package/dist/src/agents/developer/web-architecture/critical-requirements.md +35 -0
- package/dist/src/agents/developer/web-architecture/examples.md +187 -0
- package/dist/src/agents/developer/web-architecture/intro.md +35 -0
- package/dist/src/agents/developer/web-architecture/output-format.md +261 -0
- package/dist/src/agents/developer/web-architecture/workflow.md +599 -0
- package/dist/src/agents/developer/web-developer/agent.yaml +12 -0
- package/dist/src/agents/developer/web-developer/critical-reminders.md +17 -0
- package/dist/src/agents/developer/web-developer/critical-requirements.md +15 -0
- package/dist/src/agents/developer/web-developer/examples.md +114 -0
- package/dist/src/agents/developer/web-developer/intro.md +5 -0
- package/dist/src/agents/developer/web-developer/output-format.md +213 -0
- package/dist/src/agents/developer/web-developer/workflow.md +459 -0
- package/dist/src/agents/meta/agent-summoner/agent.yaml +12 -0
- package/dist/src/agents/meta/agent-summoner/critical-reminders.md +31 -0
- package/dist/src/agents/meta/agent-summoner/critical-requirements.md +27 -0
- package/dist/src/agents/meta/agent-summoner/examples.md +176 -0
- package/dist/src/agents/meta/agent-summoner/intro.md +9 -0
- package/dist/src/agents/meta/agent-summoner/output-format.md +115 -0
- package/dist/src/agents/meta/agent-summoner/workflow.md +1540 -0
- package/dist/src/agents/meta/documentor/agent.yaml +11 -0
- package/dist/src/agents/meta/documentor/critical-reminders.md +23 -0
- package/dist/src/agents/meta/documentor/critical-requirements.md +13 -0
- package/dist/src/agents/meta/documentor/examples.md +147 -0
- package/dist/src/agents/meta/documentor/intro.md +11 -0
- package/dist/src/agents/meta/documentor/output-format.md +237 -0
- package/dist/src/agents/meta/documentor/workflow.md +1245 -0
- package/dist/src/agents/meta/skill-summoner/agent.yaml +13 -0
- package/dist/src/agents/meta/skill-summoner/critical-reminders.md +73 -0
- package/dist/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
- package/dist/src/agents/meta/skill-summoner/examples.md +116 -0
- package/dist/src/agents/meta/skill-summoner/intro.md +5 -0
- package/dist/src/agents/meta/skill-summoner/output-format.md +279 -0
- package/dist/src/agents/meta/skill-summoner/workflow.md +1485 -0
- package/dist/src/agents/migration/cli-migrator/agent.yaml +12 -0
- package/dist/src/agents/migration/cli-migrator/anti-patterns.md +160 -0
- package/dist/src/agents/migration/cli-migrator/conversion-mappings.md +63 -0
- package/dist/src/agents/migration/cli-migrator/critical-reminders.md +17 -0
- package/dist/src/agents/migration/cli-migrator/critical-requirements.md +13 -0
- package/dist/src/agents/migration/cli-migrator/intro.md +15 -0
- package/dist/src/agents/migration/cli-migrator/output-format.md +164 -0
- package/dist/src/agents/migration/cli-migrator/workflow.md +230 -0
- package/dist/src/agents/pattern/pattern-scout/agent.yaml +10 -0
- package/dist/src/agents/pattern/pattern-scout/critical-reminders.md +58 -0
- package/dist/src/agents/pattern/pattern-scout/critical-requirements.md +17 -0
- package/dist/src/agents/pattern/pattern-scout/examples.md +93 -0
- package/dist/src/agents/pattern/pattern-scout/intro.md +3 -0
- package/dist/src/agents/pattern/pattern-scout/output-format.md +196 -0
- package/dist/src/agents/pattern/pattern-scout/workflow.md +1901 -0
- package/dist/src/agents/pattern/web-pattern-critique/agent.yaml +12 -0
- package/dist/src/agents/pattern/web-pattern-critique/critical-reminders.md +13 -0
- package/dist/src/agents/pattern/web-pattern-critique/critical-requirements.md +11 -0
- package/dist/src/agents/pattern/web-pattern-critique/examples.md +56 -0
- package/dist/src/agents/pattern/web-pattern-critique/intro.md +5 -0
- package/dist/src/agents/pattern/web-pattern-critique/output-format.md +257 -0
- package/dist/src/agents/pattern/web-pattern-critique/workflow.md +674 -0
- package/dist/src/agents/planning/web-pm/agent.yaml +12 -0
- package/dist/src/agents/planning/web-pm/critical-reminders.md +21 -0
- package/dist/src/agents/planning/web-pm/critical-requirements.md +17 -0
- package/dist/src/agents/planning/web-pm/examples.md +85 -0
- package/dist/src/agents/planning/web-pm/intro.md +3 -0
- package/dist/src/agents/planning/web-pm/output-format.md +228 -0
- package/dist/src/agents/planning/web-pm/workflow.md +393 -0
- package/dist/src/agents/researcher/api-researcher/agent.yaml +10 -0
- package/dist/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
- package/dist/src/agents/researcher/api-researcher/critical-requirements.md +13 -0
- package/dist/src/agents/researcher/api-researcher/examples.md +116 -0
- package/dist/src/agents/researcher/api-researcher/intro.md +32 -0
- package/dist/src/agents/researcher/api-researcher/output-format.md +135 -0
- package/dist/src/agents/researcher/api-researcher/workflow.md +261 -0
- package/dist/src/agents/researcher/web-researcher/agent.yaml +10 -0
- package/dist/src/agents/researcher/web-researcher/critical-reminders.md +23 -0
- package/dist/src/agents/researcher/web-researcher/critical-requirements.md +11 -0
- package/dist/src/agents/researcher/web-researcher/examples.md +126 -0
- package/dist/src/agents/researcher/web-researcher/intro.md +31 -0
- package/dist/src/agents/researcher/web-researcher/output-format.md +112 -0
- package/dist/src/agents/researcher/web-researcher/workflow.md +322 -0
- package/dist/src/agents/reviewer/api-reviewer/agent.yaml +12 -0
- package/dist/src/agents/reviewer/api-reviewer/critical-reminders.md +16 -0
- package/dist/src/agents/reviewer/api-reviewer/critical-requirements.md +13 -0
- package/dist/src/agents/reviewer/api-reviewer/examples.md +54 -0
- package/dist/src/agents/reviewer/api-reviewer/intro.md +22 -0
- package/dist/src/agents/reviewer/api-reviewer/output-format.md +288 -0
- package/dist/src/agents/reviewer/api-reviewer/workflow.md +369 -0
- package/dist/src/agents/reviewer/cli-reviewer/agent.yaml +12 -0
- package/dist/src/agents/reviewer/cli-reviewer/critical-reminders.md +17 -0
- package/dist/src/agents/reviewer/cli-reviewer/critical-requirements.md +13 -0
- package/dist/src/agents/reviewer/cli-reviewer/examples.md +83 -0
- package/dist/src/agents/reviewer/cli-reviewer/intro.md +21 -0
- package/dist/src/agents/reviewer/cli-reviewer/output-format.md +330 -0
- package/dist/src/agents/reviewer/cli-reviewer/workflow.md +294 -0
- package/dist/src/agents/reviewer/web-reviewer/agent.yaml +12 -0
- package/dist/src/agents/reviewer/web-reviewer/critical-reminders.md +17 -0
- package/dist/src/agents/reviewer/web-reviewer/critical-requirements.md +11 -0
- package/dist/src/agents/reviewer/web-reviewer/examples.md +79 -0
- package/dist/src/agents/reviewer/web-reviewer/intro.md +20 -0
- package/dist/src/agents/reviewer/web-reviewer/output-format.md +253 -0
- package/dist/src/agents/reviewer/web-reviewer/workflow.md +228 -0
- package/dist/src/agents/tester/cli-tester/agent.yaml +12 -0
- package/dist/src/agents/tester/cli-tester/critical-reminders.md +19 -0
- package/dist/src/agents/tester/cli-tester/critical-requirements.md +17 -0
- package/dist/src/agents/tester/cli-tester/examples.md +80 -0
- package/dist/src/agents/tester/cli-tester/intro.md +19 -0
- package/dist/src/agents/tester/cli-tester/output-format.md +232 -0
- package/dist/src/agents/tester/cli-tester/workflow.md +304 -0
- package/dist/src/agents/tester/web-tester/agent.yaml +12 -0
- package/dist/src/agents/tester/web-tester/critical-reminders.md +15 -0
- package/dist/src/agents/tester/web-tester/critical-requirements.md +11 -0
- package/dist/src/agents/tester/web-tester/examples.md +68 -0
- package/dist/src/agents/tester/web-tester/intro.md +18 -0
- package/dist/src/agents/tester/web-tester/output-format.md +254 -0
- package/dist/src/agents/tester/web-tester/workflow.md +507 -0
- package/package.json +3 -1
- package/src/agents/_templates/agent.liquid +140 -0
- package/src/agents/developer/api-developer/agent.yaml +12 -0
- package/src/agents/developer/api-developer/critical-reminders.md +23 -0
- package/src/agents/developer/api-developer/critical-requirements.md +11 -0
- package/src/agents/developer/api-developer/examples.md +72 -0
- package/src/agents/developer/api-developer/intro.md +22 -0
- package/src/agents/developer/api-developer/output-format.md +359 -0
- package/src/agents/developer/api-developer/workflow.md +471 -0
- package/src/agents/developer/cli-developer/agent.yaml +12 -0
- package/src/agents/developer/cli-developer/critical-reminders.md +28 -0
- package/src/agents/developer/cli-developer/critical-requirements.md +15 -0
- package/src/agents/developer/cli-developer/examples.md +68 -0
- package/src/agents/developer/cli-developer/intro.md +23 -0
- package/src/agents/developer/cli-developer/output-format.md +216 -0
- package/src/agents/developer/cli-developer/workflow.md +509 -0
- package/src/agents/developer/web-architecture/agent.yaml +12 -0
- package/src/agents/developer/web-architecture/critical-reminders.md +27 -0
- package/src/agents/developer/web-architecture/critical-requirements.md +35 -0
- package/src/agents/developer/web-architecture/examples.md +187 -0
- package/src/agents/developer/web-architecture/intro.md +35 -0
- package/src/agents/developer/web-architecture/output-format.md +261 -0
- package/src/agents/developer/web-architecture/workflow.md +599 -0
- package/src/agents/developer/web-developer/agent.yaml +12 -0
- package/src/agents/developer/web-developer/critical-reminders.md +17 -0
- package/src/agents/developer/web-developer/critical-requirements.md +15 -0
- package/src/agents/developer/web-developer/examples.md +114 -0
- package/src/agents/developer/web-developer/intro.md +5 -0
- package/src/agents/developer/web-developer/output-format.md +213 -0
- package/src/agents/developer/web-developer/workflow.md +459 -0
- package/src/agents/meta/agent-summoner/agent.yaml +12 -0
- package/src/agents/meta/agent-summoner/critical-reminders.md +31 -0
- package/src/agents/meta/agent-summoner/critical-requirements.md +27 -0
- package/src/agents/meta/agent-summoner/examples.md +176 -0
- package/src/agents/meta/agent-summoner/intro.md +9 -0
- package/src/agents/meta/agent-summoner/output-format.md +115 -0
- package/src/agents/meta/agent-summoner/workflow.md +1540 -0
- package/src/agents/meta/documentor/agent.yaml +11 -0
- package/src/agents/meta/documentor/critical-reminders.md +23 -0
- package/src/agents/meta/documentor/critical-requirements.md +13 -0
- package/src/agents/meta/documentor/examples.md +147 -0
- package/src/agents/meta/documentor/intro.md +11 -0
- package/src/agents/meta/documentor/output-format.md +237 -0
- package/src/agents/meta/documentor/workflow.md +1245 -0
- package/src/agents/meta/skill-summoner/agent.yaml +13 -0
- package/src/agents/meta/skill-summoner/critical-reminders.md +73 -0
- package/src/agents/meta/skill-summoner/critical-requirements.md +62 -0
- package/src/agents/meta/skill-summoner/examples.md +116 -0
- package/src/agents/meta/skill-summoner/intro.md +5 -0
- package/src/agents/meta/skill-summoner/output-format.md +279 -0
- package/src/agents/meta/skill-summoner/workflow.md +1485 -0
- package/src/agents/migration/cli-migrator/agent.yaml +12 -0
- package/src/agents/migration/cli-migrator/anti-patterns.md +160 -0
- package/src/agents/migration/cli-migrator/conversion-mappings.md +63 -0
- package/src/agents/migration/cli-migrator/critical-reminders.md +17 -0
- package/src/agents/migration/cli-migrator/critical-requirements.md +13 -0
- package/src/agents/migration/cli-migrator/intro.md +15 -0
- package/src/agents/migration/cli-migrator/output-format.md +164 -0
- package/src/agents/migration/cli-migrator/workflow.md +230 -0
- package/src/agents/pattern/pattern-scout/agent.yaml +10 -0
- package/src/agents/pattern/pattern-scout/critical-reminders.md +58 -0
- package/src/agents/pattern/pattern-scout/critical-requirements.md +17 -0
- package/src/agents/pattern/pattern-scout/examples.md +93 -0
- package/src/agents/pattern/pattern-scout/intro.md +3 -0
- package/src/agents/pattern/pattern-scout/output-format.md +196 -0
- package/src/agents/pattern/pattern-scout/workflow.md +1901 -0
- package/src/agents/pattern/web-pattern-critique/agent.yaml +12 -0
- package/src/agents/pattern/web-pattern-critique/critical-reminders.md +13 -0
- package/src/agents/pattern/web-pattern-critique/critical-requirements.md +11 -0
- package/src/agents/pattern/web-pattern-critique/examples.md +56 -0
- package/src/agents/pattern/web-pattern-critique/intro.md +5 -0
- package/src/agents/pattern/web-pattern-critique/output-format.md +257 -0
- package/src/agents/pattern/web-pattern-critique/workflow.md +674 -0
- package/src/agents/planning/web-pm/agent.yaml +12 -0
- package/src/agents/planning/web-pm/critical-reminders.md +21 -0
- package/src/agents/planning/web-pm/critical-requirements.md +17 -0
- package/src/agents/planning/web-pm/examples.md +85 -0
- package/src/agents/planning/web-pm/intro.md +3 -0
- package/src/agents/planning/web-pm/output-format.md +228 -0
- package/src/agents/planning/web-pm/workflow.md +393 -0
- package/src/agents/researcher/api-researcher/agent.yaml +10 -0
- package/src/agents/researcher/api-researcher/critical-reminders.md +27 -0
- package/src/agents/researcher/api-researcher/critical-requirements.md +13 -0
- package/src/agents/researcher/api-researcher/examples.md +116 -0
- package/src/agents/researcher/api-researcher/intro.md +32 -0
- package/src/agents/researcher/api-researcher/output-format.md +135 -0
- package/src/agents/researcher/api-researcher/workflow.md +261 -0
- package/src/agents/researcher/web-researcher/agent.yaml +10 -0
- package/src/agents/researcher/web-researcher/critical-reminders.md +23 -0
- package/src/agents/researcher/web-researcher/critical-requirements.md +11 -0
- package/src/agents/researcher/web-researcher/examples.md +126 -0
- package/src/agents/researcher/web-researcher/intro.md +31 -0
- package/src/agents/researcher/web-researcher/output-format.md +112 -0
- package/src/agents/researcher/web-researcher/workflow.md +322 -0
- package/src/agents/reviewer/api-reviewer/agent.yaml +12 -0
- package/src/agents/reviewer/api-reviewer/critical-reminders.md +16 -0
- package/src/agents/reviewer/api-reviewer/critical-requirements.md +13 -0
- package/src/agents/reviewer/api-reviewer/examples.md +54 -0
- package/src/agents/reviewer/api-reviewer/intro.md +22 -0
- package/src/agents/reviewer/api-reviewer/output-format.md +288 -0
- package/src/agents/reviewer/api-reviewer/workflow.md +369 -0
- package/src/agents/reviewer/cli-reviewer/agent.yaml +12 -0
- package/src/agents/reviewer/cli-reviewer/critical-reminders.md +17 -0
- package/src/agents/reviewer/cli-reviewer/critical-requirements.md +13 -0
- package/src/agents/reviewer/cli-reviewer/examples.md +83 -0
- package/src/agents/reviewer/cli-reviewer/intro.md +21 -0
- package/src/agents/reviewer/cli-reviewer/output-format.md +330 -0
- package/src/agents/reviewer/cli-reviewer/workflow.md +294 -0
- package/src/agents/reviewer/web-reviewer/agent.yaml +12 -0
- package/src/agents/reviewer/web-reviewer/critical-reminders.md +17 -0
- package/src/agents/reviewer/web-reviewer/critical-requirements.md +11 -0
- package/src/agents/reviewer/web-reviewer/examples.md +79 -0
- package/src/agents/reviewer/web-reviewer/intro.md +20 -0
- package/src/agents/reviewer/web-reviewer/output-format.md +253 -0
- package/src/agents/reviewer/web-reviewer/workflow.md +228 -0
- package/src/agents/tester/cli-tester/agent.yaml +12 -0
- package/src/agents/tester/cli-tester/critical-reminders.md +19 -0
- package/src/agents/tester/cli-tester/critical-requirements.md +17 -0
- package/src/agents/tester/cli-tester/examples.md +80 -0
- package/src/agents/tester/cli-tester/intro.md +19 -0
- package/src/agents/tester/cli-tester/output-format.md +232 -0
- package/src/agents/tester/cli-tester/workflow.md +304 -0
- package/src/agents/tester/web-tester/agent.yaml +12 -0
- package/src/agents/tester/web-tester/critical-reminders.md +15 -0
- package/src/agents/tester/web-tester/critical-requirements.md +11 -0
- package/src/agents/tester/web-tester/examples.md +68 -0
- package/src/agents/tester/web-tester/intro.md +18 -0
- package/src/agents/tester/web-tester/output-format.md +254 -0
- package/src/agents/tester/web-tester/workflow.md +507 -0
- /package/dist/{chunk-7Q44DMSP.js.map → chunk-ORVG4P2D.js.map} +0 -0
- /package/dist/{chunk-6DCSSORF.js.map → chunk-SWZXWQ6I.js.map} +0 -0
|
@@ -0,0 +1,858 @@
|
|
|
1
|
+
# =============================================================================
|
|
2
|
+
# skills-matrix.yaml
|
|
3
|
+
# Full skills matrix for CLI data-driven architecture
|
|
4
|
+
# =============================================================================
|
|
5
|
+
# This is the production skills matrix containing all relationships and stacks.
|
|
6
|
+
# For testing, use skills-matrix-mvp.yaml (minimal 10-skill dataset).
|
|
7
|
+
# =============================================================================
|
|
8
|
+
|
|
9
|
+
version: "1.0.0"
|
|
10
|
+
|
|
11
|
+
# =============================================================================
|
|
12
|
+
# Categories (What the user selects)
|
|
13
|
+
# =============================================================================
|
|
14
|
+
|
|
15
|
+
categories:
|
|
16
|
+
# ─────────────────────────────────────────────────────────────────
|
|
17
|
+
# Top-level categories
|
|
18
|
+
# ─────────────────────────────────────────────────────────────────
|
|
19
|
+
frontend:
|
|
20
|
+
id: frontend
|
|
21
|
+
name: Frontend
|
|
22
|
+
description: UI and client-side development
|
|
23
|
+
exclusive: false
|
|
24
|
+
required: false
|
|
25
|
+
order: 1
|
|
26
|
+
icon: "⚛️"
|
|
27
|
+
|
|
28
|
+
backend:
|
|
29
|
+
id: backend
|
|
30
|
+
name: Backend
|
|
31
|
+
description: API and server-side development
|
|
32
|
+
exclusive: false
|
|
33
|
+
required: false
|
|
34
|
+
order: 2
|
|
35
|
+
icon: "🔌"
|
|
36
|
+
|
|
37
|
+
mobile:
|
|
38
|
+
id: mobile
|
|
39
|
+
name: Mobile
|
|
40
|
+
description: Native mobile development
|
|
41
|
+
exclusive: false
|
|
42
|
+
required: false
|
|
43
|
+
order: 3
|
|
44
|
+
icon: "📱"
|
|
45
|
+
|
|
46
|
+
setup:
|
|
47
|
+
id: setup
|
|
48
|
+
name: Setup & Infrastructure
|
|
49
|
+
description: Project setup, tooling, and configuration
|
|
50
|
+
exclusive: false
|
|
51
|
+
required: false
|
|
52
|
+
order: 4
|
|
53
|
+
icon: "🛠️"
|
|
54
|
+
|
|
55
|
+
reviewing:
|
|
56
|
+
id: reviewing
|
|
57
|
+
name: Reviewing & Code Quality
|
|
58
|
+
description: Code review patterns, feedback principles, quality assurance
|
|
59
|
+
exclusive: false
|
|
60
|
+
required: false
|
|
61
|
+
order: 5
|
|
62
|
+
icon: "👀"
|
|
63
|
+
|
|
64
|
+
cli:
|
|
65
|
+
id: cli
|
|
66
|
+
name: CLI
|
|
67
|
+
description: Command-line tool development
|
|
68
|
+
exclusive: false
|
|
69
|
+
required: false
|
|
70
|
+
order: 6
|
|
71
|
+
icon: ">"
|
|
72
|
+
|
|
73
|
+
# ─────────────────────────────────────────────────────────────────
|
|
74
|
+
# Frontend subcategories
|
|
75
|
+
# ─────────────────────────────────────────────────────────────────
|
|
76
|
+
framework:
|
|
77
|
+
id: framework
|
|
78
|
+
name: Framework
|
|
79
|
+
description: Core UI framework (React, Vue, Angular, SolidJS)
|
|
80
|
+
parent: frontend
|
|
81
|
+
domain: web
|
|
82
|
+
exclusive: true
|
|
83
|
+
required: true
|
|
84
|
+
order: 1
|
|
85
|
+
|
|
86
|
+
meta-framework:
|
|
87
|
+
id: meta-framework
|
|
88
|
+
name: Meta-Framework
|
|
89
|
+
description: Full-stack framework (Next.js, Remix, Nuxt)
|
|
90
|
+
parent: frontend
|
|
91
|
+
domain: web
|
|
92
|
+
exclusive: true
|
|
93
|
+
required: false
|
|
94
|
+
order: 2
|
|
95
|
+
|
|
96
|
+
styling:
|
|
97
|
+
id: styling
|
|
98
|
+
name: Styling
|
|
99
|
+
description: CSS approach (SCSS Modules, Tailwind)
|
|
100
|
+
parent: frontend
|
|
101
|
+
domain: web
|
|
102
|
+
exclusive: true
|
|
103
|
+
required: true
|
|
104
|
+
order: 3
|
|
105
|
+
|
|
106
|
+
client-state:
|
|
107
|
+
id: client-state
|
|
108
|
+
name: Client State Management
|
|
109
|
+
description: UI state, forms, local data (Zustand, Redux, MobX)
|
|
110
|
+
parent: frontend
|
|
111
|
+
domain: web
|
|
112
|
+
exclusive: true
|
|
113
|
+
required: false
|
|
114
|
+
order: 4
|
|
115
|
+
|
|
116
|
+
server-state:
|
|
117
|
+
id: server-state
|
|
118
|
+
name: Server State / Data Fetching
|
|
119
|
+
description: API data caching (React Query, SWR)
|
|
120
|
+
parent: frontend
|
|
121
|
+
domain: web
|
|
122
|
+
exclusive: true
|
|
123
|
+
required: false
|
|
124
|
+
order: 5
|
|
125
|
+
|
|
126
|
+
forms:
|
|
127
|
+
id: forms
|
|
128
|
+
name: Forms & Validation
|
|
129
|
+
description: Form handling and schema validation
|
|
130
|
+
parent: frontend
|
|
131
|
+
domain: web
|
|
132
|
+
exclusive: false
|
|
133
|
+
required: false
|
|
134
|
+
order: 6
|
|
135
|
+
|
|
136
|
+
testing:
|
|
137
|
+
id: testing
|
|
138
|
+
name: Testing
|
|
139
|
+
description: Unit, integration, and E2E testing
|
|
140
|
+
parent: frontend
|
|
141
|
+
domain: web
|
|
142
|
+
exclusive: false
|
|
143
|
+
required: false
|
|
144
|
+
order: 7
|
|
145
|
+
|
|
146
|
+
ui-components:
|
|
147
|
+
id: ui-components
|
|
148
|
+
name: UI Component Library
|
|
149
|
+
description: Pre-built component systems (Radix, shadcn)
|
|
150
|
+
parent: frontend
|
|
151
|
+
domain: web
|
|
152
|
+
exclusive: false
|
|
153
|
+
required: false
|
|
154
|
+
order: 8
|
|
155
|
+
|
|
156
|
+
mocking:
|
|
157
|
+
id: mocking
|
|
158
|
+
name: API Mocking
|
|
159
|
+
description: Mock Service Worker for development and testing
|
|
160
|
+
parent: frontend
|
|
161
|
+
domain: web
|
|
162
|
+
exclusive: false
|
|
163
|
+
required: false
|
|
164
|
+
order: 10
|
|
165
|
+
|
|
166
|
+
# ─────────────────────────────────────────────────────────────────
|
|
167
|
+
# Backend subcategories
|
|
168
|
+
# ─────────────────────────────────────────────────────────────────
|
|
169
|
+
api:
|
|
170
|
+
id: api
|
|
171
|
+
name: API Framework
|
|
172
|
+
description: Backend framework (Hono, Express, Fastify)
|
|
173
|
+
parent: backend
|
|
174
|
+
domain: api
|
|
175
|
+
exclusive: true
|
|
176
|
+
required: true
|
|
177
|
+
order: 1
|
|
178
|
+
|
|
179
|
+
database:
|
|
180
|
+
id: database
|
|
181
|
+
name: Database ORM
|
|
182
|
+
description: Database access layer (Drizzle, Prisma)
|
|
183
|
+
parent: backend
|
|
184
|
+
domain: api
|
|
185
|
+
exclusive: true
|
|
186
|
+
required: false
|
|
187
|
+
order: 2
|
|
188
|
+
|
|
189
|
+
auth:
|
|
190
|
+
id: auth
|
|
191
|
+
name: Authentication
|
|
192
|
+
description: Auth solution (Better Auth, Auth.js)
|
|
193
|
+
parent: backend
|
|
194
|
+
domain: api
|
|
195
|
+
exclusive: true
|
|
196
|
+
required: false
|
|
197
|
+
order: 3
|
|
198
|
+
|
|
199
|
+
observability:
|
|
200
|
+
id: observability
|
|
201
|
+
name: Observability
|
|
202
|
+
description: Logging, monitoring, error tracking
|
|
203
|
+
parent: backend
|
|
204
|
+
domain: api
|
|
205
|
+
exclusive: false
|
|
206
|
+
required: false
|
|
207
|
+
order: 4
|
|
208
|
+
|
|
209
|
+
analytics:
|
|
210
|
+
id: analytics
|
|
211
|
+
name: Analytics
|
|
212
|
+
description: Product analytics and tracking
|
|
213
|
+
parent: backend
|
|
214
|
+
domain: api
|
|
215
|
+
exclusive: false
|
|
216
|
+
required: false
|
|
217
|
+
order: 5
|
|
218
|
+
|
|
219
|
+
email:
|
|
220
|
+
id: email
|
|
221
|
+
name: Email
|
|
222
|
+
description: Transactional email (Resend, Sendgrid)
|
|
223
|
+
parent: backend
|
|
224
|
+
domain: api
|
|
225
|
+
exclusive: true
|
|
226
|
+
required: false
|
|
227
|
+
order: 6
|
|
228
|
+
|
|
229
|
+
# ─────────────────────────────────────────────────────────────────
|
|
230
|
+
# Mobile subcategories
|
|
231
|
+
# ─────────────────────────────────────────────────────────────────
|
|
232
|
+
mobile-framework:
|
|
233
|
+
id: mobile-framework
|
|
234
|
+
name: Mobile Framework
|
|
235
|
+
description: Native mobile framework (React Native, Expo)
|
|
236
|
+
parent: mobile
|
|
237
|
+
domain: mobile
|
|
238
|
+
exclusive: true
|
|
239
|
+
required: true
|
|
240
|
+
order: 1
|
|
241
|
+
|
|
242
|
+
# ─────────────────────────────────────────────────────────────────
|
|
243
|
+
# Setup subcategories
|
|
244
|
+
# ─────────────────────────────────────────────────────────────────
|
|
245
|
+
monorepo:
|
|
246
|
+
id: monorepo
|
|
247
|
+
name: Monorepo
|
|
248
|
+
description: Monorepo tooling (Turborepo, Nx)
|
|
249
|
+
parent: setup
|
|
250
|
+
domain: shared
|
|
251
|
+
exclusive: true
|
|
252
|
+
required: false
|
|
253
|
+
order: 1
|
|
254
|
+
|
|
255
|
+
tooling:
|
|
256
|
+
id: tooling
|
|
257
|
+
name: Build Tooling
|
|
258
|
+
description: ESLint, Prettier, TypeScript, Vite
|
|
259
|
+
parent: setup
|
|
260
|
+
domain: shared
|
|
261
|
+
exclusive: false
|
|
262
|
+
required: false
|
|
263
|
+
order: 2
|
|
264
|
+
|
|
265
|
+
# ─────────────────────────────────────────────────────────────────
|
|
266
|
+
# CLI subcategories
|
|
267
|
+
# ─────────────────────────────────────────────────────────────────
|
|
268
|
+
cli-framework:
|
|
269
|
+
id: cli-framework
|
|
270
|
+
name: CLI Framework
|
|
271
|
+
description: CLI application framework (Commander, oclif, yargs)
|
|
272
|
+
parent: cli
|
|
273
|
+
domain: cli
|
|
274
|
+
exclusive: true
|
|
275
|
+
required: true
|
|
276
|
+
order: 1
|
|
277
|
+
|
|
278
|
+
cli-prompts:
|
|
279
|
+
id: cli-prompts
|
|
280
|
+
name: CLI Prompts
|
|
281
|
+
description: Interactive prompts and UI (Clack, Inquirer, Ink)
|
|
282
|
+
parent: cli
|
|
283
|
+
domain: cli
|
|
284
|
+
exclusive: true
|
|
285
|
+
required: false
|
|
286
|
+
order: 2
|
|
287
|
+
|
|
288
|
+
cli-testing:
|
|
289
|
+
id: cli-testing
|
|
290
|
+
name: CLI Testing
|
|
291
|
+
description: CLI testing utilities
|
|
292
|
+
parent: cli
|
|
293
|
+
domain: cli
|
|
294
|
+
exclusive: false
|
|
295
|
+
required: false
|
|
296
|
+
order: 3
|
|
297
|
+
|
|
298
|
+
# =============================================================================
|
|
299
|
+
# Relationships (The Intelligence)
|
|
300
|
+
# =============================================================================
|
|
301
|
+
|
|
302
|
+
relationships:
|
|
303
|
+
# ─────────────────────────────────────────────────────────────────
|
|
304
|
+
# CONFLICTS (Mutually exclusive - selecting A disables B)
|
|
305
|
+
# ─────────────────────────────────────────────────────────────────
|
|
306
|
+
conflicts:
|
|
307
|
+
# Framework conflicts (only one core framework)
|
|
308
|
+
- skills: [react, vue, angular, solidjs]
|
|
309
|
+
reason: "Core frameworks are mutually exclusive within a single application. Exception: micro-frontend architectures (Single-SPA, Module Federation) can combine frameworks in isolation."
|
|
310
|
+
|
|
311
|
+
# Meta-framework conflicts
|
|
312
|
+
- skills: [nextjs-app-router, remix, nuxt]
|
|
313
|
+
reason: "Meta-frameworks are mutually exclusive - choose one"
|
|
314
|
+
|
|
315
|
+
# NOTE: scss-modules/tailwind moved to discourages - they're technically compatible
|
|
316
|
+
|
|
317
|
+
# Client state management (Vue ecosystem)
|
|
318
|
+
# NOTE: zustand/redux-toolkit/mobx moved to discourages - can coexist for migrations
|
|
319
|
+
- skills: [pinia, zustand, redux-toolkit, mobx]
|
|
320
|
+
reason: "Pinia is Vue-only. Our zustand/redux-toolkit/mobx skills teach React patterns (though these libraries technically support other frameworks)."
|
|
321
|
+
|
|
322
|
+
# Client state management (Angular ecosystem)
|
|
323
|
+
- skills: [ngrx-signalstore, zustand, pinia, redux-toolkit, mobx]
|
|
324
|
+
reason: "NgRx SignalStore is Angular-only"
|
|
325
|
+
|
|
326
|
+
# Server state / data fetching conflicts
|
|
327
|
+
- skills: [react-query, swr]
|
|
328
|
+
reason: "Both solve server state caching - choose one"
|
|
329
|
+
|
|
330
|
+
# GraphQL client conflicts
|
|
331
|
+
- skills: [graphql-apollo, graphql-urql]
|
|
332
|
+
reason: "Both are GraphQL clients - choose one"
|
|
333
|
+
|
|
334
|
+
# E2E testing conflicts
|
|
335
|
+
- skills: [playwright-e2e, cypress-e2e]
|
|
336
|
+
reason: "Both are E2E frameworks - choose one"
|
|
337
|
+
|
|
338
|
+
# Form libraries by framework
|
|
339
|
+
- skills: [react-hook-form, vee-validate]
|
|
340
|
+
reason: "react-hook-form is React-only, vee-validate is Vue-only"
|
|
341
|
+
|
|
342
|
+
# Testing library conflicts
|
|
343
|
+
- skills: [react-testing-library, vue-test-utils]
|
|
344
|
+
reason: "Framework-specific testing libraries"
|
|
345
|
+
|
|
346
|
+
# Backend API framework conflicts
|
|
347
|
+
- skills: [hono, express, fastify]
|
|
348
|
+
reason: "API frameworks are mutually exclusive within a single service. Multiple frameworks can coexist in monorepo architectures."
|
|
349
|
+
|
|
350
|
+
# Database ORM conflicts
|
|
351
|
+
- skills: [drizzle, prisma]
|
|
352
|
+
reason: "Both are ORMs serving similar purposes. Choose one per service; migration scenarios and multi-service architectures may involve both."
|
|
353
|
+
|
|
354
|
+
# CLI framework conflicts
|
|
355
|
+
- skills: [commander, oclif, yargs]
|
|
356
|
+
reason: "CLI frameworks are mutually exclusive"
|
|
357
|
+
|
|
358
|
+
# CLI prompt library conflicts
|
|
359
|
+
- skills: [clack, inquirer, ink]
|
|
360
|
+
reason: "CLI prompt libraries - choose one primary approach"
|
|
361
|
+
|
|
362
|
+
# ─────────────────────────────────────────────────────────────────
|
|
363
|
+
# DISCOURAGES (Soft warnings - selecting A shows warning for B but doesn't disable)
|
|
364
|
+
# ─────────────────────────────────────────────────────────────────
|
|
365
|
+
discourages:
|
|
366
|
+
# Styling paradigm mixing is unusual but technically compatible
|
|
367
|
+
- skills: [scss-modules, tailwind]
|
|
368
|
+
reason: "Mixing CSS paradigms causes slower builds (Tailwind runs per-module) and inconsistent patterns - pick one approach for new projects. Valid for gradual migrations."
|
|
369
|
+
|
|
370
|
+
# React state libraries - can coexist but adds complexity
|
|
371
|
+
- skills: [zustand, redux-toolkit, mobx]
|
|
372
|
+
reason: "Using multiple React state libraries adds complexity - choose one primary approach. Migration patterns exist for gradual transitions."
|
|
373
|
+
|
|
374
|
+
# Redux is heavy for small projects with Zustand available
|
|
375
|
+
- skills: [redux-toolkit, zustand]
|
|
376
|
+
reason: "Redux Toolkit adds more boilerplate than Zustand - consider if you need its features"
|
|
377
|
+
|
|
378
|
+
# SWR is simpler but less featured than React Query
|
|
379
|
+
- skills: [swr, react-query]
|
|
380
|
+
reason: "SWR is simpler but React Query has more features - consider your needs"
|
|
381
|
+
|
|
382
|
+
# Express is legacy compared to modern alternatives
|
|
383
|
+
- skills: [express, hono]
|
|
384
|
+
reason: "Express is mature but Hono offers better performance and edge support"
|
|
385
|
+
|
|
386
|
+
- skills: [express, fastify]
|
|
387
|
+
reason: "Express is mature but Fastify offers better performance"
|
|
388
|
+
|
|
389
|
+
# Cypress vs Playwright - different strengths
|
|
390
|
+
- skills: [cypress-e2e, playwright-e2e]
|
|
391
|
+
reason: "Cypress excels at interactive debugging and component testing; Playwright has better cross-browser support, parallelization, and CI/CD performance"
|
|
392
|
+
|
|
393
|
+
# ─────────────────────────────────────────────────────────────────
|
|
394
|
+
# RECOMMENDS (Soft suggestions - selecting A highlights B)
|
|
395
|
+
# ─────────────────────────────────────────────────────────────────
|
|
396
|
+
recommends:
|
|
397
|
+
# React ecosystem recommendations
|
|
398
|
+
- when: react
|
|
399
|
+
suggest:
|
|
400
|
+
[zustand, react-query, vitest, react-hook-form, react-testing-library]
|
|
401
|
+
reason: "Best-in-class React libraries"
|
|
402
|
+
|
|
403
|
+
# Next.js recommendations
|
|
404
|
+
- when: nextjs-app-router
|
|
405
|
+
suggest: [react-query, zustand, shadcn-ui]
|
|
406
|
+
reason: "Next.js App Router ecosystem"
|
|
407
|
+
|
|
408
|
+
# Remix recommendations
|
|
409
|
+
- when: remix
|
|
410
|
+
suggest: [zustand, vitest, zod-validation]
|
|
411
|
+
reason: "Remix-compatible libraries"
|
|
412
|
+
|
|
413
|
+
# Vue ecosystem recommendations
|
|
414
|
+
- when: vue
|
|
415
|
+
suggest: [pinia, vee-validate, vue-test-utils]
|
|
416
|
+
reason: "Vue community standard libraries (Pinia is official, VeeValidate is community-maintained)"
|
|
417
|
+
|
|
418
|
+
# Angular ecosystem recommendations
|
|
419
|
+
- when: angular
|
|
420
|
+
suggest: [ngrx-signalstore]
|
|
421
|
+
reason: "Angular Signals-based state management"
|
|
422
|
+
|
|
423
|
+
# SolidJS recommendations
|
|
424
|
+
- when: solidjs
|
|
425
|
+
suggest: [vitest, tailwind]
|
|
426
|
+
reason: "SolidJS-compatible libraries"
|
|
427
|
+
|
|
428
|
+
# Backend recommendations
|
|
429
|
+
- when: hono
|
|
430
|
+
suggest: [drizzle, better-auth, zod-validation]
|
|
431
|
+
reason: "Hono + Drizzle + Better Auth is a powerful combo"
|
|
432
|
+
|
|
433
|
+
- when: drizzle
|
|
434
|
+
suggest: [zod-validation]
|
|
435
|
+
reason: "Drizzle types work great with Zod"
|
|
436
|
+
|
|
437
|
+
# Styling recommendations
|
|
438
|
+
- when: scss-modules
|
|
439
|
+
suggest: [radix-ui]
|
|
440
|
+
reason: "Radix primitives work well with any CSS approach"
|
|
441
|
+
|
|
442
|
+
- when: tailwind
|
|
443
|
+
suggest: [shadcn-ui]
|
|
444
|
+
reason: "shadcn/ui is built for Tailwind"
|
|
445
|
+
|
|
446
|
+
# UI component recommendations
|
|
447
|
+
- when: shadcn-ui
|
|
448
|
+
suggest: [radix-ui, tailwind]
|
|
449
|
+
reason: "shadcn/ui uses Radix primitives and Tailwind"
|
|
450
|
+
|
|
451
|
+
# Form recommendations
|
|
452
|
+
- when: react-hook-form
|
|
453
|
+
suggest: [zod-validation]
|
|
454
|
+
reason: "react-hook-form + Zod is the standard pattern"
|
|
455
|
+
|
|
456
|
+
- when: vee-validate
|
|
457
|
+
suggest: [zod-validation]
|
|
458
|
+
reason: "vee-validate supports Zod schemas"
|
|
459
|
+
|
|
460
|
+
# Testing recommendations
|
|
461
|
+
- when: vitest
|
|
462
|
+
suggest: [react-testing-library, msw]
|
|
463
|
+
reason: "Vitest + RTL + MSW is the modern testing stack"
|
|
464
|
+
|
|
465
|
+
- when: playwright-e2e
|
|
466
|
+
suggest: [vitest]
|
|
467
|
+
reason: "Playwright for E2E, Vitest for unit/integration"
|
|
468
|
+
|
|
469
|
+
# Server state recommendations
|
|
470
|
+
- when: react-query
|
|
471
|
+
suggest: [zod-validation]
|
|
472
|
+
reason: "Type-safe API responses with Zod"
|
|
473
|
+
|
|
474
|
+
# Mobile recommendations
|
|
475
|
+
- when: react-native
|
|
476
|
+
suggest: [zustand, react-query, react-hook-form, zod-validation]
|
|
477
|
+
reason: "React Native shares React ecosystem. Note: Use Jest for testing (Vitest doesn't support RN)."
|
|
478
|
+
|
|
479
|
+
# Observability recommendations
|
|
480
|
+
- when: axiom-pino-sentry
|
|
481
|
+
suggest: [posthog]
|
|
482
|
+
reason: "Complete observability with analytics"
|
|
483
|
+
|
|
484
|
+
# NOTE: Removed resend recommends [react] - Resend works with plain HTML/text, React Email is optional
|
|
485
|
+
|
|
486
|
+
# Fastify recommendations
|
|
487
|
+
- when: fastify
|
|
488
|
+
suggest: [drizzle, zod-validation]
|
|
489
|
+
reason: "Fastify + Drizzle + Zod is a solid backend stack"
|
|
490
|
+
|
|
491
|
+
# Express recommendations
|
|
492
|
+
- when: express
|
|
493
|
+
suggest: [prisma]
|
|
494
|
+
reason: "Express + Prisma is a classic combination"
|
|
495
|
+
|
|
496
|
+
# Nuxt recommendations
|
|
497
|
+
- when: nuxt
|
|
498
|
+
suggest: [pinia, tailwind, playwright-e2e]
|
|
499
|
+
reason: "Nuxt ecosystem libraries"
|
|
500
|
+
|
|
501
|
+
# MSW recommendations
|
|
502
|
+
- when: msw
|
|
503
|
+
suggest: [vitest, react-testing-library]
|
|
504
|
+
reason: "MSW + Vitest + RTL is the modern testing stack"
|
|
505
|
+
|
|
506
|
+
# Cypress recommendations
|
|
507
|
+
- when: cypress-e2e
|
|
508
|
+
suggest: [vitest]
|
|
509
|
+
reason: "Cypress for E2E, Vitest for unit tests"
|
|
510
|
+
|
|
511
|
+
# CLI recommendations
|
|
512
|
+
- when: oclif
|
|
513
|
+
suggest: [ink, vitest]
|
|
514
|
+
reason: "oclif + Ink is a powerful combo for rich CLI UIs"
|
|
515
|
+
|
|
516
|
+
- when: commander
|
|
517
|
+
suggest: [clack, vitest]
|
|
518
|
+
reason: "Commander + Clack is lightweight and elegant"
|
|
519
|
+
|
|
520
|
+
- when: yargs
|
|
521
|
+
suggest: [inquirer, vitest]
|
|
522
|
+
reason: "Yargs + Inquirer is a classic CLI combination"
|
|
523
|
+
|
|
524
|
+
# ─────────────────────────────────────────────────────────────────
|
|
525
|
+
# REQUIRES (Hard dependencies - A requires B to be selected first)
|
|
526
|
+
# ─────────────────────────────────────────────────────────────────
|
|
527
|
+
requires:
|
|
528
|
+
# React-specific libraries (note: these libraries have vanilla/other-framework options, but our skills teach React patterns)
|
|
529
|
+
- skill: zustand
|
|
530
|
+
needs: [react, react-native]
|
|
531
|
+
needs_any: true
|
|
532
|
+
reason: "Our Zustand skill covers React/React Native patterns (zustand/vanilla exists for other frameworks)"
|
|
533
|
+
|
|
534
|
+
- skill: redux-toolkit
|
|
535
|
+
needs: [react, react-native]
|
|
536
|
+
needs_any: true
|
|
537
|
+
reason: "Our Redux Toolkit skill covers React/React Native patterns (RTK core is framework-agnostic)"
|
|
538
|
+
|
|
539
|
+
- skill: mobx
|
|
540
|
+
needs: [react]
|
|
541
|
+
reason: "Our MobX skill teaches React patterns. Note: MobX core has official Vue (mobx-vue) and Angular (mobx-angular) bindings."
|
|
542
|
+
|
|
543
|
+
- skill: react-query
|
|
544
|
+
needs: [react, react-native]
|
|
545
|
+
needs_any: true
|
|
546
|
+
reason: "TanStack Query's React adapter. Note: TanStack Query also supports Vue, Solid, Svelte via separate adapters."
|
|
547
|
+
|
|
548
|
+
- skill: swr
|
|
549
|
+
needs: [react, react-native]
|
|
550
|
+
needs_any: true
|
|
551
|
+
reason: "SWR is a React Hooks library. For React Native, requires @nandorojo/swr-react-native wrapper."
|
|
552
|
+
|
|
553
|
+
- skill: react-hook-form
|
|
554
|
+
needs: [react, react-native]
|
|
555
|
+
needs_any: true
|
|
556
|
+
reason: "React Hook Form is React only"
|
|
557
|
+
|
|
558
|
+
- skill: react-testing-library
|
|
559
|
+
needs: [react]
|
|
560
|
+
reason: "React Testing Library is React only"
|
|
561
|
+
|
|
562
|
+
# Vue-specific libraries
|
|
563
|
+
- skill: pinia
|
|
564
|
+
needs: [vue]
|
|
565
|
+
reason: "Pinia is Vue only"
|
|
566
|
+
|
|
567
|
+
- skill: vee-validate
|
|
568
|
+
needs: [vue]
|
|
569
|
+
reason: "VeeValidate is Vue only"
|
|
570
|
+
|
|
571
|
+
- skill: vue-test-utils
|
|
572
|
+
needs: [vue]
|
|
573
|
+
reason: "Vue Test Utils is Vue only"
|
|
574
|
+
|
|
575
|
+
# Angular-specific libraries
|
|
576
|
+
- skill: ngrx-signalstore
|
|
577
|
+
needs: [angular]
|
|
578
|
+
reason: "NgRx SignalStore is Angular only"
|
|
579
|
+
|
|
580
|
+
# Next.js specific
|
|
581
|
+
- skill: nextjs-app-router
|
|
582
|
+
needs: [react]
|
|
583
|
+
reason: "Next.js is built on React"
|
|
584
|
+
|
|
585
|
+
# Remix specific
|
|
586
|
+
- skill: remix
|
|
587
|
+
needs: [react]
|
|
588
|
+
reason: "Remix is built on React"
|
|
589
|
+
|
|
590
|
+
# Backend dependencies
|
|
591
|
+
- skill: better-auth
|
|
592
|
+
needs: [drizzle, prisma]
|
|
593
|
+
needs_any: true
|
|
594
|
+
reason: "Better Auth supports multiple database adapters (Drizzle, Prisma, Kysely, MongoDB). Our skill uses Drizzle adapter."
|
|
595
|
+
|
|
596
|
+
# NOTE: Removed drizzle/prisma requires API framework - ORMs work standalone for scripts, CLI tools, workers, etc.
|
|
597
|
+
|
|
598
|
+
# UI component dependencies
|
|
599
|
+
- skill: shadcn-ui
|
|
600
|
+
needs: [react, tailwind]
|
|
601
|
+
reason: "shadcn/ui requires React and Tailwind"
|
|
602
|
+
|
|
603
|
+
# GraphQL clients need a framework
|
|
604
|
+
- skill: graphql-apollo
|
|
605
|
+
needs: [react, vue, angular]
|
|
606
|
+
needs_any: true
|
|
607
|
+
reason: "Apollo Client - first-party React support, community-maintained Vue/Angular integrations. Note: Svelte/Solid bindings exist but are stale (2020-2022)."
|
|
608
|
+
|
|
609
|
+
- skill: graphql-urql
|
|
610
|
+
needs: [react, vue, svelte, solidjs]
|
|
611
|
+
needs_any: true
|
|
612
|
+
reason: "URQL has first-party support for React, Vue, Svelte, and Solid (no Angular support)"
|
|
613
|
+
|
|
614
|
+
# ─────────────────────────────────────────────────────────────────
|
|
615
|
+
# ALTERNATIVES (Interchangeable options for same purpose)
|
|
616
|
+
# ─────────────────────────────────────────────────────────────────
|
|
617
|
+
alternatives:
|
|
618
|
+
- purpose: "Frontend Framework"
|
|
619
|
+
skills: [react, vue, angular, solidjs]
|
|
620
|
+
|
|
621
|
+
- purpose: "React Meta-Framework"
|
|
622
|
+
skills: [nextjs-app-router, remix]
|
|
623
|
+
|
|
624
|
+
- purpose: "Styling"
|
|
625
|
+
skills: [scss-modules, tailwind]
|
|
626
|
+
|
|
627
|
+
- purpose: "Client State (React)"
|
|
628
|
+
skills: [zustand, redux-toolkit, mobx, jotai]
|
|
629
|
+
|
|
630
|
+
- purpose: "Client State (Vue)"
|
|
631
|
+
skills: [pinia]
|
|
632
|
+
|
|
633
|
+
- purpose: "Client State (Angular)"
|
|
634
|
+
skills: [ngrx-signalstore]
|
|
635
|
+
|
|
636
|
+
- purpose: "Server State / Data Fetching"
|
|
637
|
+
skills: [react-query, swr]
|
|
638
|
+
|
|
639
|
+
- purpose: "GraphQL Client"
|
|
640
|
+
skills: [graphql-apollo, graphql-urql]
|
|
641
|
+
|
|
642
|
+
- purpose: "API Framework"
|
|
643
|
+
skills: [hono, express, fastify]
|
|
644
|
+
|
|
645
|
+
- purpose: "Database ORM"
|
|
646
|
+
skills: [drizzle, prisma]
|
|
647
|
+
|
|
648
|
+
- purpose: "Forms (React)"
|
|
649
|
+
skills: [react-hook-form]
|
|
650
|
+
|
|
651
|
+
- purpose: "Forms (Vue)"
|
|
652
|
+
skills: [vee-validate]
|
|
653
|
+
|
|
654
|
+
- purpose: "Validation"
|
|
655
|
+
skills: [zod-validation]
|
|
656
|
+
|
|
657
|
+
- purpose: "Unit Testing"
|
|
658
|
+
skills: [vitest]
|
|
659
|
+
|
|
660
|
+
- purpose: "Component Testing (React)"
|
|
661
|
+
skills: [react-testing-library]
|
|
662
|
+
|
|
663
|
+
- purpose: "Component Testing (Vue)"
|
|
664
|
+
skills: [vue-test-utils]
|
|
665
|
+
|
|
666
|
+
- purpose: "E2E Testing"
|
|
667
|
+
skills: [playwright-e2e, cypress-e2e]
|
|
668
|
+
|
|
669
|
+
- purpose: "API Mocking"
|
|
670
|
+
skills: [msw]
|
|
671
|
+
|
|
672
|
+
- purpose: "UI Components (React + Tailwind)"
|
|
673
|
+
skills: [shadcn-ui]
|
|
674
|
+
|
|
675
|
+
- purpose: "Mobile"
|
|
676
|
+
skills: [react-native]
|
|
677
|
+
|
|
678
|
+
- purpose: "CLI Framework"
|
|
679
|
+
skills: [commander, oclif, yargs]
|
|
680
|
+
|
|
681
|
+
- purpose: "CLI Prompts"
|
|
682
|
+
skills: [clack, inquirer, ink]
|
|
683
|
+
|
|
684
|
+
# =============================================================================
|
|
685
|
+
# Skill Aliases (Map short names to normalized skill IDs)
|
|
686
|
+
# =============================================================================
|
|
687
|
+
# Skill IDs are now in normalized kebab-case format:
|
|
688
|
+
# - No author suffix (author is metadata only)
|
|
689
|
+
# - Slashes replaced with dashes
|
|
690
|
+
# - Plus signs replaced with dashes
|
|
691
|
+
# - Lowercase
|
|
692
|
+
# =============================================================================
|
|
693
|
+
|
|
694
|
+
skill_aliases:
|
|
695
|
+
# ─────────────────────────────────────────────────────────────────
|
|
696
|
+
# Frameworks - normalized skill IDs
|
|
697
|
+
# ─────────────────────────────────────────────────────────────────
|
|
698
|
+
react: "web-framework-react"
|
|
699
|
+
vue: "web-framework-vue-composition-api"
|
|
700
|
+
angular: "web-framework-angular-standalone"
|
|
701
|
+
solidjs: "web-framework-solidjs"
|
|
702
|
+
|
|
703
|
+
# Meta-frameworks
|
|
704
|
+
nextjs-app-router: "web-framework-nextjs-app-router"
|
|
705
|
+
nextjs-server-actions: "web-framework-nextjs-server-actions"
|
|
706
|
+
remix: "web-framework-remix"
|
|
707
|
+
nuxt: "web-framework-nuxt"
|
|
708
|
+
|
|
709
|
+
# ─────────────────────────────────────────────────────────────────
|
|
710
|
+
# Styling
|
|
711
|
+
# ─────────────────────────────────────────────────────────────────
|
|
712
|
+
scss-modules: "web-styling-scss-modules"
|
|
713
|
+
cva: "web-styling-cva"
|
|
714
|
+
# tailwind: skill not yet created
|
|
715
|
+
|
|
716
|
+
# ─────────────────────────────────────────────────────────────────
|
|
717
|
+
# Client State
|
|
718
|
+
# ─────────────────────────────────────────────────────────────────
|
|
719
|
+
zustand: "web-state-zustand"
|
|
720
|
+
redux-toolkit: "web-state-redux-toolkit"
|
|
721
|
+
pinia: "web-state-pinia"
|
|
722
|
+
ngrx-signalstore: "web-state-ngrx-signalstore"
|
|
723
|
+
jotai: "web-state-jotai"
|
|
724
|
+
# mobx: skill not yet created
|
|
725
|
+
|
|
726
|
+
# ─────────────────────────────────────────────────────────────────
|
|
727
|
+
# Server State / Data Fetching
|
|
728
|
+
# ─────────────────────────────────────────────────────────────────
|
|
729
|
+
react-query: "web-server-state-react-query"
|
|
730
|
+
swr: "web-data-fetching-swr"
|
|
731
|
+
graphql-apollo: "web-data-fetching-graphql-apollo"
|
|
732
|
+
graphql-urql: "web-data-fetching-graphql-urql"
|
|
733
|
+
trpc: "web-data-fetching-trpc"
|
|
734
|
+
|
|
735
|
+
# ─────────────────────────────────────────────────────────────────
|
|
736
|
+
# Forms & Validation
|
|
737
|
+
# ─────────────────────────────────────────────────────────────────
|
|
738
|
+
react-hook-form: "web-forms-react-hook-form"
|
|
739
|
+
vee-validate: "web-forms-vee-validate"
|
|
740
|
+
zod-validation: "web-forms-zod-validation"
|
|
741
|
+
|
|
742
|
+
# ─────────────────────────────────────────────────────────────────
|
|
743
|
+
# Testing
|
|
744
|
+
# ─────────────────────────────────────────────────────────────────
|
|
745
|
+
vitest: "web-testing-vitest"
|
|
746
|
+
playwright-e2e: "web-testing-playwright-e2e"
|
|
747
|
+
cypress-e2e: "web-testing-cypress-e2e"
|
|
748
|
+
react-testing-library: "web-testing-react-testing-library"
|
|
749
|
+
vue-test-utils: "web-testing-vue-test-utils"
|
|
750
|
+
msw: "web-mocks-msw"
|
|
751
|
+
|
|
752
|
+
# ─────────────────────────────────────────────────────────────────
|
|
753
|
+
# UI Components
|
|
754
|
+
# ─────────────────────────────────────────────────────────────────
|
|
755
|
+
shadcn-ui: "web-ui-shadcn-ui"
|
|
756
|
+
tanstack-table: "web-ui-tanstack-table"
|
|
757
|
+
radix-ui: "web-ui-radix-ui"
|
|
758
|
+
|
|
759
|
+
# ─────────────────────────────────────────────────────────────────
|
|
760
|
+
# Backend - API Framework
|
|
761
|
+
# ─────────────────────────────────────────────────────────────────
|
|
762
|
+
hono: "api-framework-hono"
|
|
763
|
+
express: "api-framework-express"
|
|
764
|
+
fastify: "api-framework-fastify"
|
|
765
|
+
|
|
766
|
+
# Backend - Database
|
|
767
|
+
drizzle: "api-database-drizzle"
|
|
768
|
+
prisma: "api-database-prisma"
|
|
769
|
+
|
|
770
|
+
# Backend - Auth (composite skill)
|
|
771
|
+
better-auth: "api-auth-better-auth-drizzle-hono"
|
|
772
|
+
|
|
773
|
+
# Backend - Observability (composite skill)
|
|
774
|
+
axiom-pino-sentry: "api-observability-axiom-pino-sentry"
|
|
775
|
+
|
|
776
|
+
# Backend - Analytics
|
|
777
|
+
posthog: "api-analytics-posthog-analytics"
|
|
778
|
+
posthog-flags: "api-flags-posthog-flags"
|
|
779
|
+
|
|
780
|
+
# Backend - Email (composite skill)
|
|
781
|
+
resend: "api-email-resend-react-email"
|
|
782
|
+
|
|
783
|
+
# Backend - CI/CD
|
|
784
|
+
github-actions: "api-ci-cd-github-actions"
|
|
785
|
+
|
|
786
|
+
# ─────────────────────────────────────────────────────────────────
|
|
787
|
+
# Mobile
|
|
788
|
+
# ─────────────────────────────────────────────────────────────────
|
|
789
|
+
react-native: "mobile-framework-react-native"
|
|
790
|
+
expo: "mobile-framework-expo"
|
|
791
|
+
|
|
792
|
+
# ─────────────────────────────────────────────────────────────────
|
|
793
|
+
# Setup / Infrastructure
|
|
794
|
+
# ─────────────────────────────────────────────────────────────────
|
|
795
|
+
turborepo: "infra-monorepo-turborepo"
|
|
796
|
+
tooling: "infra-tooling-setup-tooling"
|
|
797
|
+
posthog-setup: "api-analytics-setup-posthog"
|
|
798
|
+
env: "infra-env-setup-env"
|
|
799
|
+
observability-setup: "api-observability-setup-axiom-pino-sentry"
|
|
800
|
+
email-setup: "api-email-setup-resend"
|
|
801
|
+
|
|
802
|
+
# ─────────────────────────────────────────────────────────────────
|
|
803
|
+
# Additional Skills (Animation, PWA, Realtime, etc.)
|
|
804
|
+
# ─────────────────────────────────────────────────────────────────
|
|
805
|
+
framer-motion: "web-animation-framer-motion"
|
|
806
|
+
css-animations: "web-animation-css-animations"
|
|
807
|
+
view-transitions: "web-animation-view-transitions"
|
|
808
|
+
storybook: "web-tooling-storybook"
|
|
809
|
+
error-boundaries: "web-error-handling-error-boundaries"
|
|
810
|
+
accessibility: "web-accessibility-web-accessibility"
|
|
811
|
+
websockets: "web-realtime-websockets"
|
|
812
|
+
sse: "web-realtime-sse"
|
|
813
|
+
socket-io: "web-realtime-socket-io"
|
|
814
|
+
service-workers: "web-pwa-service-workers"
|
|
815
|
+
file-upload: "web-files-file-upload-patterns"
|
|
816
|
+
image-handling: "web-files-image-handling"
|
|
817
|
+
date-fns: "web-utilities-date-fns"
|
|
818
|
+
|
|
819
|
+
# ─────────────────────────────────────────────────────────────────
|
|
820
|
+
# Backend-specific category skills
|
|
821
|
+
# ─────────────────────────────────────────────────────────────────
|
|
822
|
+
backend-testing: "api-testing-api-testing"
|
|
823
|
+
backend-performance: "api-performance-api-performance"
|
|
824
|
+
frontend-performance: "web-performance-web-performance"
|
|
825
|
+
|
|
826
|
+
# Security
|
|
827
|
+
security: "security-auth-security"
|
|
828
|
+
|
|
829
|
+
# ─────────────────────────────────────────────────────────────────
|
|
830
|
+
# CLI
|
|
831
|
+
# ─────────────────────────────────────────────────────────────────
|
|
832
|
+
# CLI Framework
|
|
833
|
+
commander: "cli-framework-cli-commander"
|
|
834
|
+
cli-commander: "cli-framework-cli-commander"
|
|
835
|
+
oclif: "cli-framework-cli-oclif"
|
|
836
|
+
yargs: "cli-framework-cli-yargs"
|
|
837
|
+
|
|
838
|
+
# CLI Prompts
|
|
839
|
+
clack: "cli-prompts-cli-clack"
|
|
840
|
+
inquirer: "cli-prompts-cli-inquirer"
|
|
841
|
+
ink: "cli-prompts-cli-ink"
|
|
842
|
+
|
|
843
|
+
# ─────────────────────────────────────────────────────────────────
|
|
844
|
+
# Reviewing / Meta
|
|
845
|
+
# ─────────────────────────────────────────────────────────────────
|
|
846
|
+
reviewing: "meta-reviewing-reviewing"
|
|
847
|
+
cli-reviewing: "meta-reviewing-cli-reviewing"
|
|
848
|
+
research-methodology: "meta-research-research-methodology"
|
|
849
|
+
|
|
850
|
+
# ─────────────────────────────────────────────────────────────────
|
|
851
|
+
# Methodology (Universal principles + Implementation + Extended session)
|
|
852
|
+
# ─────────────────────────────────────────────────────────────────
|
|
853
|
+
investigation-requirements: "meta-methodology-investigation-requirements"
|
|
854
|
+
anti-over-engineering: "meta-methodology-anti-over-engineering"
|
|
855
|
+
success-criteria: "meta-methodology-success-criteria"
|
|
856
|
+
write-verification: "meta-methodology-write-verification"
|
|
857
|
+
improvement-protocol: "meta-methodology-improvement-protocol"
|
|
858
|
+
context-management: "meta-methodology-context-management"
|