@phuc1403/musketeer 0.7.0 → 0.9.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 (84) hide show
  1. package/README.md +49 -49
  2. package/manifest.json +333 -301
  3. package/package.json +1 -1
  4. package/template/.claude/agents/code-reviewer.md +182 -166
  5. package/template/.claude/hooks/git-skill-reminder.cjs +53 -0
  6. package/template/.claude/hooks/inject-design-docs.cjs +13 -13
  7. package/template/.claude/hooks/inject-ubiquitous-language.cjs +52 -0
  8. package/template/.claude/hooks/lib/colors.cjs +180 -122
  9. package/template/.claude/hooks/lib/transcript-parser.cjs +300 -277
  10. package/template/.claude/skills/code-review/SKILL.md +201 -54
  11. package/template/.claude/skills/code-review/references/checklist-workflow.md +96 -0
  12. package/template/.claude/skills/code-review/references/checklists/api.md +52 -52
  13. package/template/.claude/skills/code-review/references/checklists/base.md +100 -100
  14. package/template/.claude/skills/code-review/references/checklists/web-app.md +54 -54
  15. package/template/.claude/skills/code-review/references/code-review-reception.md +113 -0
  16. package/template/.claude/skills/code-review/references/codebase-scan-workflow.md +30 -0
  17. package/template/.claude/skills/code-review/references/edge-case-scouting.md +119 -0
  18. package/template/.claude/skills/code-review/references/input-mode-resolution.md +135 -0
  19. package/template/.claude/skills/code-review/references/parallel-review-workflow.md +76 -0
  20. package/template/.claude/skills/code-review/references/requesting-code-review.md +116 -0
  21. package/template/.claude/skills/code-review/references/spec-compliance-review.md +43 -0
  22. package/template/.claude/skills/code-review/references/task-management-reviews.md +140 -0
  23. package/template/.claude/skills/code-review/references/verification-before-completion.md +139 -0
  24. package/template/.claude/skills/context-map/SKILL.md +1 -1
  25. package/template/.claude/skills/git/SKILL.md +131 -115
  26. package/template/.claude/skills/git/references/branch-management.md +88 -88
  27. package/template/.claude/skills/git/references/commit-standards.md +46 -46
  28. package/template/.claude/skills/git/references/context-efficiency.md +54 -0
  29. package/template/.claude/skills/git/references/gh-cli-guide.md +109 -109
  30. package/template/.claude/skills/git/references/safety-protocols.md +69 -69
  31. package/template/.claude/skills/git/references/workflow-commit.md +58 -58
  32. package/template/.claude/skills/git/references/workflow-merge-pr.md +136 -0
  33. package/template/.claude/skills/git/references/workflow-merge.md +48 -48
  34. package/template/.claude/skills/git/references/workflow-pr.md +58 -58
  35. package/template/.claude/skills/git/references/workflow-push.md +52 -52
  36. package/template/.claude/skills/knowledge-crunching/SKILL.md +56 -92
  37. package/template/.claude/skills/knowledge-crunching/assets/ubiquitous-language.template.md +3 -0
  38. package/template/.claude/skills/skill-creator/LICENSE.txt +201 -201
  39. package/template/.claude/skills/skill-creator/SKILL.md +154 -149
  40. package/template/.claude/skills/skill-creator/agents/analyzer.md +274 -274
  41. package/template/.claude/skills/skill-creator/agents/comparator.md +202 -202
  42. package/template/.claude/skills/skill-creator/agents/grader.md +223 -223
  43. package/template/.claude/skills/skill-creator/assets/eval_review.html +146 -146
  44. package/template/.claude/skills/skill-creator/eval-viewer/generate_review.py +471 -471
  45. package/template/.claude/skills/skill-creator/eval-viewer/viewer.html +1325 -1325
  46. package/template/.claude/skills/skill-creator/references/benchmark-optimization-guide.md +86 -86
  47. package/template/.claude/skills/skill-creator/references/distribution-guide.md +79 -79
  48. package/template/.claude/skills/skill-creator/references/eval-infrastructure-guide.md +129 -129
  49. package/template/.claude/skills/skill-creator/references/eval-schemas.md +121 -121
  50. package/template/.claude/skills/skill-creator/references/mcp-skills-integration.md +71 -71
  51. package/template/.claude/skills/skill-creator/references/metadata-quality-criteria.md +94 -94
  52. package/template/.claude/skills/skill-creator/references/plugin-marketplace-hosting.md +104 -104
  53. package/template/.claude/skills/skill-creator/references/plugin-marketplace-overview.md +89 -89
  54. package/template/.claude/skills/skill-creator/references/plugin-marketplace-schema.md +93 -93
  55. package/template/.claude/skills/skill-creator/references/plugin-marketplace-sources.md +103 -103
  56. package/template/.claude/skills/skill-creator/references/plugin-marketplace-troubleshooting.md +76 -76
  57. package/template/.claude/skills/skill-creator/references/script-quality-criteria.md +106 -106
  58. package/template/.claude/skills/skill-creator/references/skill-anatomy-and-requirements.md +77 -77
  59. package/template/.claude/skills/skill-creator/references/skill-creation-workflow.md +152 -151
  60. package/template/.claude/skills/skill-creator/references/skill-design-patterns.md +75 -75
  61. package/template/.claude/skills/skill-creator/references/skillmark-benchmark-criteria.md +102 -102
  62. package/template/.claude/skills/skill-creator/references/structure-organization-criteria.md +114 -114
  63. package/template/.claude/skills/skill-creator/references/testing-and-iteration.md +78 -78
  64. package/template/.claude/skills/skill-creator/references/token-efficiency-criteria.md +74 -74
  65. package/template/.claude/skills/skill-creator/references/troubleshooting-guide.md +81 -81
  66. package/template/.claude/skills/skill-creator/references/validation-checklist.md +83 -83
  67. package/template/.claude/skills/skill-creator/references/writing-effective-instructions.md +88 -88
  68. package/template/.claude/skills/skill-creator/references/yaml-frontmatter-reference.md +92 -92
  69. package/template/.claude/skills/skill-creator/scripts/aggregate_benchmark.py +401 -401
  70. package/template/.claude/skills/skill-creator/scripts/encoding_utils.py +36 -36
  71. package/template/.claude/skills/skill-creator/scripts/generate_report.py +326 -326
  72. package/template/.claude/skills/skill-creator/scripts/improve_description.py +248 -248
  73. package/template/.claude/skills/skill-creator/scripts/init_skill.py +360 -360
  74. package/template/.claude/skills/skill-creator/scripts/package_skill.py +143 -143
  75. package/template/.claude/skills/skill-creator/scripts/quick_validate.py +110 -110
  76. package/template/.claude/skills/skill-creator/scripts/run_eval.py +310 -310
  77. package/template/.claude/skills/skill-creator/scripts/run_loop.py +332 -332
  78. package/template/.claude/skills/skill-creator/scripts/utils.py +47 -47
  79. package/template/.claude/statusline.cjs +0 -0
  80. package/template/.claude/hooks/inject-context.cjs +0 -52
  81. package/template/.claude/skills/code-review/references/adversarial-review.md +0 -223
  82. package/template/.claude/skills/knowledge-crunching/assets/context.template.md +0 -59
  83. package/template/.claude/skills/knowledge-crunching/references/crunching-dialogue.md +0 -113
  84. /package/template/.claude/hooks/{usage-context-awareness.cjs → usage-quota-cache-refresh.cjs} +0 -0
