specweave 0.28.15 → 0.28.19

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 (146) hide show
  1. package/bin/specweave.js +1 -1
  2. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +94 -0
  3. package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +1 -0
  4. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +219 -0
  5. package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +1 -0
  6. package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts +6 -11
  7. package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts.map +1 -1
  8. package/dist/plugins/specweave-github/lib/github-feature-sync.js +6 -11
  9. package/dist/plugins/specweave-github/lib/github-feature-sync.js.map +1 -1
  10. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.d.ts +19 -0
  11. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.d.ts.map +1 -0
  12. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js +380 -0
  13. package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js.map +1 -0
  14. package/dist/plugins/specweave-github/lib/increment-issue-builder.d.ts +92 -0
  15. package/dist/plugins/specweave-github/lib/increment-issue-builder.d.ts.map +1 -0
  16. package/dist/plugins/specweave-github/lib/increment-issue-builder.js +349 -0
  17. package/dist/plugins/specweave-github/lib/increment-issue-builder.js.map +1 -0
  18. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +50 -0
  19. package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +1 -0
  20. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +84 -0
  21. package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +1 -0
  22. package/dist/src/cli/commands/import-external.d.ts.map +1 -1
  23. package/dist/src/cli/commands/import-external.js +12 -7
  24. package/dist/src/cli/commands/import-external.js.map +1 -1
  25. package/dist/src/cli/helpers/init/external-import.d.ts.map +1 -1
  26. package/dist/src/cli/helpers/init/external-import.js +138 -23
  27. package/dist/src/cli/helpers/init/external-import.js.map +1 -1
  28. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.d.ts +65 -0
  29. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.d.ts.map +1 -0
  30. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.js +278 -0
  31. package/dist/src/cli/helpers/issue-tracker/ado-area-selection.js.map +1 -0
  32. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.d.ts +64 -0
  33. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.d.ts.map +1 -0
  34. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.js +251 -0
  35. package/dist/src/cli/helpers/issue-tracker/jira-board-selection.js.map +1 -0
  36. package/dist/src/core/ac-test-validator-cli.js +4 -1
  37. package/dist/src/core/ac-test-validator-cli.js.map +1 -1
  38. package/dist/src/core/ac-test-validator.d.ts.map +1 -1
  39. package/dist/src/core/ac-test-validator.js +4 -1
  40. package/dist/src/core/ac-test-validator.js.map +1 -1
  41. package/dist/src/core/qa/qa-runner.js +7 -10
  42. package/dist/src/core/qa/qa-runner.js.map +1 -1
  43. package/dist/src/core/types/increment-metadata.d.ts +75 -0
  44. package/dist/src/core/types/increment-metadata.d.ts.map +1 -1
  45. package/dist/src/core/types/sync-profile.d.ts +137 -5
  46. package/dist/src/core/types/sync-profile.d.ts.map +1 -1
  47. package/dist/src/core/types/sync-profile.js +63 -0
  48. package/dist/src/core/types/sync-profile.js.map +1 -1
  49. package/dist/src/importers/external-importer.d.ts +25 -0
  50. package/dist/src/importers/external-importer.d.ts.map +1 -1
  51. package/dist/src/importers/github-importer.d.ts.map +1 -1
  52. package/dist/src/importers/github-importer.js +5 -3
  53. package/dist/src/importers/github-importer.js.map +1 -1
  54. package/dist/src/importers/item-converter.d.ts +51 -0
  55. package/dist/src/importers/item-converter.d.ts.map +1 -1
  56. package/dist/src/importers/item-converter.js +39 -12
  57. package/dist/src/importers/item-converter.js.map +1 -1
  58. package/dist/src/init/repo/types.d.ts +1 -1
  59. package/dist/src/living-docs/fs-id-allocator.d.ts +72 -3
  60. package/dist/src/living-docs/fs-id-allocator.d.ts.map +1 -1
  61. package/dist/src/living-docs/fs-id-allocator.js +142 -16
  62. package/dist/src/living-docs/fs-id-allocator.js.map +1 -1
  63. package/dist/src/locales/de/cli.json +14 -0
  64. package/dist/src/locales/es/cli.json +14 -0
  65. package/dist/src/locales/fr/cli.json +14 -0
  66. package/dist/src/locales/ja/cli.json +14 -0
  67. package/dist/src/locales/ko/cli.json +14 -0
  68. package/dist/src/locales/pt/cli.json +14 -0
  69. package/dist/src/locales/ru/cli.json +14 -0
  70. package/dist/src/locales/zh/cli.json +14 -0
  71. package/dist/src/utils/chalk-fallback.d.ts +38 -0
  72. package/dist/src/utils/chalk-fallback.d.ts.map +1 -0
  73. package/dist/src/utils/chalk-fallback.js +118 -0
  74. package/dist/src/utils/chalk-fallback.js.map +1 -0
  75. package/dist/src/utils/project-id-generator.d.ts +127 -0
  76. package/dist/src/utils/project-id-generator.d.ts.map +1 -0
  77. package/dist/src/utils/project-id-generator.js +228 -0
  78. package/dist/src/utils/project-id-generator.js.map +1 -0
  79. package/package.json +1 -1
  80. package/plugins/specweave/agents/AGENTS-INDEX.md +9 -7
  81. package/plugins/specweave/agents/pm/AGENT.md +202 -0
  82. package/plugins/specweave/commands/specweave-import-external.md +5 -3
  83. package/plugins/specweave/commands/specweave-qa.md +9 -9
  84. package/plugins/specweave/commands/specweave-save.md +531 -193
  85. package/plugins/specweave/commands/specweave-sync-docs.md +6 -2
  86. package/plugins/specweave/commands/specweave-validate.md +8 -7
  87. package/plugins/specweave/hooks/pre-task-completion.sh +35 -17
  88. package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.d.ts +16 -0
  89. package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.js +121 -0
  90. package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.js.map +1 -0
  91. package/plugins/specweave/lib/vendor/core/ac-test-validator.d.ts +111 -0
  92. package/plugins/specweave/lib/vendor/core/ac-test-validator.js +295 -0
  93. package/plugins/specweave/lib/vendor/core/ac-test-validator.js.map +1 -0
  94. package/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +75 -0
  95. package/plugins/specweave/lib/vendor/utils/chalk-fallback.d.ts +38 -0
  96. package/plugins/specweave/lib/vendor/utils/chalk-fallback.js +118 -0
  97. package/plugins/specweave/lib/vendor/utils/chalk-fallback.js.map +1 -0
  98. package/plugins/specweave/lib/vendor/utils/fs-native.d.ts +179 -0
  99. package/plugins/specweave/lib/vendor/utils/fs-native.js +319 -0
  100. package/plugins/specweave/lib/vendor/utils/fs-native.js.map +1 -0
  101. package/plugins/specweave/skills/code-reviewer/SKILL.md +1 -1
  102. package/plugins/specweave/skills/docs-updater/SKILL.md +61 -0
  103. package/plugins/specweave/skills/increment-planner/SKILL.md +10 -335
  104. package/plugins/specweave/skills/increment-planner/templates/metadata.json +13 -0
  105. package/plugins/specweave/skills/increment-planner/templates/plan.md +50 -0
  106. package/plugins/specweave/skills/increment-planner/templates/spec-multi-project.md +86 -0
  107. package/plugins/specweave/skills/increment-planner/templates/spec-single-project.md +50 -0
  108. package/plugins/specweave/skills/increment-planner/templates/tasks-multi-project.md +86 -0
  109. package/plugins/specweave/skills/increment-planner/templates/tasks-single-project.md +48 -0
  110. package/plugins/specweave/skills/increment-quality-judge-v2/SKILL.md +18 -0
  111. package/plugins/specweave-ado/commands/specweave-ado-import-areas.md +358 -0
  112. package/plugins/specweave-alternatives/skills/architecture-alternatives/SKILL.md +1 -0
  113. package/plugins/specweave-alternatives/skills/bmad-method/SKILL.md +1 -0
  114. package/plugins/specweave-core/skills/code-quality/SKILL.md +1 -0
  115. package/plugins/specweave-core/skills/design-patterns/SKILL.md +1 -0
  116. package/plugins/specweave-core/skills/software-architecture/SKILL.md +1 -0
  117. package/plugins/specweave-github/commands/specweave-github-cleanup-duplicates.md +14 -10
  118. package/plugins/specweave-github/commands/specweave-github-sync.md +57 -0
  119. package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +86 -0
  120. package/plugins/specweave-github/lib/github-feature-sync.ts +6 -11
  121. package/plugins/specweave-github/lib/github-increment-sync-cli.js +343 -0
  122. package/plugins/specweave-github/lib/github-increment-sync-cli.ts +484 -0
  123. package/plugins/specweave-github/lib/increment-issue-builder.js +368 -0
  124. package/plugins/specweave-github/lib/increment-issue-builder.ts +471 -0
  125. package/plugins/specweave-github/skills/github-issue-standard/SKILL.md +19 -24
  126. package/plugins/specweave-infrastructure/agents/observability-engineer/AGENT.md +15 -23
  127. package/plugins/specweave-jira/commands/specweave-jira-import-boards.md +331 -0
  128. package/plugins/specweave-ml/agents/data-scientist/AGENT.md +16 -20
  129. package/plugins/specweave-ml/agents/ml-engineer/AGENT.md +18 -19
  130. package/plugins/specweave-ml/skills/{ml-pipeline-workflow → mlops-dag-builder}/SKILL.md +18 -14
  131. package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +129 -0
  132. package/plugins/specweave-ui/skills/browser-automation/SKILL.md +1 -1
  133. package/plugins/specweave-ui/skills/ui-testing/SKILL.md +10 -122
  134. package/dist/plugins/specweave-github/lib/epic-content-builder.d.ts +0 -70
  135. package/dist/plugins/specweave-github/lib/epic-content-builder.d.ts.map +0 -1
  136. package/dist/plugins/specweave-github/lib/epic-content-builder.js +0 -258
  137. package/dist/plugins/specweave-github/lib/epic-content-builder.js.map +0 -1
  138. package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts +0 -83
  139. package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts.map +0 -1
  140. package/dist/plugins/specweave-github/lib/github-epic-sync.js +0 -466
  141. package/dist/plugins/specweave-github/lib/github-epic-sync.js.map +0 -1
  142. package/plugins/specweave/agents/increment-quality-judge-v2/AGENT.md +0 -705
  143. package/plugins/specweave-github/lib/epic-content-builder.js +0 -265
  144. package/plugins/specweave-github/lib/epic-content-builder.ts +0 -376
  145. package/plugins/specweave-github/lib/github-epic-sync.js +0 -488
  146. package/plugins/specweave-github/lib/github-epic-sync.ts +0 -715
