@swmansion/argent 0.30.2-next.5 → 0.30.2-next.7
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/cli-cmds.mjs
CHANGED
|
@@ -35577,7 +35577,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
35577
35577
|
var SESSION_ID2 = randomUUID5();
|
|
35578
35578
|
function readCliVersion() {
|
|
35579
35579
|
if (true) {
|
|
35580
|
-
return "0.30.2-next.
|
|
35580
|
+
return "0.30.2-next.7";
|
|
35581
35581
|
}
|
|
35582
35582
|
return "0.0.0";
|
|
35583
35583
|
}
|
package/dist/installer.mjs
CHANGED
|
@@ -16899,7 +16899,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
16899
16899
|
var SESSION_ID = randomUUID4();
|
|
16900
16900
|
function readCliVersion() {
|
|
16901
16901
|
if (true) {
|
|
16902
|
-
return "0.30.2-next.
|
|
16902
|
+
return "0.30.2-next.7";
|
|
16903
16903
|
}
|
|
16904
16904
|
return "0.0.0";
|
|
16905
16905
|
}
|
package/dist/mcp-server.mjs
CHANGED
|
@@ -28485,7 +28485,9 @@ var AUTO_SCREENSHOT_TOOLS = /* @__PURE__ */ new Set([
|
|
|
28485
28485
|
"restart-app",
|
|
28486
28486
|
"open-url",
|
|
28487
28487
|
"describe",
|
|
28488
|
-
"run-sequence"
|
|
28488
|
+
"run-sequence",
|
|
28489
|
+
// A wait is almost always followed by a look at the screen it waited for.
|
|
28490
|
+
"await-ui-element"
|
|
28489
28491
|
]);
|
|
28490
28492
|
var AUTO_SCREENSHOT_DELAY_MS_BY_TOOL = {
|
|
28491
28493
|
"launch-app": 3e3,
|
|
@@ -28506,7 +28508,10 @@ var AUTO_SCREENSHOT_DELAY_MS_BY_TOOL = {
|
|
|
28506
28508
|
"fold": 1500,
|
|
28507
28509
|
"keyboard": 300,
|
|
28508
28510
|
"paste": 300,
|
|
28509
|
-
"describe": 100
|
|
28511
|
+
"describe": 100,
|
|
28512
|
+
// The wait returns on the first match, often mid-transition; the cap must
|
|
28513
|
+
// leave `await-screen-idle` room to see two identical reads.
|
|
28514
|
+
"await-ui-element": 1500
|
|
28510
28515
|
};
|
|
28511
28516
|
var DEFAULT_DELAY_MS = 1400;
|
|
28512
28517
|
function autoScreenshotEnabled(options) {
|
|
@@ -28528,7 +28533,8 @@ var AUTO_DESCRIBE_TOOLS = /* @__PURE__ */ new Set([
|
|
|
28528
28533
|
"launch-app",
|
|
28529
28534
|
"restart-app",
|
|
28530
28535
|
"open-url",
|
|
28531
|
-
"run-sequence"
|
|
28536
|
+
"run-sequence",
|
|
28537
|
+
"await-ui-element"
|
|
28532
28538
|
]);
|
|
28533
28539
|
function autoDescribeEnabled(options) {
|
|
28534
28540
|
return !isFlagEnabled("disable-auto-describe", options);
|
package/dist/tool-server.cjs
CHANGED
|
@@ -100944,7 +100944,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
100944
100944
|
var SESSION_ID = (0, import_node_crypto3.randomUUID)();
|
|
100945
100945
|
function readCliVersion() {
|
|
100946
100946
|
if (true) {
|
|
100947
|
-
return "0.30.2-next.
|
|
100947
|
+
return "0.30.2-next.7";
|
|
100948
100948
|
}
|
|
100949
100949
|
return "0.0.0";
|
|
100950
100950
|
}
|
|
@@ -139501,7 +139501,7 @@ Returns { launched, bundleId, note? }. Fails if the app is not installed on the
|
|
|
139501
139501
|
For Chromium, the app is already running behind a CDP port; this call simply refreshes the cached viewport and acknowledges the bundleId tag. To change the visible route, use \`open-url\`.
|
|
139502
139502
|
On Vega (Fire TV), pass the interactive component app id from manifest.toml (e.g. com.example.app.main) as bundleId.
|
|
139503
139503
|
|
|
139504
|
-
Common iOS bundle ids: com.apple.MobileSMS, com.apple.mobilesafari, com.apple.Preferences, com.apple.Maps, com.apple.
|
|
139504
|
+
Common iOS bundle ids: com.apple.MobileSMS, com.apple.mobilesafari, com.apple.Preferences, com.apple.Maps, com.apple.mobileslideshow (Photos), com.apple.MobileAddressBook
|
|
139505
139505
|
Common Android packages: com.android.settings, com.android.chrome, com.google.android.apps.maps, com.google.android.gm, com.android.vending, com.google.android.dialer, com.google.android.apps.messaging`,
|
|
139506
139506
|
alwaysLoad: true,
|
|
139507
139507
|
searchHint: "open start app bundle id package simulator emulator chromium vega launch tvos apple tv fire tv",
|
package/package.json
CHANGED
package/rules/argent.md
CHANGED
|
@@ -37,9 +37,9 @@ If argent is ABSENT, treat it as an expected state, not an error to retry. Do no
|
|
|
37
37
|
|
|
38
38
|
<tapping_rule>
|
|
39
39
|
<important>**Never** derive tap coordinates from screenshot pixels</important>
|
|
40
|
-
Interaction tools (`gesture-tap`, `gesture-swipe`, `keyboard`, `button`, `launch-app`, `open-url`, `run-sequence`, …) return the screen **after** the action: a screenshot AND the accessibility element tree (`--- Elements after action (describe) ---`, the same format `describe` prints, with normalized 0–1 frames). Take tap coordinates from that tree: the centre of the element's frame (`x + width/2`, `y + height/2`). You do not need a separate discovery call before a tap when the last result already lists the target.
|
|
40
|
+
Interaction tools (`gesture-tap`, `gesture-swipe`, `keyboard`, `button`, `launch-app`, `open-url`, `run-sequence`, `await-ui-element`, …) return the screen **after** the action: a screenshot AND the accessibility element tree (`--- Elements after action (describe) ---`, the same format `describe` prints, with normalized 0–1 frames). Take tap coordinates from that tree: the centre of the element's frame (`x + width/2`, `y + height/2`). You do not need a separate discovery call before a tap when the last result already lists the target.
|
|
41
41
|
|
|
42
|
-
Call a discovery tool yourself only when you have no fresh tree for the current screen: before the first action on a screen you have not touched yet, after waiting for something to load
|
|
42
|
+
Call a discovery tool yourself only when you have no fresh tree for the current screen: before the first action on a screen you have not touched yet, after waiting for something to load without `await-ui-element`, or when the last tree did not list your target. Preferred tools are, in order:
|
|
43
43
|
|
|
44
44
|
- `describe` - native app-level components and safely targetable foreground apps (iOS and Android).
|
|
45
45
|
- `native-describe-screen` - accessibility screen description via injected native devtools (iOS only)
|
|
@@ -36,7 +36,7 @@ Use `list-devices` to get a target id. Results are tagged with `platform` (`ios`
|
|
|
36
36
|
{ "udid": "<UDID>", "bundleId": "com.apple.MobileSMS" }
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
-
Common IDs: `com.apple.MobileSMS` (Messages), `com.apple.mobilesafari` (Safari), `com.apple.Preferences` (Settings), `com.apple.Maps`, `com.apple.
|
|
39
|
+
Common IDs: `com.apple.MobileSMS` (Messages), `com.apple.mobilesafari` (Safari), `com.apple.Preferences` (Settings), `com.apple.Maps`, `com.apple.mobileslideshow` (Photos), `com.apple.MobileAddressBook` (Contacts)
|
|
40
40
|
|
|
41
41
|
### open-url: by URL scheme
|
|
42
42
|
|
|
@@ -169,6 +169,8 @@ Values: `home`, `back`, `power`, `volumeUp`, `volumeDown`, `appSwitch`, `actionB
|
|
|
169
169
|
|
|
170
170
|
One call does one action. `text` and `key` are mutually exclusive, and a call that carries both is rejected with nothing typed. To type and then submit, send two `keyboard` steps in one `run-sequence` (§ 8): `{ "text": "search query" }`, then `{ "key": "enter" }`. Two separate calls do the same work, but cost an extra round-trip.
|
|
171
171
|
|
|
172
|
+
**React Native: the first tap after typing may only close the keyboard.** Inside a scroll view with the default `keyboardShouldPersistTaps="never"`, React Native uses a tap outside the focused field to dismiss the keyboard and does not pass it on (with `"handled"` or `"always"` the tap reaches the button), so a button tapped right after typing may need a second tap; check the returned tree. When the field submits on return, `{ "key": "enter" }` avoids the extra tap.
|
|
173
|
+
|
|
172
174
|
Special keys: `enter`, `escape`, `backspace`, `tab`, `space`, `arrow-up`, `arrow-down`, `arrow-left`, `arrow-right`, `f1`–`f12`. Optional: `"delayMs": 100` between keystrokes (default 50ms); applies to the iOS simulator and Chromium; it is ignored on Android phones/tablets (typed via `adb input text`, no per-key cadence), on Vega, and on TV targets.
|
|
173
175
|
|
|
174
176
|
**Typing secrets.** To enter a credential without its plaintext ever entering your context, transcript, or logs, use a secret placeholder in `text` (works in `keyboard`, `paste`, `run-sequence` keyboard steps, and e2e `type` steps):
|
|
@@ -98,8 +98,7 @@ Steps:
|
|
|
98
98
|
```
|
|
99
99
|
1. gesture-tap { x: 0.5, y: 0.7 } → trigger an action that fetches data
|
|
100
100
|
2. screenshot → loading spinner is showing
|
|
101
|
-
3. await-ui-element { condition: hidden, selector: { text: "Loading" } } → block until the fetch finishes and the spinner disappears
|
|
102
|
-
4. describe / screenshot → verify the fetched content rendered
|
|
101
|
+
3. await-ui-element { condition: hidden, selector: { text: "Loading" } } → block until the fetch finishes and the spinner disappears; its result carries the screenshot and element tree, so verify the fetched content rendered from it
|
|
103
102
|
```
|
|
104
103
|
|
|
105
104
|
---
|