package/manifest.json CHANGED
@@ -1,301 +1,333 @@
1
- {
2
- "version": 1,
3
- "musketeers": {
4
- "core": {
5
- "label": "core",
6
- "description": "Always-on foundation: research, handoff, skill-creator, git (+ git-manager) + statusline, usage-context & format-json hooks.",
7
- "locked": true,
8
- "deps": [],
9
- "files": [
10
- "skills/research/**",
11
- "skills/handoff/**",
12
- "skills/skill-creator/**",
13
- "skills/git/**",
14
- "skills/install.ps1",
15
- "skills/install.sh",
16
- "agents/researcher.md",
17
- "agents/git-manager.md",
18
- "statusline.cjs",
19
- "hooks/usage-context-awareness.cjs",
20
- "hooks/lib/**",
21
- "hooks/format-json-hook.js"
22
- ],
23
- "settings": [
24
- {
25
- "event": "statusLine",
26
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/statusline.cjs\"",
27
- "padding": 0
28
- },
29
- {
30
- "event": "UserPromptSubmit",
31
- "matcher": null,
32
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/usage-context-awareness.cjs\"",
33
- "order": 1
34
- },
35
- {
36
- "event": "PostToolUse",
37
- "matcher": null,
38
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/usage-context-awareness.cjs\"",
39
- "order": 1
40
- },
41
- {
42
- "event": "PostToolUse",
43
- "matcher": "Write|Edit|MultiEdit",
44
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/format-json-hook.js\"",
45
- "order": 2
46
- }
47
- ],
48
- "prereqs": ["node", "git", "gh", "python", "venv-anthropic", "claude-cli"]
49
- },
50
- "architecture": {
51
- "label": "architecture",
52
- "description": "DDD architecture authoring: adr-writer, architecture-characteristic-writer, context-map (CML) + validation hook.",
53
- "locked": false,
54
- "deps": [],
55
- "files": [
56
- "skills/adr-writer/**",
57
- "skills/architecture-characteristic-writer/**",
58
- "skills/context-map/**",
59
- "hooks/validate-cml-hook.js",
60
- "hooks/validate-characteristics-hook.cjs",
61
- "hooks/lib/characteristics/**",
62
- "hooks/lib/adr/**",
63
- "hooks/sync-adr-toc.cjs",
64
- "hooks/warn-missing-characteristics.cjs",
65
- "hooks/block-unsafe-adr-title.cjs",
66
- "hooks/init-adr-dir.cjs",
67
- "hooks/inject-adr-flags.cjs"
68
- ],
69
- "settings": [
70
- {
71
- "event": "PostToolUse",
72
- "matcher": "Write|Edit|MultiEdit",
73
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/validate-cml-hook.js\"",
74
- "order": 1
75
- },
76
- {
77
- "event": "PostToolUse",
78
- "matcher": "Write|Edit|MultiEdit",
79
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/validate-characteristics-hook.cjs\"",
80
- "order": 2,
81
- "statusMessage": "Checking architecture characteristics"
82
- },
83
- {
84
- "event": "PostToolUse",
85
- "matcher": "Bash",
86
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/sync-adr-toc.cjs\"",
87
- "order": 2,
88
- "statusMessage": "Syncing ADR index"
89
- },
90
- {
91
- "event": "PreToolUse",
92
- "matcher": "Bash",
93
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/inject-adr-flags.cjs\"",
94
- "order": 3,
95
- "statusMessage": "Adding -q to adr new"
96
- },
97
- {
98
- "event": "PreToolUse",
99
- "matcher": "Bash",
100
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/warn-missing-characteristics.cjs\"",
101
- "order": 4
102
- },
103
- {
104
- "event": "PreToolUse",
105
- "matcher": "Bash",
106
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/block-unsafe-adr-title.cjs\"",
107
- "order": 5,
108
- "statusMessage": "Checking ADR title safety"
109
- },
110
- {
111
- "event": "PreToolUse",
112
- "matcher": "Bash",
113
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/init-adr-dir.cjs\"",
114
- "order": 6,
115
- "statusMessage": "Checking ADR directory setup"
116
- }
117
- ],
118
- "prereqs": ["java", "cm-cli", "adr-tools"]
119
- },
120
- "hallmark": {
121
- "label": "hallmark",
122
- "description": "Hallmark design system: hallmark rubric, hallmark-explore, hallmark-loop + auditor/explorer agents.",
123
- "locked": false,
124
- "deps": [],
125
- "files": [
126
- "skills/hallmark/**",
127
- "skills/hallmark-explore/**",
128
- "skills/hallmark-loop/**",
129
- "agents/hallmark-auditor.md",
130
- "agents/hallmark-explorer.md"
131
- ],
132
- "settings": [],
133
- "prereqs": ["python", "playwright-mcp"]
134
- },
135
- "code-review": {
136
- "label": "code-review",
137
- "description": "Adversarial code review skill + code-reviewer agent (commit / pending / PR modes).",
138
- "locked": false,
139
- "deps": [],
140
- "files": [
141
- "skills/code-review/**",
142
- "agents/code-reviewer.md"
143
- ],
144
- "settings": [],
145
- "prereqs": ["git", "gh"]
146
- },
147
- "dotnet": {
148
- "label": "dotnet",
149
- "description": ".NET extras: tdd, knowledge-crunching + EF migration-guard & CONTEXT auto-load hooks. Muster also always merges 4 quality-gate MSBuild properties into root Directory.Build.props (any dotnet-selected project, set MUSKETEER_SKIP_DOTNET_PROPS=1 to skip) and scaffolds a generic src/tests Clean Architecture skeleton when the project is genuinely blank.",
150
- "locked": false,
151
- "deps": [],
152
- "files": [
153
- "skills/tdd/**",
154
- "skills/knowledge-crunching/**",
155
- "hooks/block-migration-edits.cjs",
156
- "hooks/inject-context.cjs"
157
- ],
158
- "settings": [
159
- {
160
- "event": "PreToolUse",
161
- "matcher": "Write|Edit|MultiEdit",
162
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/block-migration-edits.cjs\"",
163
- "order": 1,
164
- "statusMessage": "Checking for EF migration edits"
165
- },
166
- {
167
- "event": "SessionStart",
168
- "matcher": "startup|resume|clear|compact",
169
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/inject-context.cjs\"",
170
- "order": 1,
171
- "statusMessage": "Loading domain CONTEXT"
172
- }
173
- ],
174
- "prereqs": []
175
- },
176
- "design-docs": {
177
- "label": "design-docs",
178
- "description": "SessionStart hook that injects architecture/context-map/adr docs/ outputs into context.",
179
- "locked": false,
180
- "deps": [],
181
- "files": [
182
- "hooks/inject-design-docs.cjs"
183
- ],
184
- "settings": [
185
- {
186
- "event": "SessionStart",
187
- "matcher": "startup|resume|clear|compact",
188
- "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/inject-design-docs.cjs\"",
189
- "order": 1,
190
- "statusMessage": "Injecting design artifacts"
191
- }
192
- ],
193
- "prereqs": []
194
- }
195
- },
196
- "prereqs": {
197
- "node": {
198
- "detect": "node --version",
199
- "minVersion": "18",
200
- "kind": "package",
201
- "install": {
202
- "win": "winget install -e --id OpenJS.NodeJS.LTS",
203
- "mac": "brew install node",
204
- "linux": {
205
- "apt": "sudo apt-get install -y nodejs npm",
206
- "dnf": "sudo dnf install -y nodejs",
207
- "pacman": "sudo pacman -S --noconfirm nodejs npm"
208
- }
209
- }
210
- },
211
- "git": {
212
- "detect": "git --version",
213
- "kind": "package",
214
- "install": {
215
- "win": "winget install -e --id Git.Git",
216
- "mac": "brew install git",
217
- "linux": {
218
- "apt": "sudo apt-get install -y git",
219
- "dnf": "sudo dnf install -y git",
220
- "pacman": "sudo pacman -S --noconfirm git"
221
- }
222
- }
223
- },
224
- "python": {
225
- "detect": "python --version",
226
- "minVersion": "3.8",
227
- "kind": "package",
228
- "install": {
229
- "win": "winget install -e --id Python.Python.3.12",
230
- "mac": "brew install python@3.12",
231
- "linux": {
232
- "apt": "sudo apt-get install -y python3 python3-pip python3-venv",
233
- "dnf": "sudo dnf install -y python3 python3-pip",
234
- "pacman": "sudo pacman -S --noconfirm python python-pip"
235
- }
236
- }
237
- },
238
- "venv-anthropic": {
239
- "kind": "venv",
240
- "needs": ["python"]
241
- },
242
- "claude-cli": {
243
- "detect": "claude --version",
244
- "kind": "package",
245
- "install": {
246
- "win": "powershell -NoProfile -Command \"irm https://claude.ai/install.ps1 | iex\"",
247
- "mac": "brew install --cask claude-code",
248
- "linux": "curl -fsSL https://claude.ai/install.sh | bash"
249
- }
250
- },
251
- "java": {
252
- "detect": "java -version",
253
- "minVersion": "8",
254
- "kind": "package",
255
- "install": {
256
- "win": "winget install -e --id Microsoft.OpenJDK.17",
257
- "mac": "brew install --cask temurin",
258
- "linux": {
259
- "apt": "sudo apt-get install -y openjdk-17-jdk",
260
- "dnf": "sudo dnf install -y java-17-openjdk",
261
- "pacman": "sudo pacman -S --noconfirm jdk-openjdk"
262
- }
263
- }
264
- },
265
- "cm-cli": {
266
- "kind": "note",
267
- "needs": ["java"]
268
- },
269
- "adr-tools": {
270
- "detect": "adr --version",
271
- "minVersion": "2",
272
- "kind": "package",
273
- "install": {
274
- "win": "npm install -g @meza/adr-tools@2",
275
- "mac": "npm install -g @meza/adr-tools@2",
276
- "linux": "npm install -g @meza/adr-tools@2"
277
- }
278
- },
279
- "gh": {
280
- "detect": "gh --version",
281
- "kind": "package",
282
- "install": {
283
- "win": "winget install -e --id GitHub.cli",
284
- "mac": "brew install gh",
285
- "linux": {
286
- "apt": "sudo apt-get install -y gh",
287
- "dnf": "sudo dnf install -y gh",
288
- "pacman": "sudo pacman -S --noconfirm github-cli"
289
- }
290
- }
291
- },
292
- "playwright-mcp": {
293
- "kind": "mcp",
294
- "needs": ["node", "claude-cli"]
295
- },
296
- "anthropic-api-key": {
297
- "kind": "secret",
298
- "guideOnly": true
299
- }
300
- }
301
- }
1
+ {
2
+ "version": 1,
3
+ "musketeers": {
4
+ "core": {
5
+ "label": "core",
6
+ "description": "Always-on foundation: research, handoff, skill-creator, git (+ git-manager, auto-loaded on git commands) + statusline, usage-quota & format-json hooks.",
7
+ "locked": true,
8
+ "deps": [],
9
+ "files": [
10
+ "skills/research/**",
11
+ "skills/handoff/**",
12
+ "skills/skill-creator/**",
13
+ "skills/git/**",
14
+ "skills/install.ps1",
15
+ "skills/install.sh",
16
+ "agents/researcher.md",
17
+ "agents/git-manager.md",
18
+ "hooks/git-skill-reminder.cjs",
19
+ "statusline.cjs",
20
+ "hooks/usage-quota-cache-refresh.cjs",
21
+ "hooks/lib/**",
22
+ "hooks/format-json-hook.js"
23
+ ],
24
+ "settings": [
25
+ {
26
+ "event": "statusLine",
27
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/statusline.cjs\"",
28
+ "padding": 0
29
+ },
30
+ {
31
+ "event": "UserPromptSubmit",
32
+ "matcher": null,
33
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/usage-quota-cache-refresh.cjs\"",
34
+ "order": 1
35
+ },
36
+ {
37
+ "event": "PostToolUse",
38
+ "matcher": null,
39
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/usage-quota-cache-refresh.cjs\"",
40
+ "order": 1
41
+ },
42
+ {
43
+ "event": "PostToolUse",
44
+ "matcher": "Write|Edit|MultiEdit",
45
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/format-json-hook.js\"",
46
+ "order": 2
47
+ },
48
+ {
49
+ "event": "PreToolUse",
50
+ "matcher": "Bash",
51
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/git-skill-reminder.cjs\"",
52
+ "order": 1,
53
+ "statusMessage": "Loading git skill"
54
+ }
55
+ ],
56
+ "prereqs": [
57
+ "node",
58
+ "git",
59
+ "gh",
60
+ "python",
61
+ "venv-anthropic",
62
+ "claude-cli"
63
+ ]
64
+ },
65
+ "architecture": {
66
+ "label": "architecture",
67
+ "description": "DDD architecture authoring: adr-writer, architecture-characteristic-writer, context-map (CML) + validation hook.",
68
+ "locked": false,
69
+ "deps": [],
70
+ "files": [
71
+ "skills/adr-writer/**",
72
+ "skills/architecture-characteristic-writer/**",
73
+ "skills/context-map/**",
74
+ "hooks/validate-cml-hook.js",
75
+ "hooks/validate-characteristics-hook.cjs",
76
+ "hooks/lib/characteristics/**",
77
+ "hooks/lib/adr/**",
78
+ "hooks/sync-adr-toc.cjs",
79
+ "hooks/warn-missing-characteristics.cjs",
80
+ "hooks/block-unsafe-adr-title.cjs",
81
+ "hooks/init-adr-dir.cjs",
82
+ "hooks/inject-adr-flags.cjs"
83
+ ],
84
+ "settings": [
85
+ {
86
+ "event": "PostToolUse",
87
+ "matcher": "Write|Edit|MultiEdit",
88
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/validate-cml-hook.js\"",
89
+ "order": 1
90
+ },
91
+ {
92
+ "event": "PostToolUse",
93
+ "matcher": "Write|Edit|MultiEdit",
94
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/validate-characteristics-hook.cjs\"",
95
+ "order": 2,
96
+ "statusMessage": "Checking architecture characteristics"
97
+ },
98
+ {
99
+ "event": "PostToolUse",
100
+ "matcher": "Bash",
101
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/sync-adr-toc.cjs\"",
102
+ "order": 2,
103
+ "statusMessage": "Syncing ADR index"
104
+ },
105
+ {
106
+ "event": "PreToolUse",
107
+ "matcher": "Bash",
108
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/inject-adr-flags.cjs\"",
109
+ "order": 3,
110
+ "statusMessage": "Adding -q to adr new"
111
+ },
112
+ {
113
+ "event": "PreToolUse",
114
+ "matcher": "Bash",
115
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/warn-missing-characteristics.cjs\"",
116
+ "order": 4
117
+ },
118
+ {
119
+ "event": "PreToolUse",
120
+ "matcher": "Bash",
121
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/block-unsafe-adr-title.cjs\"",
122
+ "order": 5,
123
+ "statusMessage": "Checking ADR title safety"
124
+ },
125
+ {
126
+ "event": "PreToolUse",
127
+ "matcher": "Bash",
128
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/init-adr-dir.cjs\"",
129
+ "order": 6,
130
+ "statusMessage": "Checking ADR directory setup"
131
+ }
132
+ ],
133
+ "prereqs": [
134
+ "java",
135
+ "cm-cli",
136
+ "adr-tools"
137
+ ]
138
+ },
139
+ "hallmark": {
140
+ "label": "hallmark",
141
+ "description": "Hallmark design system: hallmark rubric, hallmark-explore, hallmark-loop + auditor/explorer agents.",
142
+ "locked": false,
143
+ "deps": [],
144
+ "files": [
145
+ "skills/hallmark/**",
146
+ "skills/hallmark-explore/**",
147
+ "skills/hallmark-loop/**",
148
+ "agents/hallmark-auditor.md",
149
+ "agents/hallmark-explorer.md"
150
+ ],
151
+ "settings": [],
152
+ "prereqs": [
153
+ "python",
154
+ "playwright-mcp"
155
+ ]
156
+ },
157
+ "code-review": {
158
+ "label": "code-review",
159
+ "description": "Evidence-based code review skill + code-reviewer agent (pending / commit / PR / codebase modes).",
160
+ "locked": false,
161
+ "deps": [],
162
+ "files": [
163
+ "skills/code-review/**",
164
+ "agents/code-reviewer.md"
165
+ ],
166
+ "settings": [],
167
+ "prereqs": [
168
+ "git",
169
+ "gh"
170
+ ]
171
+ },
172
+ "dotnet": {
173
+ "label": "dotnet",
174
+ "description": ".NET extras: tdd, knowledge-crunching + EF migration-guard & ubiquitous-language auto-load hooks. Muster also always merges 4 quality-gate MSBuild properties into root Directory.Build.props (any dotnet-selected project, set MUSKETEER_SKIP_DOTNET_PROPS=1 to skip) and scaffolds a generic src/tests Clean Architecture skeleton when the project is genuinely blank.",
175
+ "locked": false,
176
+ "deps": [],
177
+ "files": [
178
+ "skills/tdd/**",
179
+ "skills/knowledge-crunching/**",
180
+ "hooks/block-migration-edits.cjs",
181
+ "hooks/inject-ubiquitous-language.cjs"
182
+ ],
183
+ "settings": [
184
+ {
185
+ "event": "PreToolUse",
186
+ "matcher": "Write|Edit|MultiEdit",
187
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/block-migration-edits.cjs\"",
188
+ "order": 1,
189
+ "statusMessage": "Checking for EF migration edits"
190
+ },
191
+ {
192
+ "event": "SessionStart",
193
+ "matcher": "startup|resume|clear|compact",
194
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/inject-ubiquitous-language.cjs\"",
195
+ "order": 1,
196
+ "statusMessage": "Loading ubiquitous language"
197
+ }
198
+ ],
199
+ "prereqs": []
200
+ },
201
+ "design-docs": {
202
+ "label": "design-docs",
203
+ "description": "SessionStart hook that injects architecture/context-map/adr docs/ outputs into context.",
204
+ "locked": false,
205
+ "deps": [],
206
+ "files": [
207
+ "hooks/inject-design-docs.cjs"
208
+ ],
209
+ "settings": [
210
+ {
211
+ "event": "SessionStart",
212
+ "matcher": "startup|resume|clear|compact",
213
+ "command": "node \"${CLAUDE_PROJECT_DIR}/.claude/hooks/inject-design-docs.cjs\"",
214
+ "order": 1,
215
+ "statusMessage": "Injecting design artifacts"
216
+ }
217
+ ],
218
+ "prereqs": []
219
+ }
220
+ },
221
+ "prereqs": {
222
+ "node": {
223
+ "detect": "node --version",
224
+ "minVersion": "18",
225
+ "kind": "package",
226
+ "install": {
227
+ "win": "winget install -e --id OpenJS.NodeJS.LTS",
228
+ "mac": "brew install node",
229
+ "linux": {
230
+ "apt": "sudo apt-get install -y nodejs npm",
231
+ "dnf": "sudo dnf install -y nodejs",
232
+ "pacman": "sudo pacman -S --noconfirm nodejs npm"
233
+ }
234
+ }
235
+ },
236
+ "git": {
237
+ "detect": "git --version",
238
+ "kind": "package",
239
+ "install": {
240
+ "win": "winget install -e --id Git.Git",
241
+ "mac": "brew install git",
242
+ "linux": {
243
+ "apt": "sudo apt-get install -y git",
244
+ "dnf": "sudo dnf install -y git",
245
+ "pacman": "sudo pacman -S --noconfirm git"
246
+ }
247
+ }
248
+ },
249
+ "python": {
250
+ "detect": "python --version",
251
+ "minVersion": "3.8",
252
+ "kind": "package",
253
+ "install": {
254
+ "win": "winget install -e --id Python.Python.3.12",
255
+ "mac": "brew install python@3.12",
256
+ "linux": {
257
+ "apt": "sudo apt-get install -y python3 python3-pip python3-venv",
258
+ "dnf": "sudo dnf install -y python3 python3-pip",
259
+ "pacman": "sudo pacman -S --noconfirm python python-pip"
260
+ }
261
+ }
262
+ },
263
+ "venv-anthropic": {
264
+ "kind": "venv",
265
+ "needs": [
266
+ "python"
267
+ ]
268
+ },
269
+ "claude-cli": {
270
+ "detect": "claude --version",
271
+ "kind": "package",
272
+ "install": {
273
+ "win": "powershell -NoProfile -Command \"irm https://claude.ai/install.ps1 | iex\"",
274
+ "mac": "brew install --cask claude-code",
275
+ "linux": "curl -fsSL https://claude.ai/install.sh | bash"
276
+ }
277
+ },
278
+ "java": {
279
+ "detect": "java -version",
280
+ "minVersion": "8",
281
+ "kind": "package",
282
+ "install": {
283
+ "win": "winget install -e --id Microsoft.OpenJDK.17",
284
+ "mac": "brew install --cask temurin",
285
+ "linux": {
286
+ "apt": "sudo apt-get install -y openjdk-17-jdk",
287
+ "dnf": "sudo dnf install -y java-17-openjdk",
288
+ "pacman": "sudo pacman -S --noconfirm jdk-openjdk"
289
+ }
290
+ }
291
+ },
292
+ "cm-cli": {
293
+ "kind": "note",
294
+ "needs": [
295
+ "java"
296
+ ]
297
+ },
298
+ "adr-tools": {
299
+ "detect": "adr --version",
300
+ "minVersion": "2",
301
+ "kind": "package",
302
+ "install": {
303
+ "win": "npm install -g @meza/adr-tools@2",
304
+ "mac": "npm install -g @meza/adr-tools@2",
305
+ "linux": "npm install -g @meza/adr-tools@2"
306
+ }
307
+ },
308
+ "gh": {
309
+ "detect": "gh --version",
310
+ "kind": "package",
311
+ "install": {
312
+ "win": "winget install -e --id GitHub.cli",
313
+ "mac": "brew install gh",
314
+ "linux": {
315
+ "apt": "sudo apt-get install -y gh",
316
+ "dnf": "sudo dnf install -y gh",
317
+ "pacman": "sudo pacman -S --noconfirm github-cli"
318
+ }
319
+ }
320
+ },
321
+ "playwright-mcp": {
322
+ "kind": "mcp",
323
+ "needs": [
324
+ "node",
325
+ "claude-cli"
326
+ ]
327
+ },
328
+ "anthropic-api-key": {
329
+ "kind": "secret",
330
+ "guideOnly": true
331
+ }
332
+ }
333
+ }