@monoes/monomindcli 1.10.31 → 1.10.33

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.
@@ -1,8 +1,7 @@
1
1
  ---
2
2
  name: agent-browser-testing
3
- description: UI testing and task walkthrough using agent-browserinstall, navigate, test golden paths, report issues, and help users accomplish tasks through any web UI. Delegates to monomind:browse for full feature coverage.
4
- version: 2.0.0
5
- delegates_to: monomind:browse
3
+ description: UI testing and task walkthrough using the native monomind browse command — navigate, test golden paths, report issues, and help users accomplish tasks through any web UI.
4
+ version: 3.0.0
6
5
  triggers:
7
6
  - /ui-test
8
7
  - /browse
@@ -31,23 +30,11 @@ triggers:
31
30
  - submit the form
32
31
  tools:
33
32
  - Bash
34
- requires:
35
- - agent-browser >= 0.25.4
36
33
  ---
37
34
 
38
- # UI Testing with agent-browser
35
+ # UI Testing with monomind browse
39
36
 
40
- Automated UI testing and guided task walkthroughs using `agent-browser`. Use this skill whenever a system's UI needs to be tested, explored, or used to accomplish a task.
41
-
42
- ## Setup (Run Once)
43
-
44
- ```bash
45
- # Install or upgrade agent-browser
46
- npm install -g agent-browser
47
-
48
- # Verify install
49
- agent-browser --version
50
- ```
37
+ Automated UI testing and guided task walkthroughs using the native `monomind browse` command (TypeScript CDP client, no external binary required).
51
38
 
52
39
  ## Core Testing Workflow
53
40
 
@@ -59,187 +46,173 @@ OPEN → SNAPSHOT → ACT → SNAPSHOT → VERIFY → REPEAT
59
46
 
60
47
  ```bash
61
48
  # 1. Open the target UI
62
- agent-browser open <url>
49
+ npx monomind browse open <url>
63
50
 
64
51
  # 2. Get interactive elements (93% less context than full DOM)
65
- agent-browser snapshot -i
52
+ npx monomind browse snapshot -i
66
53
 
67
54
  # 3. Act using element refs from snapshot output
68
- agent-browser click @e1 # click by ref
69
- agent-browser fill @e2 "value" # fill input by ref
70
- agent-browser press Enter # keyboard actions
55
+ npx monomind browse click @e1 # click by ref
56
+ npx monomind browse fill @e2 "value" # fill input by ref
57
+ npx monomind browse press Enter # keyboard actions
71
58
 
72
59
  # 4. Re-snapshot to see result
73
- agent-browser snapshot -i
60
+ npx monomind browse snapshot -i
74
61
 
75
62
  # 5. Verify expected state
76
- agent-browser get text @e5 # read content
77
- agent-browser get url # check URL changed
78
- agent-browser wait --text "Success" # wait for expected text
63
+ npx monomind browse get text @e5 # read element text
64
+ npx monomind browse get url # check URL changed
65
+ npx monomind browse wait --text "Success" # wait for expected text
66
+ npx monomind browse errors # check for JS errors
79
67
  ```
80
68
 
81
69
  ## Test Phases
82
70
 
83
71
  ### Phase 1 — Discovery
84
72
  ```bash
85
- agent-browser open <url>
86
- agent-browser snapshot # full tree to understand structure
87
- agent-browser get title
88
- agent-browser get url
73
+ npx monomind browse open <url>
74
+ npx monomind browse snapshot # full tree to understand structure
75
+ npx monomind browse get title
76
+ npx monomind browse get url
89
77
  ```
90
78
 
91
79
  ### Phase 2 — Golden Path Testing
92
- Test the main happy-path flows a user would take:
93
-
94
80
  ```bash
95
81
  # Example: Login flow
96
- agent-browser open https://app.example.com/login
97
- agent-browser snapshot -i
82
+ npx monomind browse open https://app.example.com/login
83
+ npx monomind browse snapshot -i
98
84
  # Identify: email input @e1, password @e2, submit @e3
99
- agent-browser fill @e1 "test@example.com"
100
- agent-browser fill @e2 "password123"
101
- agent-browser click @e3
102
- agent-browser wait --url "**/dashboard"
103
- agent-browser snapshot -i
85
+ npx monomind browse fill @e1 "test@example.com"
86
+ npx monomind browse fill @e2 "password123"
87
+ npx monomind browse click @e3
88
+ npx monomind browse wait --url "**/dashboard"
89
+ npx monomind browse snapshot -i
104
90
  # Verify dashboard loaded
105
91
  ```