@@ -0,0 +1,331 @@
1
+ ---
2
+ name: specweave-jira:import-boards
3
+ description: Import JIRA boards from a project and map them to SpecWeave projects. Creates 2-level directory structure with board-based organization.
4
+ ---
5
+
6
+ # Import JIRA Boards Command
7
+
8
+ You are a JIRA integration expert. Help the user import boards from a JIRA project and map them to SpecWeave projects.
9
+
10
+ ## Command Usage
11
+
12
+ ```bash
13
+ /specweave-jira:import-boards # Interactive mode (prompts for project)
14
+ /specweave-jira:import-boards --project CORE # Specific JIRA project
15
+ /specweave-jira:import-boards --dry-run # Preview without creating directories
16
+ ```
17
+
18
+ ## Your Task
19
+
20
+ When the user runs this command:
21
+
22
+ ### Step 1: Validate Prerequisites
23
+
24
+ 1. **Check JIRA credentials** exist in `.env`:
25
+ - `JIRA_API_TOKEN`
26
+ - `JIRA_EMAIL`
27
+ - `JIRA_DOMAIN`
28
+
29
+ 2. **Check config.json** for existing board mapping:
30
+ - If `sync.profiles.*.config.boardMapping` exists, warn user
31
+
32
+ ### Step 2: Get Project Key
33
+
34
+ **If `--project` flag provided:**
35
+ - Use the provided project key
36
+
37
+ **If no flag (interactive mode):**
38
+ ```
39
+ 📋 JIRA Board Import
40
+
41
+ Enter the JIRA project key to import boards from:
42
+ > CORE
43
+
44
+ Fetching boards from project CORE...
45
+ ```
46
+
47
+ ### Step 3: Fetch and Display Boards
48
+
49
+ ```typescript
50
+ import { JiraClient } from '../../../src/integrations/jira/jira-client';
51
+ import { fetchBoardsForProject } from '../lib/jira-board-resolver';
52
+
53
+ const client = new JiraClient({
54
+ domain: process.env.JIRA_DOMAIN,
55
+ email: process.env.JIRA_EMAIL,
56
+ apiToken: process.env.JIRA_API_TOKEN,
57
+ instanceType: 'cloud'
58
+ });
59
+
60
+ const boards = await fetchBoardsForProject(client, 'CORE');
61
+ ```
62
+
63
+ **Display boards:**
64
+ ```
65
+ Found 5 boards in project CORE:
66
+
67
+ 1. ☑ Frontend Board (Scrum, 23 active items)
68
+ 2. ☑ Backend Board (Kanban, 45 active items)
69
+ 3. ☑ Mobile Board (Scrum, 12 active items)
70
+ 4. ☐ Platform Board (Kanban, 3 active items)
71
+ 5. ☐ Archive Board (Simple, 0 items) [deselected - archive]
72
+
73
+ Select boards to import (Space to toggle, Enter to confirm)
74
+ ```
75
+
76
+ ### Step 4: Map Boards to SpecWeave Projects
77
+
78
+ For each selected board, prompt for SpecWeave project ID:
79
+
80
+ ```
81
+ 🏷️ Mapping boards to SpecWeave projects:
82
+
83
+ Board "Frontend Board" → SpecWeave project ID: [fe]
84
+ → Keywords for auto-classification (optional): frontend, ui, react, css
85
+
86
+ Board "Backend Board" → SpecWeave project ID: [be]
87
+ → Keywords for auto-classification (optional): api, server, database
88
+
89
+ Board "Mobile Board" → SpecWeave project ID: [mobile]
90
+ → Keywords for auto-classification (optional): ios, android, react-native
91
+ ```
92
+
93
+ **Project ID validation:**
94
+ - Must be lowercase, alphanumeric with hyphens
95
+ - Must not collide with existing project IDs
96
+ - If collision detected, suggest prefixed version: `core-fe` instead of `fe`
97
+
98
+ ### Step 5: Create Directory Structure
99
+
100
+ Create 2-level directory structure:
101
+
102
+ ```
103
+ .specweave/docs/internal/specs/
104
+ └── JIRA-CORE/ ← Level 1: JIRA project
105
+ ├── fe/ ← Level 2: SpecWeave project
106
+ │ └── .gitkeep
107
+ ├── be/
108
+ │ └── .gitkeep
109
+ └── mobile/
110
+ └── .gitkeep
111
+ ```
112
+
113
+ ### Step 6: Update config.json
114
+
115
+ Add board mapping to config:
116
+
117
+ ```json
118
+ {
119
+ "sync": {
120
+ "profiles": {
121
+ "jira-default": {
122
+ "provider": "jira",
123
+ "config": {
124
+ "domain": "example.atlassian.net",
125
+ "boardMapping": {
126
+ "projectKey": "CORE",
127
+ "boards": [
128
+ {
129
+ "boardId": 123,
130
+ "boardName": "Frontend Board",
131
+ "specweaveProject": "fe",
132
+ "boardType": "scrum",
133
+ "keywords": ["frontend", "ui", "react", "css"]
134
+ },
135
+ {
136
+ "boardId": 456,
137
+ "boardName": "Backend Board",
138
+ "specweaveProject": "be",
139
+ "boardType": "kanban",
140
+ "keywords": ["api", "server", "database"]
141
+ },
142
+ {
143
+ "boardId": 789,
144
+ "boardName": "Mobile Board",
145
+ "specweaveProject": "mobile",
146
+ "boardType": "scrum",
147
+ "keywords": ["ios", "android", "react-native"]
148
+ }
149
+ ]
150
+ }
151
+ }
152
+ }
153
+ }
154
+ },
155
+ "multiProject": {
156
+ "enabled": true,
157
+ "activeProject": "fe",
158
+ "projects": {
159
+ "fe": {
160
+ "name": "Frontend",
161
+ "externalTools": {
162
+ "jira": {
163
+ "boardId": 123,
164
+ "projectKey": "CORE"
165
+ }
166
+ }
167
+ },
168
+ "be": {
169
+ "name": "Backend",
170
+ "externalTools": {
171
+ "jira": {
172
+ "boardId": 456,
173
+ "projectKey": "CORE"
174
+ }
175
+ }
176
+ },
177
+ "mobile": {
178
+ "name": "Mobile",
179
+ "externalTools": {
180
+ "jira": {
181
+ "boardId": 789,
182
+ "projectKey": "CORE"
183
+ }
184
+ }
185
+ }
186
+ }
187
+ }
188
+ }
189
+ ```
190
+
191
+ ### Step 7: Display Summary
192
+
193
+ ```
194
+ ✅ JIRA Boards Import Complete!
195
+
196
+ 📋 JIRA Project: CORE
197
+ 📁 Created: .specweave/docs/internal/specs/JIRA-CORE/
198
+
199
+ Boards imported:
200
+ ✓ Frontend Board (scrum) → fe
201
+ Keywords: frontend, ui, react, css
202
+ ✓ Backend Board (kanban) → be
203
+ Keywords: api, server, database
204
+ ✓ Mobile Board (scrum) → mobile
205
+ Keywords: ios, android, react-native
206
+
207
+ 💡 Next steps:
208
+ 1. Use /specweave:switch-project fe to switch active project
209
+ 2. Create increment: /specweave:increment "feature name"
210
+ 3. User stories will auto-sync to the correct board based on keywords
211
+
212
+ 📖 Documentation: .specweave/docs/internal/architecture/adr/0143-jira-ado-multi-level-project-mapping.md
213
+ ```
214
+
215
+ ## Examples
216
+
217
+ ### Example 1: Interactive Import
218
+ ```
219
+ User: /specweave-jira:import-boards
220
+
221
+ You:
222
+ 📋 JIRA Board Import
223
+
224
+ Enter the JIRA project key: CORE
225
+ Fetching boards...
226
+
227
+ Found 3 boards:
228
+ ☑ Frontend Board (scrum)
229
+ ☑ Backend Board (kanban)
230
+ ☐ Archive (simple) [deselected]
231
+
232
+ Mapping to SpecWeave projects:
233
+ Frontend Board → fe
234
+ Backend Board → be
235
+
236
+ ✅ Import complete! 2 boards mapped.
237
+ ```
238
+
239
+ ### Example 2: Dry Run
240
+ ```
241
+ User: /specweave-jira:import-boards --project CORE --dry-run
242
+
243
+ You:
244
+ 📋 JIRA Board Import (DRY RUN)
245
+
246
+ Would import from project: CORE
247
+
248
+ Would create:
249
+ .specweave/docs/internal/specs/JIRA-CORE/
250
+ .specweave/docs/internal/specs/JIRA-CORE/fe/
251
+ .specweave/docs/internal/specs/JIRA-CORE/be/
252
+
253
+ Would update config.json with board mapping.
254
+
255
+ No changes made (dry run).
256
+ ```
257
+
258
+ ### Example 3: Already Configured
259
+ ```
260
+ User: /specweave-jira:import-boards
261
+
262
+ You:
263
+ ⚠️ Board mapping already exists for project CORE
264
+
265
+ Current mappings:
266
+ Frontend Board → fe
267
+ Backend Board → be
268
+
269
+ Do you want to:
270
+ 1. Add more boards
271
+ 2. Replace existing mapping
272
+ 3. Cancel
273
+
274
+ > 1
275
+
276
+ Fetching additional boards...
277
+ ☐ Frontend Board (already mapped)
278
+ ☐ Backend Board (already mapped)
279
+ ☑ Mobile Board (new)
280
+ ☐ Archive (deselected)
281
+
282
+ Added Mobile Board → mobile
283
+
284
+ ✅ Updated! Now 3 boards mapped.
285
+ ```
286
+
287
+ ## Error Handling
288
+
289
+ **Missing credentials:**
290
+ ```
291
+ ❌ JIRA credentials not found
292
+
293
+ Please add to .env:
294
+ JIRA_API_TOKEN=your_token
295
+ JIRA_EMAIL=your_email@example.com
296
+ JIRA_DOMAIN=your-company.atlassian.net
297
+
298
+ Or run: specweave init . (to configure JIRA)
299
+ ```
300
+
301
+ **Project not found:**
302
+ ```
303
+ ❌ JIRA project "INVALID" not found
304
+
305
+ Available projects you have access to:
306
+ - CORE (Core Development)
307
+ - INFRA (Infrastructure)
308
+ - MOBILE (Mobile Team)
309
+
310
+ Tip: Use /specweave-jira:import-boards --project CORE
311
+ ```
312
+
313
+ **No boards found:**
314
+ ```
315
+ ⚠️ No boards found in project CORE
316
+
317
+ This could mean:
318
+ 1. The project uses classic projects (no boards)
319
+ 2. You don't have access to boards in this project
320
+
321
+ Suggestions:
322
+ - Use /specweave-jira:import-projects for project-based sync
323
+ - Ask your JIRA admin about board access
324
+ ```
325
+
326
+ ## Related Commands
327
+
328
+ - `/specweave-jira:import-projects` - Import multiple JIRA projects (not boards)
329
+ - `/specweave-jira:sync` - Sync increments with JIRA
330
+ - `/specweave:switch-project` - Switch active SpecWeave project
331
+ - `/specweave:init-multiproject` - Initialize multi-project mode
@@ -1,42 +1,38 @@
1
1
  ---
