agent-device 0.14.0 → 0.14.2

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.
@@ -285,20 +285,44 @@ extension RunnerTests {
285
285
  }
286
286
 
287
287
  private func tapKeyboardDismissControl(app: XCUIApplication) -> Bool {
288
- for label in ["Hide keyboard", "Dismiss keyboard"] {
288
+ let keyboardFrame = app.keyboards.firstMatch.frame
289
+ for label in ["Hide keyboard", "Dismiss keyboard", "Done"] {
289
290
  let candidates = [
290
291
  app.keyboards.buttons[label],
291
292
  app.keyboards.keys[label],
292
- app.toolbars.buttons[label],
293
+ app.keyboards.toolbars.buttons[label],
293
294
  ]
294
295
  if let hittable = candidates.first(where: { $0.exists && $0.isHittable }) {
295
296
  hittable.tap()
296
297
  return true
297
298
  }
299
+
300
+ let toolbarButtonPredicate = NSPredicate(
301
+ format: "label == %@ OR identifier == %@",
302
+ label,
303
+ label
304
+ )
305
+ let toolbarButtons = app.toolbars.buttons
306
+ .matching(toolbarButtonPredicate)
307
+ .allElementsBoundByIndex
308
+ if let hittable = toolbarButtons.first(where: {
309
+ $0.exists && $0.isHittable && isKeyboardAccessoryControl($0, keyboardFrame: keyboardFrame)
310
+ }) {
311
+ hittable.tap()
312
+ return true
313
+ }
298
314
  }
299
315
  return false
300
316
  }
301
317
 
318
+ private func isKeyboardAccessoryControl(_ element: XCUIElement, keyboardFrame: CGRect) -> Bool {
319
+ let frame = element.frame
320
+ guard !frame.isEmpty && !keyboardFrame.isEmpty else {
321
+ return false
322
+ }
323
+ return frame.intersects(keyboardFrame) || abs(frame.maxY - keyboardFrame.minY) <= 80
324
+ }
325
+
302
326
  private func moveCaretToEnd(element: XCUIElement) {
303
327
  let frame = element.frame
304
328
  guard !frame.isEmpty else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-device",
3
- "version": "0.14.0",
3
+ "version": "0.14.2",
4
4
  "description": "Agent-driven CLI for mobile UI automation, network inspection, and performance diagnostics across iOS, Android, tvOS, and macOS.",
5
5
  "license": "MIT",
6
6
  "author": "Callstack",
@@ -33,6 +33,10 @@
33
33
  "import": "./dist/src/metro.js",
34
34
  "types": "./dist/src/metro.d.ts"
35
35
  },
36
+ "./batch": {
37
+ "import": "./dist/src/batch.js",
38
+ "types": "./dist/src/batch.d.ts"
39
+ },
36
40
  "./remote-config": {
37
41
  "import": "./dist/src/remote-config.js",
38
42
  "types": "./dist/src/remote-config.d.ts"
@@ -151,7 +155,7 @@
151
155
  "performance"
152
156
  ],
153
157
  "dependencies": {
154
- "fast-xml-parser": "^5.5.10",
158
+ "fast-xml-parser": "^5.7.2",
155
159
  "pngjs": "^7.0.0"
156
160
  },
157
161
  "devDependencies": {
@@ -164,6 +168,6 @@
164
168
  "oxlint": "^1.57.0",
165
169
  "skillgym": "^0.5.0",
166
170
  "typescript": "^6.0.2",
167
- "vite": "^8.0.7"
171
+ "vite": "^8.0.10"
168
172
  }
169
173
  }
@@ -11,7 +11,7 @@ Router only. Private setup before using this skill:
11
11
  agent-device --version
12
12
  ```
13
13
 
14
- Require `agent-device >= 0.13.4`; older CLIs lack these help topics. If older, run `npm install -g agent-device@latest`, recheck, then continue. If you cannot upgrade, stop and tell the user. Do not include version/upgrade commands in final plans.
14
+ Require `agent-device >= 0.14.0`; older CLIs lack these help topics. If older, run `npm install -g agent-device@latest`, recheck, then continue. If you cannot upgrade, stop and tell the user. Do not include version/upgrade commands in final plans.
15
15
 
16
16
  Before your first agent-device command or plan, read the version-matched CLI guide:
17
17
 
@@ -31,4 +31,4 @@ agent-device help dogfood
31
31
 
32
32
  Default loop: `open -> snapshot/-i -> get/is/find or press/fill/scroll/wait -> verify -> close`.
33
33
 
34
- Keep refs current, prefer selectors/refs over coordinates, use `fill` to replace text, and use `back` for app-owned navigation. Let `help workflow` provide the exact command shapes.
34
+ Use this skill only to route into version-matched CLI help. Let `help workflow` provide exact command shapes, platform limits, and current workflow guidance.
@@ -12,7 +12,7 @@ Router for exploratory QA. Private setup before using this skill:
12
12
  agent-device --version
13
13
  ```
14
14
 
15
- Require `agent-device >= 0.13.4`; older CLIs lack these help topics. If older, run `npm install -g agent-device@latest`, recheck, then continue. If you cannot upgrade, stop and tell the user. Do not include version/upgrade commands in final plans.
15
+ Require `agent-device >= 0.14.0`; older CLIs lack these help topics. If older, run `npm install -g agent-device@latest`, recheck, then continue. If you cannot upgrade, stop and tell the user. Do not include version/upgrade commands in final plans.
16
16
 
17
17
  Read current CLI guidance:
18
18
 
@@ -22,4 +22,4 @@ agent-device help dogfood
22
22
 
23
23
  Loop: open named session -> snapshot -i + screenshot -> explore flows -> capture evidence per issue -> close.
24
24
 
25
- Target app is required; infer platform or ask. Default output is `./dogfood-output/`. Findings must come from runtime behavior, not source reads. Re-snapshot after mutations. Use logs, network, trace, perf, overlay screenshots, or react-devtools only when they add evidence.
25
+ Target app is required; infer platform or ask. Findings must come from runtime behavior, not source reads. Let `help dogfood` provide exact report shape, evidence commands, and current workflow guidance.
@@ -11,7 +11,7 @@ Router for React Native internals. Private setup before using this skill:
11
11
  agent-device --version
12
12
  ```
13
13
 
14
- Require `agent-device >= 0.13.4`; older CLIs lack these help topics. If older, run `npm install -g agent-device@latest`, recheck, then continue. If you cannot upgrade, stop and tell the user. Do not include version/upgrade commands in final plans.
14
+ Require `agent-device >= 0.14.0`; older CLIs lack these help topics. If older, run `npm install -g agent-device@latest`, recheck, then continue. If you cannot upgrade, stop and tell the user. Do not include version/upgrade commands in final plans.
15
15
 
16
16
  Read current CLI guidance:
17
17
 
@@ -1 +0,0 @@
1
- 0ecde3a1b5ca159a5921cc66ccff3741bfe316a54f2f1ecc91e9d013312a38b0 agent-device-android-snapshot-helper-0.14.0.apk