106
92
 
107
93
  ### Phase 3 — Edge Case Testing
108
94
  ```bash
109
95
  # Empty form submission
110
- agent-browser click @e3 # submit with empty fields
111
- agent-browser wait --text "required" # expect validation error
112
- agent-browser snapshot -i
96
+ npx monomind browse click @e3 # submit with empty fields
97
+ npx monomind browse wait --text "required" # expect validation error
98
+ npx monomind browse snapshot -i
113
99
 
114
100
  # Invalid input
115
- agent-browser fill @e1 "not-an-email"
116
- agent-browser click @e3
117
- agent-browser snapshot -i
118
-
119
- # Boundary values
120
- agent-browser fill @e1 "" # empty
121
- agent-browser fill @e1 "a".repeat(256) # too long (via JS)
101
+ npx monomind browse fill @e1 "not-an-email"
102
+ npx monomind browse click @e3
103
+ npx monomind browse snapshot -i
104
+
105
+ # Check element states
106
+ npx monomind browse is visible @e5
107
+ npx monomind browse is enabled @e3
108
+ npx monomind browse is checked @e7
122
109
  ```
123
110
 
124
111
  ### Phase 4 — Navigation & Accessibility
125
112
  ```bash
126
113
  # Tab through all focusable elements
127
- agent-browser press Tab
128
- agent-browser snapshot -i
129
- agent-browser press Tab
130
- # ... repeat checking focus state
114
+ npx monomind browse press Tab
115
+ npx monomind browse snapshot -i
131
116
 
132
117
  # Check all links work
133
- agent-browser find role link
134
- agent-browser snapshot -i
118
+ npx monomind browse find role link
135
119
 
136
120
  # Check page at mobile width
137
- agent-browser resize 375 812
138
- agent-browser snapshot -i
121
+ npx monomind browse set device "iPhone 14"
122
+ npx monomind browse snapshot -i
123
+
124
+ # Check dark mode
125
+ npx monomind browse set media dark
126
+ npx monomind browse screenshot dark-mode.png
139
127
  ```
140
128
 
141
129
  ### Phase 5 — Report Issues
142
130
  After testing, summarize:
143
131
  ```
144
- PASS: <what worked>
145
- FAIL: <what broke> — steps to reproduce
146
- ⚠️ WARN: <what looks odd but didn't break>
132
+ PASS: <what worked>
133
+ FAIL: <what broke> — steps to reproduce
134
+ WARN: <what looks odd but didn't break>
147
135
  ```
148
136
 
149
137
  ## Common Test Patterns
150
138
 
151
139
  ### Login / Auth
152
140
  ```bash
153
- agent-browser open <login-url>
154
- agent-browser snapshot -i
155
- agent-browser fill @e[email-input] "user@test.com"
156
- agent-browser fill @e[password-input] "TestPass123!"
157
- agent-browser click @e[submit-button]
158
- agent-browser wait --url "**/dashboard" --timeout 5000
141
+ npx monomind browse open <login-url>
142
+ npx monomind browse snapshot -i
143
+ npx monomind browse fill @e1 "user@test.com"
144
+ npx monomind browse fill @e2 "TestPass123!"
145
+ npx monomind browse click @e3
146
+ npx monomind browse wait --url "**/dashboard" --timeout 5000
147
+ npx monomind browse errors
159
148
  ```
160
149
 
161
150
  ### Form Submission
162
151
  ```bash
163
- agent-browser open <form-url>
164
- agent-browser snapshot -i
165
- # Fill all required fields using refs from snapshot
166
- agent-browser fill @e1 "John Doe"
167
- agent-browser fill @e2 "john@test.com"
168
- agent-browser select @e3 "Option A"
169
- agent-browser check @e4 # checkbox
170
- agent-browser click @e5 # submit
171
- agent-browser wait --text "submitted"
172
- agent-browser screenshot test-result.png
152
+ npx monomind browse open <form-url>
153
+ npx monomind browse snapshot -i
154
+ npx monomind browse fill @e1 "John Doe"
155
+ npx monomind browse fill @e2 "john@test.com"
156
+ npx monomind browse select @e3 "Option A"
157
+ npx monomind browse check @e4
158
+ npx monomind browse click @e5
159
+ npx monomind browse wait --text "submitted"
160
+ npx monomind browse screenshot test-result.png
173
161
  ```