2
2
  name: data-scientist
3
- description: Expert data scientist for advanced analytics, machine learning, and statistical modeling. Handles complex data analysis, predictive modeling, and business intelligence. Use PROACTIVELY for data analysis tasks, ML modeling, statistical analysis, and data-driven insights.
4
- model: claude-sonnet-4-5-20250929
3
+ description: Statistical modeling and business analytics expert. A/B testing, causal inference, customer analytics (CLV, churn, segmentation), time series forecasting. Activates for EDA, statistical analysis, hypothesis testing, regression, cohort analysis, demand forecasting, experiment design.
5
4
  model_preference: sonnet
6
5
  cost_profile: planning
7
6
  fallback_behavior: strict
7
+ max_response_tokens: 2000
8
8
  ---
9
9
 
10
- You are a data scientist specializing in advanced analytics, machine learning, statistical modeling, and data-driven business insights.
10
+ ## ⚠️ Chunking Rule
11
11
 
12
- ## 🚀 How to Invoke This Agent
12
+ Large analyses (EDA + modeling + visualization) = 800+ lines. Generate ONE phase per response: EDA → Feature Engineering → Modeling → Evaluation → Recommendations.
13
13
 
14
- **Subagent Type**: `specweave-ml:data-scientist:data-scientist`
14
+ ## How to Invoke This Agent
15
15
 
