@veolab/discoverylab 0.1.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.
- package/.claude-plugin/marketplace.json +15 -0
- package/.claude-plugin/plugin.json +12 -0
- package/.mcp.json +6 -0
- package/README.md +214 -0
- package/assets/applab-discovery.jpeg +0 -0
- package/assets/backgrounds/abstract-colorful-gradient-orange-background.jpg +0 -0
- package/assets/backgrounds/blurred-colorful-luxury-gradient-rainbow-abstract.jpg +0 -0
- package/assets/backgrounds/glowing-neon-moving-continuously-looking-bright.jpg +0 -0
- package/assets/backgrounds/glowing-neon-moving-continuously-looking-bright2.jpg +0 -0
- package/assets/backgrounds/macos-big-sur-apple-layers-fluidic-colorful-wwdc-stock-4096x2304-1455.jpg +0 -0
- package/assets/backgrounds/macos-sierra-mountain-peak-sunset-evening-stock-5k-5120x3684-3987.jpg +0 -0
- package/assets/backgrounds/macos-tahoe-26-5120x2880-22674.jpg +0 -0
- package/assets/backgrounds/macos-tahoe-26-5120x2880-22675.jpg +0 -0
- package/assets/backgrounds/view-of-the-sea-from-the-window-of-an-airplane-2024-10-21-11-25-30-utc.jpg +0 -0
- package/assets/cursor/cursor-blue.png +0 -0
- package/assets/icons/android-head_3D.png +0 -0
- package/assets/icons/apple-logo.png +0 -0
- package/assets/icons/apple-logo.svg +4 -0
- package/assets/icons/claude-ai-icon.svg +1 -0
- package/assets/icons/icons8-apple-intelligence-48.png +0 -0
- package/assets/icons/icons8-apple-intelligence-96.png +0 -0
- package/dist/chunk-7IDQLLBW.js +311 -0
- package/dist/chunk-MLKGABMK.js +9 -0
- package/dist/chunk-MN6LCZHZ.js +1320 -0
- package/dist/chunk-PBHUHSC3.js +6002 -0
- package/dist/chunk-QJXXHOV7.js +205 -0
- package/dist/chunk-SSRXIO2V.js +6822 -0
- package/dist/chunk-VY3BLXBW.js +329 -0
- package/dist/chunk-W3WJGYR6.js +354 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +120 -0
- package/dist/db-IWIL65EX.js +33 -0
- package/dist/gridCompositor-ENKLFPWR.js +409 -0
- package/dist/index.d.ts +1648 -0
- package/dist/index.js +869 -0
- package/dist/ocr-UTWC7537.js +21 -0
- package/dist/server-3FBHBA7L.js +15 -0
- package/dist/server-NM5CKDUU.js +13 -0
- package/dist/setup-27CQAX6K.js +17 -0
- package/dist/tools-75BAPCUM.js +177 -0
- package/package.json +84 -0
- package/skills/generate-assets/SKILL.md +44 -0
- package/skills/mobile-test/SKILL.md +33 -0
- package/skills/open-ui/SKILL.md +24 -0
- package/skills/quick-capture/SKILL.md +28 -0
- package/skills/task-hub/SKILL.md +44 -0
- package/skills/web-test/SKILL.md +41 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
analyzeText,
|
|
3
|
+
checkTesseractAvailable,
|
|
4
|
+
checkVisionAvailable,
|
|
5
|
+
getAvailableOCREngines,
|
|
6
|
+
recognizeText,
|
|
7
|
+
recognizeTextBatch,
|
|
8
|
+
recognizeTextWithTesseract,
|
|
9
|
+
recognizeTextWithVision
|
|
10
|
+
} from "./chunk-W3WJGYR6.js";
|
|
11
|
+
import "./chunk-MLKGABMK.js";
|
|
12
|
+
export {
|
|
13
|
+
analyzeText,
|
|
14
|
+
checkTesseractAvailable,
|
|
15
|
+
checkVisionAvailable,
|
|
16
|
+
getAvailableOCREngines,
|
|
17
|
+
recognizeText,
|
|
18
|
+
recognizeTextBatch,
|
|
19
|
+
recognizeTextWithTesseract,
|
|
20
|
+
recognizeTextWithVision
|
|
21
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import {
|
|
2
|
+
MCPServer,
|
|
3
|
+
createErrorResult,
|
|
4
|
+
createJsonResult,
|
|
5
|
+
createTextResult,
|
|
6
|
+
mcpServer
|
|
7
|
+
} from "./chunk-QJXXHOV7.js";
|
|
8
|
+
import "./chunk-MLKGABMK.js";
|
|
9
|
+
export {
|
|
10
|
+
MCPServer,
|
|
11
|
+
createErrorResult,
|
|
12
|
+
createJsonResult,
|
|
13
|
+
createTextResult,
|
|
14
|
+
mcpServer
|
|
15
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import {
|
|
2
|
+
setupCheckTool,
|
|
3
|
+
setupInitTool,
|
|
4
|
+
setupInstallTool,
|
|
5
|
+
setupStatusTool,
|
|
6
|
+
setupTools
|
|
7
|
+
} from "./chunk-7IDQLLBW.js";
|
|
8
|
+
import "./chunk-QJXXHOV7.js";
|
|
9
|
+
import "./chunk-VY3BLXBW.js";
|
|
10
|
+
import "./chunk-MLKGABMK.js";
|
|
11
|
+
export {
|
|
12
|
+
setupCheckTool,
|
|
13
|
+
setupInitTool,
|
|
14
|
+
setupInstallTool,
|
|
15
|
+
setupStatusTool,
|
|
16
|
+
setupTools
|
|
17
|
+
};
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import {
|
|
2
|
+
analyzeScreenshotTool,
|
|
3
|
+
analyzeTools,
|
|
4
|
+
analyzeVideoTool,
|
|
5
|
+
canvasCompareTool,
|
|
6
|
+
canvasCreateTool,
|
|
7
|
+
canvasDevicesTool,
|
|
8
|
+
canvasHtmlTool,
|
|
9
|
+
canvasPresetsTool,
|
|
10
|
+
canvasSvgTool,
|
|
11
|
+
canvasTools,
|
|
12
|
+
captureEmulatorTool,
|
|
13
|
+
captureScreenTool,
|
|
14
|
+
captureTools,
|
|
15
|
+
driveFolderTool,
|
|
16
|
+
driveLoginTool,
|
|
17
|
+
driveQuickExportTool,
|
|
18
|
+
driveStatusTool,
|
|
19
|
+
driveUploadTool,
|
|
20
|
+
exportBatchTool,
|
|
21
|
+
exportClipboardTool,
|
|
22
|
+
exportConcatTool,
|
|
23
|
+
exportGifTool,
|
|
24
|
+
exportImageTool,
|
|
25
|
+
exportInfoTool,
|
|
26
|
+
exportMockupsTool,
|
|
27
|
+
exportRevealTool,
|
|
28
|
+
exportSequenceTool,
|
|
29
|
+
exportThumbnailTool,
|
|
30
|
+
exportToTool,
|
|
31
|
+
exportTools,
|
|
32
|
+
exportTrimTool,
|
|
33
|
+
exportVideoTool,
|
|
34
|
+
extractFramesTool,
|
|
35
|
+
integrationTools,
|
|
36
|
+
jiraAttachTool,
|
|
37
|
+
jiraCommentTool,
|
|
38
|
+
jiraCreateTool,
|
|
39
|
+
jiraLoginTool,
|
|
40
|
+
jiraQuickExportTool,
|
|
41
|
+
jiraStatusTool,
|
|
42
|
+
listEmulatorsTool,
|
|
43
|
+
maestroGenerateTool,
|
|
44
|
+
maestroRunTool,
|
|
45
|
+
maestroStatusTool,
|
|
46
|
+
maestroStudioTool,
|
|
47
|
+
notionExportTool,
|
|
48
|
+
notionLoginTool,
|
|
49
|
+
notionQuickExportTool,
|
|
50
|
+
notionStatusTool,
|
|
51
|
+
playwrightCodegenTool,
|
|
52
|
+
playwrightDevicesTool,
|
|
53
|
+
playwrightGenerateTool,
|
|
54
|
+
playwrightInstallTool,
|
|
55
|
+
playwrightReportTool,
|
|
56
|
+
playwrightRunTool,
|
|
57
|
+
playwrightStatusTool,
|
|
58
|
+
projectCreateTool,
|
|
59
|
+
projectDeleteTool,
|
|
60
|
+
projectGetTool,
|
|
61
|
+
projectListTool,
|
|
62
|
+
projectSaveTool,
|
|
63
|
+
projectTools,
|
|
64
|
+
startRecordingTool,
|
|
65
|
+
stopRecordingTool,
|
|
66
|
+
taskHubGenerateTool,
|
|
67
|
+
taskHubLinksAddTool,
|
|
68
|
+
taskHubLinksListTool,
|
|
69
|
+
taskHubLinksRemoveTool,
|
|
70
|
+
taskHubMetadataFetchTool,
|
|
71
|
+
taskHubRequirementsGetTool,
|
|
72
|
+
taskHubTestMapGetTool,
|
|
73
|
+
taskHubTestMapToggleTool,
|
|
74
|
+
taskHubTools,
|
|
75
|
+
testDevicesTool,
|
|
76
|
+
testingTools,
|
|
77
|
+
uiOpenTool,
|
|
78
|
+
uiStatusTool,
|
|
79
|
+
uiTools,
|
|
80
|
+
videoInfoTool
|
|
81
|
+
} from "./chunk-SSRXIO2V.js";
|
|
82
|
+
import "./chunk-W3WJGYR6.js";
|
|
83
|
+
import {
|
|
84
|
+
setupCheckTool,
|
|
85
|
+
setupInitTool,
|
|
86
|
+
setupStatusTool,
|
|
87
|
+
setupTools
|
|
88
|
+
} from "./chunk-7IDQLLBW.js";
|
|
89
|
+
import "./chunk-QJXXHOV7.js";
|
|
90
|
+
import "./chunk-MN6LCZHZ.js";
|
|
91
|
+
import "./chunk-VY3BLXBW.js";
|
|
92
|
+
import "./chunk-MLKGABMK.js";
|
|
93
|
+
export {
|
|
94
|
+
analyzeScreenshotTool,
|
|
95
|
+
analyzeTools,
|
|
96
|
+
analyzeVideoTool,
|
|
97
|
+
canvasCompareTool,
|
|
98
|
+
canvasCreateTool,
|
|
99
|
+
canvasDevicesTool,
|
|
100
|
+
canvasHtmlTool,
|
|
101
|
+
canvasPresetsTool,
|
|
102
|
+
canvasSvgTool,
|
|
103
|
+
canvasTools,
|
|
104
|
+
captureEmulatorTool,
|
|
105
|
+
captureScreenTool,
|
|
106
|
+
captureTools,
|
|
107
|
+
driveFolderTool,
|
|
108
|
+
driveLoginTool,
|
|
109
|
+
driveQuickExportTool,
|
|
110
|
+
driveStatusTool,
|
|
111
|
+
driveUploadTool,
|
|
112
|
+
exportBatchTool,
|
|
113
|
+
exportClipboardTool,
|
|
114
|
+
exportConcatTool,
|
|
115
|
+
exportGifTool,
|
|
116
|
+
exportImageTool,
|
|
117
|
+
exportInfoTool,
|
|
118
|
+
exportMockupsTool,
|
|
119
|
+
exportRevealTool,
|
|
120
|
+
exportSequenceTool,
|
|
121
|
+
exportThumbnailTool,
|
|
122
|
+
exportToTool,
|
|
123
|
+
exportTools,
|
|
124
|
+
exportTrimTool,
|
|
125
|
+
exportVideoTool,
|
|
126
|
+
extractFramesTool,
|
|
127
|
+
integrationTools,
|
|
128
|
+
jiraAttachTool,
|
|
129
|
+
jiraCommentTool,
|
|
130
|
+
jiraCreateTool,
|
|
131
|
+
jiraLoginTool,
|
|
132
|
+
jiraQuickExportTool,
|
|
133
|
+
jiraStatusTool,
|
|
134
|
+
listEmulatorsTool,
|
|
135
|
+
maestroGenerateTool,
|
|
136
|
+
maestroRunTool,
|
|
137
|
+
maestroStatusTool,
|
|
138
|
+
maestroStudioTool,
|
|
139
|
+
notionExportTool,
|
|
140
|
+
notionLoginTool,
|
|
141
|
+
notionQuickExportTool,
|
|
142
|
+
notionStatusTool,
|
|
143
|
+
playwrightCodegenTool,
|
|
144
|
+
playwrightDevicesTool,
|
|
145
|
+
playwrightGenerateTool,
|
|
146
|
+
playwrightInstallTool,
|
|
147
|
+
playwrightReportTool,
|
|
148
|
+
playwrightRunTool,
|
|
149
|
+
playwrightStatusTool,
|
|
150
|
+
projectCreateTool,
|
|
151
|
+
projectDeleteTool,
|
|
152
|
+
projectGetTool,
|
|
153
|
+
projectListTool,
|
|
154
|
+
projectSaveTool,
|
|
155
|
+
projectTools,
|
|
156
|
+
setupCheckTool,
|
|
157
|
+
setupInitTool,
|
|
158
|
+
setupStatusTool,
|
|
159
|
+
setupTools,
|
|
160
|
+
startRecordingTool,
|
|
161
|
+
stopRecordingTool,
|
|
162
|
+
taskHubGenerateTool,
|
|
163
|
+
taskHubLinksAddTool,
|
|
164
|
+
taskHubLinksListTool,
|
|
165
|
+
taskHubLinksRemoveTool,
|
|
166
|
+
taskHubMetadataFetchTool,
|
|
167
|
+
taskHubRequirementsGetTool,
|
|
168
|
+
taskHubTestMapGetTool,
|
|
169
|
+
taskHubTestMapToggleTool,
|
|
170
|
+
taskHubTools,
|
|
171
|
+
testDevicesTool,
|
|
172
|
+
testingTools,
|
|
173
|
+
uiOpenTool,
|
|
174
|
+
uiStatusTool,
|
|
175
|
+
uiTools,
|
|
176
|
+
videoInfoTool
|
|
177
|
+
};
|
package/package.json
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@veolab/discoverylab",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "AI-powered app testing & evidence generator - Claude Code Plugin",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"bin": {
|
|
8
|
+
"discoverylab": "dist/cli.js"
|
|
9
|
+
},
|
|
10
|
+
"scripts": {
|
|
11
|
+
"dev": "tsx watch src/cli.ts serve",
|
|
12
|
+
"build": "tsup src/index.ts src/cli.ts --format esm --dts",
|
|
13
|
+
"start": "node dist/cli.js serve",
|
|
14
|
+
"mcp": "node dist/index.js"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"claude",
|
|
18
|
+
"mcp",
|
|
19
|
+
"plugin",
|
|
20
|
+
"app-testing",
|
|
21
|
+
"evidence",
|
|
22
|
+
"mockup",
|
|
23
|
+
"screen-recording",
|
|
24
|
+
"maestro",
|
|
25
|
+
"playwright",
|
|
26
|
+
"ai"
|
|
27
|
+
],
|
|
28
|
+
"author": "Anderson Melo",
|
|
29
|
+
"license": "MIT",
|
|
30
|
+
"repository": {
|
|
31
|
+
"type": "git",
|
|
32
|
+
"url": "https://github.com/veolab/applab-discovery.git"
|
|
33
|
+
},
|
|
34
|
+
"engines": {
|
|
35
|
+
"node": ">=20.0.0"
|
|
36
|
+
},
|
|
37
|
+
"dependencies": {
|
|
38
|
+
"@anthropic-ai/sdk": "^0.30.0",
|
|
39
|
+
"@hono/node-server": "^1.19.9",
|
|
40
|
+
"@types/ws": "^8.18.1",
|
|
41
|
+
"better-sqlite3": "^11.0.0",
|
|
42
|
+
"canvas": "^3.2.1",
|
|
43
|
+
"chalk": "^5.3.0",
|
|
44
|
+
"commander": "^12.0.0",
|
|
45
|
+
"drizzle-orm": "^0.35.0",
|
|
46
|
+
"hono": "^4.0.0",
|
|
47
|
+
"open": "^10.0.0",
|
|
48
|
+
"playwright": "^1.57.0",
|
|
49
|
+
"three": "^0.170.0",
|
|
50
|
+
"ws": "^8.19.0",
|
|
51
|
+
"zod": "^3.23.0"
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"@types/better-sqlite3": "^7.6.0",
|
|
55
|
+
"@types/node": "^20.0.0",
|
|
56
|
+
"@types/three": "^0.170.0",
|
|
57
|
+
"drizzle-kit": "^0.26.0",
|
|
58
|
+
"tsup": "^8.0.0",
|
|
59
|
+
"tsx": "^4.0.0",
|
|
60
|
+
"typescript": "^5.4.0"
|
|
61
|
+
},
|
|
62
|
+
"claude-plugin": {
|
|
63
|
+
"name": "DiscoveryLab",
|
|
64
|
+
"description": "AI-powered app testing & evidence generator",
|
|
65
|
+
"version": "0.1.0",
|
|
66
|
+
"tools": [
|
|
67
|
+
"dlab.capture.screen",
|
|
68
|
+
"dlab.capture.emulator",
|
|
69
|
+
"dlab.analyze.video",
|
|
70
|
+
"dlab.analyze.screenshot",
|
|
71
|
+
"dlab.canvas.create",
|
|
72
|
+
"dlab.canvas.export",
|
|
73
|
+
"dlab.maestro.run",
|
|
74
|
+
"dlab.playwright.run",
|
|
75
|
+
"dlab.ui.open",
|
|
76
|
+
"dlab.project.list",
|
|
77
|
+
"dlab.project.create",
|
|
78
|
+
"dlab.project.save",
|
|
79
|
+
"dlab.project.export",
|
|
80
|
+
"dlab.setup.status",
|
|
81
|
+
"dlab.setup.install"
|
|
82
|
+
]
|
|
83
|
+
}
|
|
84
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: generate-assets
|
|
3
|
+
description: Generate marketing assets from app screenshots
|
|
4
|
+
context: fork
|
|
5
|
+
agent: general-purpose
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Generate Marketing Assets
|
|
9
|
+
|
|
10
|
+
Create professional marketing assets from captured app screenshots and recordings.
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
1. **Select Project**: Use `dlab.project.list` to find project with captures
|
|
15
|
+
2. **Review Frames**: Analyze available screenshots and extracted frames
|
|
16
|
+
3. **Generate Assets**: Create marketing materials:
|
|
17
|
+
- App Store screenshots with device frames
|
|
18
|
+
- Feature highlight images
|
|
19
|
+
- Social media banners
|
|
20
|
+
- Documentation screenshots
|
|
21
|
+
4. **Export**: Use `dlab.project.export` to save final assets
|
|
22
|
+
|
|
23
|
+
## Asset Types
|
|
24
|
+
|
|
25
|
+
### App Store Screenshots
|
|
26
|
+
- iPhone/iPad device frames
|
|
27
|
+
- Android device frames
|
|
28
|
+
- Custom backgrounds and captions
|
|
29
|
+
|
|
30
|
+
### Marketing Materials
|
|
31
|
+
- Feature spotlights
|
|
32
|
+
- Before/after comparisons
|
|
33
|
+
- UI walkthrough sequences
|
|
34
|
+
|
|
35
|
+
### Documentation
|
|
36
|
+
- User guide screenshots
|
|
37
|
+
- Help center images
|
|
38
|
+
- Release notes visuals
|
|
39
|
+
|
|
40
|
+
## Integration
|
|
41
|
+
|
|
42
|
+
- Export to Notion with `dlab.notion.export`
|
|
43
|
+
- Upload to Google Drive with `dlab.drive.upload`
|
|
44
|
+
- Attach to Jira tickets with `dlab.jira.attach`
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mobile-test
|
|
3
|
+
description: Full mobile testing workflow with Maestro recording
|
|
4
|
+
context: fork
|
|
5
|
+
agent: general-purpose
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Mobile Test Workflow
|
|
9
|
+
|
|
10
|
+
Complete mobile app testing workflow using Maestro for iOS/Android automation and recording.
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
1. **Setup Check**: Use `dlab.setup.status` to verify dependencies (Maestro, emulators)
|
|
15
|
+
2. **Project Setup**: Create or select project with `dlab.project.create` or `dlab.project.list`
|
|
16
|
+
3. **Start Recording**: Begin recording with `dlab.capture.start`
|
|
17
|
+
4. **Guide Testing**: Help user through app interactions while recording
|
|
18
|
+
5. **Stop Recording**: End recording with `dlab.capture.stop`
|
|
19
|
+
6. **Process Results**: Frames are extracted and analyzed automatically
|
|
20
|
+
7. **Generate Tests**: Use `dlab.taskhub.generate` to create test cases from recording
|
|
21
|
+
|
|
22
|
+
## Prerequisites
|
|
23
|
+
|
|
24
|
+
- iOS Simulator or Android Emulator running
|
|
25
|
+
- Maestro CLI installed (`brew install maestro`)
|
|
26
|
+
- App under test launched on emulator
|
|
27
|
+
|
|
28
|
+
## Output
|
|
29
|
+
|
|
30
|
+
- Extracted frames with OCR analysis
|
|
31
|
+
- AI-generated test cases
|
|
32
|
+
- Requirements documentation
|
|
33
|
+
- Evidence for QA/stakeholders
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: open-ui
|
|
3
|
+
description: Open the DiscoveryLab web interface
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
allowed-tools: dlab.ui.open, dlab.ui.status
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Open DiscoveryLab UI
|
|
9
|
+
|
|
10
|
+
Opens the DiscoveryLab web interface in your default browser.
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
1. Check if server is running with `dlab.ui.status`
|
|
15
|
+
2. If not running, start server and open UI with `dlab.ui.open`
|
|
16
|
+
3. Return the URL to the user
|
|
17
|
+
|
|
18
|
+
## Usage
|
|
19
|
+
|
|
20
|
+
This skill provides quick access to the DiscoveryLab dashboard where you can:
|
|
21
|
+
- Manage projects
|
|
22
|
+
- View captured screenshots and recordings
|
|
23
|
+
- Configure settings
|
|
24
|
+
- Access the Task Hub
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: quick-capture
|
|
3
|
+
description: Quickly capture iOS/Android emulator screen
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
allowed-tools: dlab.capture.emulator, dlab.project.create, dlab.project.list
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Quick Capture
|
|
9
|
+
|
|
10
|
+
Quickly capture the current screen from an iOS Simulator or Android Emulator.
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
1. Use `dlab.capture.emulator` to capture current emulator screen
|
|
15
|
+
2. Optionally use `dlab.project.create` to create a new project with the capture
|
|
16
|
+
3. Return the captured image path to user
|
|
17
|
+
|
|
18
|
+
## Parameters
|
|
19
|
+
|
|
20
|
+
- **platform**: `ios` or `android` (auto-detected if only one is running)
|
|
21
|
+
- **projectId**: Optional - associate capture with existing project
|
|
22
|
+
|
|
23
|
+
## Usage
|
|
24
|
+
|
|
25
|
+
Perfect for:
|
|
26
|
+
- Quick bug documentation
|
|
27
|
+
- UI state capture during development
|
|
28
|
+
- Creating evidence for QA tickets
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-hub
|
|
3
|
+
description: Manage external links, requirements and test maps
|
|
4
|
+
context: fork
|
|
5
|
+
agent: general-purpose
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Task Hub Management
|
|
9
|
+
|
|
10
|
+
Manage external links (Jira, Notion, Figma, GitHub) and generate requirements and test maps.
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
1. **Select Project**: Use `dlab.project.list` to find or create project
|
|
15
|
+
2. **Add Links**: Use `dlab.taskhub.links.add` to connect external resources:
|
|
16
|
+
- Jira tickets for requirements
|
|
17
|
+
- Notion pages for documentation
|
|
18
|
+
- Figma files for designs
|
|
19
|
+
- GitHub issues/PRs for code context
|
|
20
|
+
3. **Fetch Metadata**: Use `dlab.taskhub.metadata.fetch` to extract info from links
|
|
21
|
+
4. **Generate Content**: Use `dlab.taskhub.generate` to create:
|
|
22
|
+
- Requirements list from linked resources
|
|
23
|
+
- Test map with acceptance criteria
|
|
24
|
+
5. **Track Progress**: Use `dlab.taskhub.testmap.toggle` to mark tests complete
|
|
25
|
+
|
|
26
|
+
## Link Types
|
|
27
|
+
|
|
28
|
+
| Type | Extracted Info |
|
|
29
|
+
|------|----------------|
|
|
30
|
+
| Jira | Ticket key, title, description, status |
|
|
31
|
+
| Notion | Page title, content summary |
|
|
32
|
+
| Figma | File name, frame names, comments |
|
|
33
|
+
| GitHub | Issue/PR title, description, labels |
|
|
34
|
+
|
|
35
|
+
## Tools
|
|
36
|
+
|
|
37
|
+
- `dlab.taskhub.links.list` - View all linked resources
|
|
38
|
+
- `dlab.taskhub.links.add` - Add new external link
|
|
39
|
+
- `dlab.taskhub.links.remove` - Remove a link
|
|
40
|
+
- `dlab.taskhub.metadata.fetch` - Fetch URL metadata
|
|
41
|
+
- `dlab.taskhub.generate` - Generate requirements & tests
|
|
42
|
+
- `dlab.taskhub.requirements.get` - Get requirements list
|
|
43
|
+
- `dlab.taskhub.testmap.get` - Get test checklist
|
|
44
|
+
- `dlab.taskhub.testmap.toggle` - Toggle test completion
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: web-test
|
|
3
|
+
description: Web testing workflow with Playwright recording
|
|
4
|
+
context: fork
|
|
5
|
+
agent: general-purpose
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Web Test Workflow
|
|
9
|
+
|
|
10
|
+
Complete web application testing workflow using Playwright for browser automation and recording.
|
|
11
|
+
|
|
12
|
+
## Workflow
|
|
13
|
+
|
|
14
|
+
1. **Setup Check**: Use `dlab.setup.status` to verify Playwright is installed
|
|
15
|
+
2. **Project Setup**: Create or select project with `dlab.project.create` or `dlab.project.list`
|
|
16
|
+
3. **Start Recording**: Launch browser and begin recording with web recording tools
|
|
17
|
+
4. **Guide Testing**: Help user navigate the web application while capturing interactions
|
|
18
|
+
5. **Stop Recording**: End recording and save video
|
|
19
|
+
6. **Process Results**: Extract frames and analyze with AI
|
|
20
|
+
7. **Generate Tests**: Create Playwright test scripts from recorded interactions
|
|
21
|
+
|
|
22
|
+
## Prerequisites
|
|
23
|
+
|
|
24
|
+
- Node.js 20+
|
|
25
|
+
- Playwright installed (`npx playwright install`)
|
|
26
|
+
- Target URL accessible
|
|
27
|
+
|
|
28
|
+
## Features
|
|
29
|
+
|
|
30
|
+
- Uses user's installed Chrome (not bundled Chromium)
|
|
31
|
+
- Configurable viewport sizes
|
|
32
|
+
- Network request capture
|
|
33
|
+
- Console log capture
|
|
34
|
+
- Video recording with frame extraction
|
|
35
|
+
|
|
36
|
+
## Output
|
|
37
|
+
|
|
38
|
+
- Recorded video of session
|
|
39
|
+
- Extracted key frames
|
|
40
|
+
- Generated Playwright test scripts
|
|
41
|
+
- Requirements and test documentation
|