174
162
 
175
163
  ### Multi-Step Wizard
176
164
  ```bash
177
- # Step 1
178
- agent-browser open <wizard-url>
179
- agent-browser snapshot -i
180
- agent-browser fill @e1 "value"
181
- agent-browser click @e[next]
182
- agent-browser wait --text "Step 2"
183
-
184
- # Step 2
185
- agent-browser snapshot -i
186
- agent-browser select @e2 "choice"
187
- agent-browser click @e[next]
188
-
189
- # Final step verify summary
190
- agent-browser snapshot -i
191
- agent-browser get text @e[summary]
192
- agent-browser click @e[confirm]
193
- agent-browser wait --text "Complete"
165
+ npx monomind browse open <wizard-url>
166
+ npx monomind browse snapshot -i
167
+ npx monomind browse fill @e1 "value"
168
+ npx monomind browse click @e2
169
+ npx monomind browse wait --text "Step 2"
170
+
171
+ npx monomind browse snapshot -i
172
+ npx monomind browse select @e3 "choice"
173
+ npx monomind browse click @e4
174
+
175
+ npx monomind browse snapshot -i
176
+ npx monomind browse get text @e5
177
+ npx monomind browse click @e6
178
+ npx monomind browse wait --text "Complete"
194
179
  ```
195
180
 
196
181
  ### CRUD Operations
197
182
  ```bash
198
183
  # Create
199
- agent-browser click @e[add-button]
200
- agent-browser fill @e[name-field] "New Item"
201
- agent-browser click @e[save]
202
- agent-browser wait --text "New Item" # appears in list
203
-
204
- # Read
205
- agent-browser get text @e[item-name]
184
+ npx monomind browse click @e1
185
+ npx monomind browse fill @e2 "New Item"
186
+ npx monomind browse click @e3
187
+ npx monomind browse wait --text "New Item"
206
188
 
207
189
  # Update
208
- agent-browser click @e[edit-button]
209
- agent-browser fill @e[name-field] "Updated Item"
210
- agent-browser click @e[save]
190
+ npx monomind browse find text "Edit" click
191
+ npx monomind browse fill @e2 "Updated Item"
192
+ npx monomind browse click @e3
211
193
 
212
194
  # Delete
213
- agent-browser click @e[delete-button]
214
- agent-browser wait --text "Are you sure"
215
- agent-browser click @e[confirm-delete]
216
- agent-browser wait --not-text "Updated Item"
217
- ```
218
-
219
- ### API + UI Combination
220
- ```bash
221
- # Trigger action via UI, verify via snapshot
222
- agent-browser click @e[send-button]
223
- agent-browser wait --text "Sent" --timeout 10000
224
- agent-browser screenshot after-send.png
195
+ npx monomind browse find text "Delete" click
196
+ npx monomind browse wait --text "Are you sure"
197
+ npx monomind browse click @e4
198
+ npx monomind browse wait --load networkidle
225
199
  ```
226
200
 
227
201
  ## Selectors Reference
228
202
 
229
203
  Prefer element refs from snapshots — they're deterministic:
230
204
  ```bash
231
- agent-browser snapshot -i
232
- # Output: button "Submit" [ref=e4]
233
- agent-browser click @e4 # use the ref
205
+ npx monomind browse snapshot -i
206
+ # Output: button "Submit" [@e4]
207
+ npx monomind browse click @e4
234
208
  ```
235
209
 
236
- Fallback selectors:
210
+ Semantic locators (no CSS needed):
237
211
  ```bash
238
- agent-browser click "#submit-btn" # CSS id
239
- agent-browser fill ".email-input" "test" # CSS class
240
- agent-browser find role button click --name "Submit" # ARIA role
241
- agent-browser find label "Email" fill "test" # label text
242
- agent-browser find testid "submit-btn" click # data-testid
212
+ npx monomind browse find role button click --name "Submit"
213
+ npx monomind browse find label "Email" fill "test@example.com"
214
+ npx monomind browse find text "Delete" click
215
+ npx monomind browse find testid "submit-btn" click
243
216
  ```