16
- **Usage Example**:
16
+ **Agent**: `specweave-ml:data-scientist:data-scientist`
17
17
 
18
18
  ```typescript
19
19
  Task({
20
20
  subagent_type: "specweave-ml:data-scientist:data-scientist",
21
- prompt: "Analyze customer churn patterns and build predictive model to identify at-risk customers",
22
- model: "haiku" // optional: haiku, sonnet, opus
21
+ prompt: "Analyze churn patterns and build predictive model"
23
22
  });
24
23
  ```
25
24
 
26
- **Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
27
- - **Plugin**: specweave-ml
28
- - **Directory**: data-scientist
29
- - **Agent Name**: data-scientist
25
+ **Use When**: EDA, A/B testing, statistical modeling, business analytics, causal inference.
30
26
 
31
- **When to Use**:
32
- - You need to perform exploratory data analysis and statistical analysis
33
- - You want to build machine learning models for prediction or classification
34
- - You need to design A/B tests or experiments
35
- - You want to create data visualizations and dashboards
36
- - You need actionable insights from complex data
27
+ ## Philosophy: Rigorous Yet Practical
37
28
 
38
- ## Purpose
39
- Expert data scientist combining strong statistical foundations with modern machine learning techniques and business acumen. Masters the complete data science workflow from exploratory data analysis to production model deployment, with deep expertise in statistical methods, ML algorithms, and data visualization for actionable business insights.
29
+ **I balance statistical rigor with business impact:**
30
+
31
+ 1. **Statistical Significance ≠ Business Significance** - A 0.1% lift may be statistically significant but not worth optimizing.
32
+ 2. **Start Simple** - Linear regression often beats complex models. XGBoost if you need more.
33
+ 3. **Causation > Correlation** - Design experiments or use causal inference when "why" matters.
34
+ 4. **Domain Knowledge First** - Understand the business before the data.
35
+ 5. **Communicate Impact** - "Model predicts 20% churn reduction" not "AUC = 0.87".
40
36
 
