specweave 0.28.17 → 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.
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +94 -0
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +219 -0
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts +6 -11
- package/dist/plugins/specweave-github/lib/github-feature-sync.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/github-feature-sync.js +6 -11
- package/dist/plugins/specweave-github/lib/github-feature-sync.js.map +1 -1
- package/dist/plugins/specweave-github/lib/github-increment-sync-cli.d.ts +19 -0
- package/dist/plugins/specweave-github/lib/github-increment-sync-cli.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js +380 -0
- package/dist/plugins/specweave-github/lib/github-increment-sync-cli.js.map +1 -0
- package/dist/plugins/specweave-github/lib/increment-issue-builder.d.ts +92 -0
- package/dist/plugins/specweave-github/lib/increment-issue-builder.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/increment-issue-builder.js +349 -0
- package/dist/plugins/specweave-github/lib/increment-issue-builder.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +50 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +84 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +1 -0
- package/dist/src/cli/commands/import-external.d.ts.map +1 -1
- package/dist/src/cli/commands/import-external.js +12 -7
- package/dist/src/cli/commands/import-external.js.map +1 -1
- package/dist/src/cli/helpers/init/external-import.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/external-import.js +122 -17
- package/dist/src/cli/helpers/init/external-import.js.map +1 -1
- package/dist/src/cli/helpers/issue-tracker/ado-area-selection.d.ts +65 -0
- package/dist/src/cli/helpers/issue-tracker/ado-area-selection.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/ado-area-selection.js +278 -0
- package/dist/src/cli/helpers/issue-tracker/ado-area-selection.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/jira-board-selection.d.ts +64 -0
- package/dist/src/cli/helpers/issue-tracker/jira-board-selection.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/jira-board-selection.js +251 -0
- package/dist/src/cli/helpers/issue-tracker/jira-board-selection.js.map +1 -0
- package/dist/src/core/ac-test-validator-cli.js +4 -1
- package/dist/src/core/ac-test-validator-cli.js.map +1 -1
- package/dist/src/core/ac-test-validator.d.ts.map +1 -1
- package/dist/src/core/ac-test-validator.js +4 -1
- package/dist/src/core/ac-test-validator.js.map +1 -1
- package/dist/src/core/types/increment-metadata.d.ts +75 -0
- package/dist/src/core/types/increment-metadata.d.ts.map +1 -1
- package/dist/src/core/types/sync-profile.d.ts +137 -5
- package/dist/src/core/types/sync-profile.d.ts.map +1 -1
- package/dist/src/core/types/sync-profile.js +63 -0
- package/dist/src/core/types/sync-profile.js.map +1 -1
- package/dist/src/importers/external-importer.d.ts +25 -0
- package/dist/src/importers/external-importer.d.ts.map +1 -1
- package/dist/src/importers/github-importer.d.ts.map +1 -1
- package/dist/src/importers/github-importer.js +5 -3
- package/dist/src/importers/github-importer.js.map +1 -1
- package/dist/src/importers/item-converter.d.ts +51 -0
- package/dist/src/importers/item-converter.d.ts.map +1 -1
- package/dist/src/importers/item-converter.js +39 -12
- package/dist/src/importers/item-converter.js.map +1 -1
- package/dist/src/init/repo/types.d.ts +1 -1
- package/dist/src/living-docs/fs-id-allocator.d.ts +72 -3
- package/dist/src/living-docs/fs-id-allocator.d.ts.map +1 -1
- package/dist/src/living-docs/fs-id-allocator.js +142 -16
- package/dist/src/living-docs/fs-id-allocator.js.map +1 -1
- package/dist/src/locales/de/cli.json +14 -0
- package/dist/src/locales/es/cli.json +14 -0
- package/dist/src/locales/fr/cli.json +14 -0
- package/dist/src/locales/ja/cli.json +14 -0
- package/dist/src/locales/ko/cli.json +14 -0
- package/dist/src/locales/pt/cli.json +14 -0
- package/dist/src/locales/ru/cli.json +14 -0
- package/dist/src/locales/zh/cli.json +14 -0
- package/dist/src/utils/chalk-fallback.d.ts +38 -0
- package/dist/src/utils/chalk-fallback.d.ts.map +1 -0
- package/dist/src/utils/chalk-fallback.js +118 -0
- package/dist/src/utils/chalk-fallback.js.map +1 -0
- package/dist/src/utils/project-id-generator.d.ts +127 -0
- package/dist/src/utils/project-id-generator.d.ts.map +1 -0
- package/dist/src/utils/project-id-generator.js +228 -0
- package/dist/src/utils/project-id-generator.js.map +1 -0
- package/package.json +1 -1
- package/plugins/specweave/agents/pm/AGENT.md +202 -0
- package/plugins/specweave/commands/specweave-import-external.md +5 -3
- package/plugins/specweave/commands/specweave-sync-docs.md +6 -2
- package/plugins/specweave/hooks/pre-task-completion.sh +35 -17
- package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.d.ts +16 -0
- package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.js +121 -0
- package/plugins/specweave/lib/vendor/core/ac-test-validator-cli.js.map +1 -0
- package/plugins/specweave/lib/vendor/core/ac-test-validator.d.ts +111 -0
- package/plugins/specweave/lib/vendor/core/ac-test-validator.js +295 -0
- package/plugins/specweave/lib/vendor/core/ac-test-validator.js.map +1 -0
- package/plugins/specweave/lib/vendor/core/types/increment-metadata.d.ts +75 -0
- package/plugins/specweave/lib/vendor/utils/chalk-fallback.d.ts +38 -0
- package/plugins/specweave/lib/vendor/utils/chalk-fallback.js +118 -0
- package/plugins/specweave/lib/vendor/utils/chalk-fallback.js.map +1 -0
- package/plugins/specweave/lib/vendor/utils/fs-native.d.ts +179 -0
- package/plugins/specweave/lib/vendor/utils/fs-native.js +319 -0
- package/plugins/specweave/lib/vendor/utils/fs-native.js.map +1 -0
- package/plugins/specweave/skills/code-reviewer/SKILL.md +1 -1
- package/plugins/specweave/skills/docs-updater/SKILL.md +61 -0
- package/plugins/specweave/skills/increment-planner/SKILL.md +10 -335
- package/plugins/specweave/skills/increment-planner/templates/metadata.json +13 -0
- package/plugins/specweave/skills/increment-planner/templates/plan.md +50 -0
- package/plugins/specweave/skills/increment-planner/templates/spec-multi-project.md +86 -0
- package/plugins/specweave/skills/increment-planner/templates/spec-single-project.md +50 -0
- package/plugins/specweave/skills/increment-planner/templates/tasks-multi-project.md +86 -0
- package/plugins/specweave/skills/increment-planner/templates/tasks-single-project.md +48 -0
- package/plugins/specweave-ado/commands/specweave-ado-import-areas.md +358 -0
- package/plugins/specweave-alternatives/skills/architecture-alternatives/SKILL.md +1 -0
- package/plugins/specweave-alternatives/skills/bmad-method/SKILL.md +1 -0
- package/plugins/specweave-core/skills/code-quality/SKILL.md +1 -0
- package/plugins/specweave-core/skills/design-patterns/SKILL.md +1 -0
- package/plugins/specweave-core/skills/software-architecture/SKILL.md +1 -0
- package/plugins/specweave-github/commands/specweave-github-cleanup-duplicates.md +14 -10
- package/plugins/specweave-github/commands/specweave-github-sync.md +57 -0
- package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +68 -0
- package/plugins/specweave-github/lib/github-feature-sync.ts +6 -11
- package/plugins/specweave-github/lib/github-increment-sync-cli.js +343 -0
- package/plugins/specweave-github/lib/github-increment-sync-cli.ts +484 -0
- package/plugins/specweave-github/lib/increment-issue-builder.js +368 -0
- package/plugins/specweave-github/lib/increment-issue-builder.ts +471 -0
- package/plugins/specweave-github/skills/github-issue-standard/SKILL.md +19 -24
- package/plugins/specweave-infrastructure/agents/observability-engineer/AGENT.md +15 -23
- package/plugins/specweave-jira/commands/specweave-jira-import-boards.md +331 -0
- package/plugins/specweave-ml/agents/data-scientist/AGENT.md +16 -20
- package/plugins/specweave-ml/agents/ml-engineer/AGENT.md +18 -19
- package/plugins/specweave-ml/skills/{ml-pipeline-workflow → mlops-dag-builder}/SKILL.md +18 -14
- package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +102 -0
- package/plugins/specweave-ui/skills/browser-automation/SKILL.md +1 -1
- package/plugins/specweave-ui/skills/ui-testing/SKILL.md +10 -122
- package/dist/plugins/specweave-github/lib/epic-content-builder.d.ts +0 -70
- package/dist/plugins/specweave-github/lib/epic-content-builder.d.ts.map +0 -1
- package/dist/plugins/specweave-github/lib/epic-content-builder.js +0 -258
- package/dist/plugins/specweave-github/lib/epic-content-builder.js.map +0 -1
- package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts +0 -83
- package/dist/plugins/specweave-github/lib/github-epic-sync.d.ts.map +0 -1
- package/dist/plugins/specweave-github/lib/github-epic-sync.js +0 -466
- package/dist/plugins/specweave-github/lib/github-epic-sync.js.map +0 -1
- package/plugins/specweave-github/lib/epic-content-builder.js +0 -265
- package/plugins/specweave-github/lib/epic-content-builder.ts +0 -376
- package/plugins/specweave-github/lib/github-epic-sync.js +0 -488
- 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:
|
|
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
|
-
|
|
10
|
+
## ⚠️ Chunking Rule
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Large analyses (EDA + modeling + visualization) = 800+ lines. Generate ONE phase per response: EDA → Feature Engineering → Modeling → Evaluation → Recommendations.
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
## How to Invoke This Agent
|
|
15
15
|
|
|
16
|
-
**
|
|
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
|
|
22
|
-
model: "haiku" // optional: haiku, sonnet, opus
|
|
21
|
+
prompt: "Analyze churn patterns and build predictive model"
|
|
23
22
|
});
|
|
24
23
|
```
|
|
25
24
|
|
|
26
|
-
**
|
|
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
|
-
|
|
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
|
-
|
|
39
|
-
|
|
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
|
|
11
|
+
## ⚠️ Chunking Rule
|
|
10
12
|
|
|
11
|
-
|
|
13
|
+
Large ML pipelines = 1000+ lines. Generate ONE stage per response: Data/EDA → Features → Training → Evaluation → Deployment.
|
|
12
14
|
|
|
13
|
-
##
|
|
15
|
+
## How to Invoke This Agent
|
|
14
16
|
|
|
15
|
-
**
|
|
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
|
|
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
|
-
**
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
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
|
-
**
|
|
33
|
-
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
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
|
-
|
|
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:
|
|
3
|
-
description:
|
|
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
|
-
#
|
|
6
|
+
# MLOps DAG Builder
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Design and implement DAG-based ML pipeline architectures using production orchestration tools.
|
|
9
9
|
|
|
10
10
|
## Overview
|
|
11
11
|
|
|
12
|
-
This skill provides
|
|
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
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
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
|
-
- **
|
|
244
|
-
- **
|
|
245
|
-
- **
|
|
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
|
|
@@ -1105,3 +1105,105 @@
|
|
|
1105
1105
|
[2025-11-26 01:29:07] 🎯 Post-Increment-Completion Hook Triggered
|
|
1106
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
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:
|
|
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
|