244
217
 
245
218
  ## Task Walkthrough Mode
@@ -254,60 +227,85 @@ When helping a user accomplish a task in a UI:
254
227
  6. **Confirm completion** — show what changed
255
228
 
256
229
  ```bash
257
- # Example: "Help me create a new project in the app"
258
- agent-browser open https://app.example.com
259
- agent-browser snapshot -i
230
+ npx monomind browse open https://app.example.com
231
+ npx monomind browse snapshot -i
260
232
  # → "I can see: navbar with 'New Project' button at @e3, project list below"
261
- agent-browser click @e3
262
- agent-browser snapshot -i
233
+ npx monomind browse click @e3
234
+ npx monomind browse snapshot -i
263
235
  # → "Modal opened with: Name field @e8, Template selector @e9, Create button @e11"
264
- agent-browser fill @e8 "My New Project"
265
- agent-browser click @e11
266
- agent-browser wait --text "My New Project"
236
+ npx monomind browse fill @e8 "My New Project"
237
+ npx monomind browse click @e11
238
+ npx monomind browse wait --text "My New Project"
267
239
  # → "Project created successfully — it now appears in your project list"
268
240
  ```
269
241
 
270
242
  ## Screenshot & Evidence
271
243
 
272
- Always capture screenshots for test reports:
273
244
  ```bash
274
- agent-browser screenshot before-action.png # before
275
- agent-browser click @e[action]
276
- agent-browser screenshot after-action.png # after
245
+ npx monomind browse screenshot before-action.png
246
+ npx monomind browse click @e1
247
+ npx monomind browse screenshot after-action.png
277
248
 
278
249
  # Full page screenshot
279
- agent-browser screenshot --full full-page.png
250
+ npx monomind browse screenshot --full full-page.png
280
251
  ```
281
252
 
282
- ## Integration with Monomind
253
+ ## Advanced Capabilities
283
254
 
284
- ### Store test patterns in memory
285
255
  ```bash
256
+ # Console & error monitoring
257
+ npx monomind browse console
258
+ npx monomind browse errors
259
+
260
+ # Network interception
261
+ npx monomind browse network route --pattern "https://api.*" --abort
262
+
263
+ # Device emulation
264
+ npx monomind browse set device "iPhone 14"
265
+ npx monomind browse set device "Galaxy S21"
266
+
267
+ # Session persistence
268
+ npx monomind browse state save my-session
269
+ npx monomind browse open <url> --session my-session
270
+
271
+ # Drag and drop
272
+ npx monomind browse drag @e1 @e2
273
+
274
+ # File upload
275
+ npx monomind browse upload @e1 ./test-file.pdf
276
+
277
+ # Cookie management
278
+ npx monomind browse cookies list
279
+ npx monomind browse cookies set --name token --value abc123
280
+
281
+ # PDF export
282
+ npx monomind browse pdf ./output.pdf
283
+
284
+ # Batch execution
285
+ npx monomind browse batch "open https://app.com" "snapshot -i" "click @e3"
286
+ ```
287
+
288
+ ## Integration with Monomind Memory
289
+
290
+ ```bash
291
+ # Store successful test patterns
286
292
  npx monomind memory store \
287
293
  --namespace ui-testing \
288
294
  --key "login-flow-<app-name>" \
289
- --value "open→snapshot→fill @email →fill @password →click @submit →wait dashboard"
290
- ```
295
+ --value "open→snapshot -i→fill @e1 email→fill @e2 pass→click @e3→wait dashboard"
291
296
 
292
- ### Retrieve before re-testing
293
- ```bash
297
+ # Retrieve before re-testing
294
298
  npx monomind memory search --query "login flow" --namespace ui-testing
295
299
  ```
296
300
 
297
- ### Report issues as tasks
298
- ```bash
299
- npx monomind task create --title "UI Bug: form submits with empty email" \
300
- --description "Steps: open /login, click submit without filling email — no validation shown"
301
- ```
302
-
303
301
  ## Activation Checklist
304
302
 
305
303
  When this skill is triggered:
306
- - [ ] Confirm `agent-browser` is installed (`agent-browser --version`)
307
304
  - [ ] Get the URL to test (ask user if not provided)