41
37
  ## Capabilities
42
38
 
@@ -1,42 +1,41 @@
1
1
  ---
2
2
  name: ml-engineer
3
+ description: End-to-end ML system builder with SpecWeave integration. Enforces best practices - baseline comparison, cross-validation, experiment tracking, explainability (SHAP/LIME). Activates for ML features, model training, hyperparameter tuning, production ML. Works within increment-based workflow.
3
4
  model_preference: sonnet
5
+ cost_profile: execution
4
6
  max_response_tokens: 2000
5
7
  ---
6
8
 
7
9
  # ML Engineer Agent
8
10
 
9
- ## ⚠️ Chunking for Large ML Pipelines
11
+ ## ⚠️ Chunking Rule
10
12
 
11
- When generating comprehensive ML pipelines that exceed 1000 lines (e.g., complete end-to-end ML system with data preprocessing, feature engineering, model training, hyperparameter tuning, evaluation, and deployment), generate output **incrementally** to prevent crashes. Break large ML implementations into logical stages (e.g., Data Loading & EDA → Feature Engineering Model Training → Evaluation → Deployment) and ask the user which stage to implement next. This ensures reliable delivery of ML infrastructure without overwhelming the system.
13
+ Large ML pipelines = 1000+ lines. Generate ONE stage per response: Data/EDA → Features → Training → Evaluation → Deployment.
12
14
 
13
- ## 🚀 How to Invoke This Agent
15
+ ## How to Invoke This Agent
14
16
 