308
- - [ ] Open the URL and take initial snapshot
305
+ - [ ] Run `npx monomind browse open <url>` then `snapshot -i`
309
306
  - [ ] Identify the task or flow to test/accomplish
310
307
  - [ ] Execute the flow step by step
308
+ - [ ] Run `npx monomind browse errors` to check for JS failures
311
309
  - [ ] Report results (pass/fail/warnings)
312
310
  - [ ] Take screenshots of key states
313
311
  - [ ] Store successful patterns in memory for reuse
@@ -11,10 +11,9 @@ triggers:
11
11
  tools:
12
12
  - Bash
13
13
  requires:
14
- - agent-browser >= 0.25.4
14
+ - monomind >= 1.0.0
15
15
  ---
16
16
 
17
- <!-- Pattern adapted from agent-browser — rebranded for monomind -->
18
17
 
19
18
  # AWS Bedrock AgentCore Browser (monomind:browse-agentcore)
20
19
 
@@ -34,13 +33,13 @@ No additional setup needed if AWS credentials are already configured.
34
33
 
35
34
  ```bash
36
35
  # Open a page on an AgentCore cloud browser
37
- agent-browser -p agentcore open https://example.com
36
+ npx monomind browse -p agentcore open https://example.com
38
37
 
39
38
  # Everything else is identical to local Chrome
40
- agent-browser snapshot -i
41
- agent-browser click @e1
42
- agent-browser screenshot page.png
43
- agent-browser close
39
+ npx monomind browse snapshot -i
40
+ npx monomind browse click @e1
41
+ npx monomind browse screenshot page.png
42
+ npx monomind browse close
44
43
  ```
45
44
 
46
45
  ## Environment Variables
@@ -59,10 +58,10 @@ agent-browser close
59
58
  export AGENT_BROWSER_PROVIDER=agentcore
60
59
  export AGENTCORE_REGION=us-east-2
61
60
 
62
- agent-browser open https://example.com
63
- agent-browser snapshot -i
64
- agent-browser click @e1
65
- agent-browser close
61
+ npx monomind browse open https://example.com
62
+ npx monomind browse snapshot -i
63
+ npx monomind browse click @e1
64
+ npx monomind browse close
66
65
  ```
67
66
 
68
67
  ## Persistent Profiles
@@ -71,15 +70,15 @@ Reuse login state across sessions:
71
70
 
72
71
  ```bash
73
72
  # First run — log in
74
- AGENTCORE_PROFILE_ID=my-app agent-browser -p agentcore open https://app.example.com/login
75
- agent-browser snapshot -i
76
- agent-browser fill @e1 "user@example.com"
77
- agent-browser fill @e2 "password"
78
- agent-browser click @e3
79
- agent-browser close
73
+ AGENTCORE_PROFILE_ID=my-app monomind browse -p agentcore open https://app.example.com/login
74
+ npx monomind browse snapshot -i
75
+ npx monomind browse fill @e1 "user@example.com"
76
+ npx monomind browse fill @e2 "password"
77
+ npx monomind browse click @e3
78
+ npx monomind browse close
80
79
 
81
80
  # Future runs — already authenticated
82
- AGENTCORE_PROFILE_ID=my-app agent-browser -p agentcore open https://app.example.com/dashboard
81
+ AGENTCORE_PROFILE_ID=my-app monomind browse -p agentcore open https://app.example.com/dashboard
83
82
  ```
84
83
 
85
84
  ## Credential Patterns
@@ -88,14 +87,14 @@ AGENTCORE_PROFILE_ID=my-app agent-browser -p agentcore open https://app.example.
88
87
  # Explicit (CI/CD)
89
88
  export AWS_ACCESS_KEY_ID=AKIA...
90
89
  export AWS_SECRET_ACCESS_KEY=...
91
- agent-browser -p agentcore open https://example.com
90
+ npx monomind browse -p agentcore open https://example.com
92
91
 
93
92
  # SSO
94
93
  aws sso login --profile my-profile
95
- AWS_PROFILE=my-profile agent-browser -p agentcore open https://example.com
94
+ AWS_PROFILE=my-profile monomind browse -p agentcore open https://example.com
96
95
 
97
96
  # Default credential chain (IAM role, etc.)
98
- agent-browser -p agentcore open https://example.com
97
+ npx monomind browse -p agentcore open https://example.com
99
98
  ```
100
99
 
101
100
  ## Live View