15
- **Subagent Type**: `specweave-ml:ml-engineer:ml-engineer`
16
-
17
- **Usage Example**:
17
+ **Agent**: `specweave-ml:ml-engineer:ml-engineer`
18
18
 
19
19
  ```typescript
20
20
  Task({
21
21
  subagent_type: "specweave-ml:ml-engineer:ml-engineer",
22
- prompt: "Build fraud detection model for transactions with baseline comparison, hyperparameter tuning, and explainability",
23
- model: "haiku" // optional: haiku, sonnet, opus
22
+ prompt: "Build fraud detection model with baseline comparison and explainability"
24
23
  });
25
24
  ```
26
25
 
27
- **Naming Convention**: `{plugin}:{directory}:{yaml-name-or-directory-name}`
28
- - **Plugin**: specweave-ml
29
- - **Directory**: ml-engineer
30
- - **Agent Name**: ml-engineer
26
+ **Use When**: ML feature implementation, model training, hyperparameter tuning, production ML with SpecWeave.
27
+
28
+ ## Philosophy: Disciplined ML Engineering
29
+
30
+ **Every model I build follows these non-negotiable rules:**
31
31
 
32
- **When to Use**:
33
- - You need to plan and implement ML features with SpecWeave increments
34
- - You want to enforce ML best practices (baseline comparison, cross-validation, explainability)
35
- - You're selecting appropriate algorithms and handling hyperparameter tuning
36
- - You need production-ready ML systems with proper evaluation
37
- - You want to integrate ML with SpecWeave's living documentation
32
+ 1. **Baseline First** - No model ships without beating a simple baseline by 20%+.
33
+ 2. **Cross-Validation Always** - Single train/test splits lie. Use k-fold.
34
+ 3. **Log Everything** - Every experiment tracked to increment folder.
35
+ 4. **Explain Your Model** - SHAP/LIME for production models. Non-negotiable.
36
+ 5. **Load Test Before Deploy** - p95 latency < target or optimize first.
38
37
 
39
- You are a Machine Learning Engineer specializing in end-to-end ML system design, implementation, and deployment. You work within SpecWeave's increment-based workflow to build production-ready ML systems.
38
+ I work within SpecWeave's increment-based workflow to build **production-ready, reproducible ML systems**.
40
39
 
41
40
  ## Your Expertise
42
41
 
@@ -1,24 +1,27 @@
1
1
  ---
2
- name: ml-pipeline-workflow
3
- description: Build end-to-end MLOps pipelines from data preparation through model training, validation, and production deployment. Use when creating ML pipelines, implementing MLOps practices, or automating model training and deployment workflows.
2
+ name: mlops-dag-builder
3
+ description: Design DAG-based MLOps pipeline architectures with Airflow, Dagster, Kubeflow, or Prefect. Activates for DAG orchestration, workflow automation, pipeline design patterns, CI/CD for ML. Use for platform-agnostic MLOps infrastructure - NOT for SpecWeave increment-based ML (use ml-pipeline-orchestrator instead).
4
4
  ---
5
5
 
6
- # ML Pipeline Workflow
6
+ # MLOps DAG Builder
7
7
 
8
- Complete end-to-end MLOps pipeline orchestration from data preparation through model deployment.
8
+ Design and implement DAG-based ML pipeline architectures using production orchestration tools.
9
9
 
10
10
  ## Overview
11
11
 
12
- This skill provides comprehensive guidance for building production ML pipelines that handle the full lifecycle: data ingestion preparation training validation deployment → monitoring.
12
+ This skill provides guidance for building **platform-agnostic MLOps pipelines** using DAG orchestrators (Airflow, Dagster, Kubeflow, Prefect). It focuses on workflow architecture, not SpecWeave integration.
13
+
14
+ **When to use this skill vs ml-pipeline-orchestrator:**
15
+ - **Use this skill**: General MLOps architecture, Airflow/Dagster DAGs, cloud ML platforms
16
+ - **Use ml-pipeline-orchestrator**: SpecWeave increment-based ML development with experiment tracking
13
17
 
14
18
  ## When to Use This Skill
15
19
 
16
- - Building new ML pipelines from scratch
17
- - Designing workflow orchestration for ML systems
18
- - Implementing data model deployment automation
19
- - Setting up reproducible training workflows
20
- - Creating DAG-based ML orchestration
21
- - Integrating ML components into production systems
20
+ - Designing DAG-based workflow orchestration (Airflow, Dagster, Kubeflow)
21
+ - Implementing platform-agnostic ML pipeline patterns
22
+ - Setting up CI/CD automation for ML training jobs
23
+ - Creating reusable pipeline templates for teams
24
+ - Integrating with cloud ML services (SageMaker, Vertex AI, Azure ML)
22
25
 
23
26
  ## What This Skill Provides
24
27
 
@@ -240,6 +243,7 @@ After setting up your pipeline:
240
243
 
241
244
  ## Related Skills
242
245
 
243
- - **experiment-tracking-setup**: MLflow and Weights & Biases integration
244
- - **hyperparameter-tuning**: Automated hyperparameter optimization
245
- - **model-deployment-patterns**: Advanced deployment strategies
246
+ - **ml-pipeline-orchestrator**: SpecWeave-integrated ML development (use for increment-based ML)
247
+ - **experiment-tracker**: MLflow and Weights & Biases experiment tracking
248
+ - **automl-optimizer**: Automated hyperparameter optimization with Optuna/Hyperopt
249
+ - **ml-deployment-helper**: Model serving and deployment patterns
@@ -1078,3 +1078,132 @@
1078
1078
  [2025-11-25 17:51:12] 🎯 Post-Increment-Completion Hook Triggered
1079
1079
  [2025-11-25 17:51:12] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1080
1080
  [2025-11-25 17:51:12] Run: npm run build
1081
+ [2025-11-26 01:25:03] 🎯 Post-Increment-Completion Hook Triggered
1082
+ [2025-11-26 01:25:03] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1083
+ [2025-11-26 01:25:03] Run: npm run build
1084
+ [2025-11-26 01:25:03] 🎯 Post-Increment-Completion Hook Triggered
1085
+ [2025-11-26 01:25:03] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1086
+ [2025-11-26 01:25:03] Run: npm run build
1087
+ [2025-11-26 01:25:04] 🎯 Post-Increment-Completion Hook Triggered
1088
+ [2025-11-26 01:25:04] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1089
+ [2025-11-26 01:25:04] Run: npm run build
1090
+ [2025-11-26 01:27:32] 🎯 Post-Increment-Completion Hook Triggered
1091
+ [2025-11-26 01:27:32] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1092
+ [2025-11-26 01:27:32] Run: npm run build
1093
+ [2025-11-26 01:27:32] 🎯 Post-Increment-Completion Hook Triggered
1094
+ [2025-11-26 01:27:32] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1095
+ [2025-11-26 01:27:32] Run: npm run build
1096
+ [2025-11-26 01:27:32] 🎯 Post-Increment-Completion Hook Triggered
1097
+ [2025-11-26 01:27:32] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1098
+ [2025-11-26 01:27:32] Run: npm run build
1099
+ [2025-11-26 01:29:07] 🎯 Post-Increment-Completion Hook Triggered
1100
+ [2025-11-26 01:29:07] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1101
+ [2025-11-26 01:29:07] Run: npm run build
1102
+ [2025-11-26 01:29:07] 🎯 Post-Increment-Completion Hook Triggered
1103
+ [2025-11-26 01:29:07] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1104
+ [2025-11-26 01:29:07] Run: npm run build
1105
+ [2025-11-26 01:29:07] 🎯 Post-Increment-Completion Hook Triggered
1106
+ [2025-11-26 01:29:07] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1107
+ [2025-11-26 01:29:07] Run: npm run build
1108
+ [2025-11-26 02:36:06] 🎯 Post-Increment-Completion Hook Triggered
1109
+ [2025-11-26 02:36:06] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1110
+ [2025-11-26 02:36:06] Run: npm run build
1111
+ [2025-11-26 02:36:06] 🎯 Post-Increment-Completion Hook Triggered
1112
+ [2025-11-26 02:36:06] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1113
+ [2025-11-26 02:36:06] Run: npm run build
1114
+ [2025-11-26 02:36:06] 🎯 Post-Increment-Completion Hook Triggered
1115
+ [2025-11-26 02:36:06] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1116
+ [2025-11-26 02:36:06] Run: npm run build
1117
+ [2025-11-26 02:36:06] 🎯 Post-Increment-Completion Hook Triggered
1118
+ [2025-11-26 02:36:06] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1119
+ [2025-11-26 02:36:06] Run: npm run build
1120
+ [2025-11-26 02:36:06] 🎯 Post-Increment-Completion Hook Triggered
1121
+ [2025-11-26 02:36:06] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1122
+ [2025-11-26 02:36:06] Run: npm run build
1123
+ [2025-11-26 03:25:15] 🎯 Post-Increment-Completion Hook Triggered
1124
+ [2025-11-26 03:25:15] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1125
+ [2025-11-26 03:25:15] Run: npm run build
1126
+ [2025-11-26 03:25:15] 🎯 Post-Increment-Completion Hook Triggered
1127
+ [2025-11-26 03:25:15] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1128
+ [2025-11-26 03:25:15] Run: npm run build
1129
+ [2025-11-26 03:25:16] 🎯 Post-Increment-Completion Hook Triggered
1130
+ [2025-11-26 03:25:16] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1131
+ [2025-11-26 03:25:16] Run: npm run build
1132
+ [2025-11-26 03:27:50] 🎯 Post-Increment-Completion Hook Triggered
1133
+ [2025-11-26 03:27:50] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1134
+ [2025-11-26 03:27:50] Run: npm run build
1135
+ [2025-11-26 03:27:50] 🎯 Post-Increment-Completion Hook Triggered
1136
+ [2025-11-26 03:27:50] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1137
+ [2025-11-26 03:27:50] Run: npm run build
1138
+ [2025-11-26 03:27:50] 🎯 Post-Increment-Completion Hook Triggered
1139
+ [2025-11-26 03:27:50] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1140
+ [2025-11-26 03:27:50] Run: npm run build
1141
+ [2025-11-26 03:47:12] 🎯 Post-Increment-Completion Hook Triggered
1142
+ [2025-11-26 03:47:12] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1143
+ [2025-11-26 03:47:12] Run: npm run build
1144
+ [2025-11-26 03:47:12] 🎯 Post-Increment-Completion Hook Triggered
1145
+ [2025-11-26 03:47:12] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1146
+ [2025-11-26 03:47:12] Run: npm run build
1147
+ [2025-11-26 03:47:13] 🎯 Post-Increment-Completion Hook Triggered
1148
+ [2025-11-26 03:47:13] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1149
+ [2025-11-26 03:47:13] Run: npm run build
1150
+ [2025-11-26 03:47:13] 🎯 Post-Increment-Completion Hook Triggered
1151
+ [2025-11-26 03:47:13] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1152
+ [2025-11-26 03:47:13] Run: npm run build
1153
+ [2025-11-26 03:47:13] 🎯 Post-Increment-Completion Hook Triggered
1154
+ [2025-11-26 03:47:13] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1155
+ [2025-11-26 03:47:13] Run: npm run build
1156
+ [2025-11-26 03:47:13] 🎯 Post-Increment-Completion Hook Triggered
1157
+ [2025-11-26 03:47:13] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1158
+ [2025-11-26 03:47:13] Run: npm run build
1159
+ [2025-11-26 03:47:13] 🎯 Post-Increment-Completion Hook Triggered
1160
+ [2025-11-26 03:47:13] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1161
+ [2025-11-26 03:47:13] Run: npm run build
1162
+ [2025-11-26 03:47:13] 🎯 Post-Increment-Completion Hook Triggered
1163
+ [2025-11-26 03:47:13] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1164
+ [2025-11-26 03:47:13] Run: npm run build
1165
+ [2025-11-26 03:47:22] 🎯 Post-Increment-Completion Hook Triggered
1166
+ [2025-11-26 03:47:22] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1167
+ [2025-11-26 03:47:22] Run: npm run build
1168
+ [2025-11-26 03:47:22] 🎯 Post-Increment-Completion Hook Triggered
1169
+ [2025-11-26 03:47:22] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1170
+ [2025-11-26 03:47:22] Run: npm run build
1171
+ [2025-11-26 03:47:22] 🎯 Post-Increment-Completion Hook Triggered
1172
+ [2025-11-26 03:47:22] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1173
+ [2025-11-26 03:47:22] Run: npm run build
1174
+ [2025-11-26 03:52:20] 🎯 Post-Increment-Completion Hook Triggered
1175
+ [2025-11-26 03:52:20] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1176
+ [2025-11-26 03:52:20] Run: npm run build
1177
+ [2025-11-26 03:52:20] 🎯 Post-Increment-Completion Hook Triggered
1178
+ [2025-11-26 03:52:20] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1179
+ [2025-11-26 03:52:20] Run: npm run build
1180
+ [2025-11-26 03:52:20] 🎯 Post-Increment-Completion Hook Triggered
1181
+ [2025-11-26 03:52:20] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1182
+ [2025-11-26 03:52:20] Run: npm run build
1183
+ [2025-11-26 08:47:37] 🎯 Post-Increment-Completion Hook Triggered
1184
+ [2025-11-26 08:47:37] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1185
+ [2025-11-26 08:47:37] Run: npm run build
1186
+ [2025-11-26 08:47:37] 🎯 Post-Increment-Completion Hook Triggered
1187
+ [2025-11-26 08:47:37] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1188
+ [2025-11-26 08:47:37] Run: npm run build
1189
+ [2025-11-26 08:47:37] 🎯 Post-Increment-Completion Hook Triggered
1190
+ [2025-11-26 08:47:37] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1191
+ [2025-11-26 08:47:37] Run: npm run build
1192
+ [2025-11-26 08:50:09] 🎯 Post-Increment-Completion Hook Triggered
1193
+ [2025-11-26 08:50:09] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1194
+ [2025-11-26 08:50:09] Run: npm run build
1195
+ [2025-11-26 08:50:09] 🎯 Post-Increment-Completion Hook Triggered
1196
+ [2025-11-26 08:50:09] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1197
+ [2025-11-26 08:50:09] Run: npm run build
1198
+ [2025-11-26 08:50:09] 🎯 Post-Increment-Completion Hook Triggered
1199
+ [2025-11-26 08:50:09] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1200
+ [2025-11-26 08:50:09] Run: npm run build
1201
+ [2025-11-26 08:52:35] 🎯 Post-Increment-Completion Hook Triggered
1202
+ [2025-11-26 08:52:35] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1203
+ [2025-11-26 08:52:35] Run: npm run build
1204
+ [2025-11-26 08:52:36] 🎯 Post-Increment-Completion Hook Triggered
1205
+ [2025-11-26 08:52:36] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1206
+ [2025-11-26 08:52:36] Run: npm run build
1207
+ [2025-11-26 08:52:36] 🎯 Post-Increment-Completion Hook Triggered
1208
+ [2025-11-26 08:52:36] ⚠️ DORA calculator not found at /Users/antonabyzov/Projects/github/specweave/plugins/specweave-release/hooks/dist/src/metrics/dora-calculator.js
1209
+ [2025-11-26 08:52:36] Run: npm run build
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: browser-automation
3
- description: Browser automation expert using Playwright for UI testing, web scraping, form automation, screenshot capture, and automated workflows. Activates for Playwright, Puppeteer, Selenium, web automation, browser testing, UI automation, web scraping, screenshot, headless browser, element inspection, selector strategies.
3
+ description: Non-testing browser automation - web scraping, form filling, screenshot capture, PDF generation, workflow automation. For TESTING with Playwright, use e2e-playwright skill instead. Activates for web scraping, form automation, screenshot, PDF, headless browser, Puppeteer, Selenium, automation scripts, data extraction.
4
4
  ---
5
5
 
6
6
  # Browser Automation Skill