@swmansion/argent 0.32.1-next.13 → 0.32.1-next.15
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/README.md +1 -1
- package/bin/argent-android-devtools-0.3.0.apk +0 -0
- package/bin/darwin/argent-macos-helper +0 -0
- package/bin/darwin/ax-service +0 -0
- package/bin/darwin/tvos-ax-service +0 -0
- package/bin/darwin/tvos-hid-daemon +0 -0
- package/bin/network-inspector/network-inspector.jar +0 -0
- package/bin/tcp/ax-service +0 -0
- package/dist/cli-cmds.mjs +36 -3
- package/dist/client.js +32 -0
- package/dist/installer.mjs +31 -2
- package/dist/mcp-server.mjs +54 -11
- package/dist/tool-args.generated.d.ts +76 -42
- package/dist/tool-server.cjs +12094 -8610
- package/dylibs/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/libKeyboardPatch.dylib +0 -0
- package/dylibs/libNativeDevtoolsIos.dylib +0 -0
- package/dylibs/macos/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/macos/libNativeDevtoolsMacos.dylib +0 -0
- package/dylibs/tcp/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/tcp/libKeyboardPatch.dylib +0 -0
- package/dylibs/tcp/libNativeDevtoolsIos.dylib +0 -0
- package/dylibs/tvos/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/tvos/libKeyboardPatch.dylib +0 -0
- package/dylibs/tvos/libNativeDevtoolsIos.dylib +0 -0
- package/package.json +2 -2
- package/rules/argent.md +1 -1
- package/skills/argent-create-e2e/references/e2e-yaml.md +4 -4
- package/skills/argent-device-interact/SKILL.md +2 -1
- package/skills/argent-macos-app-interact/SKILL.md +44 -0
- package/skills/argent-macos-app-interact/references/e2e.md +6 -0
- package/skills/argent-qa-e2e/SKILL.md +1 -1
- package/skills/argent-react-native-app-workflow/SKILL.md +2 -0
- package/skills/argent-react-native-profiler/SKILL.md +2 -2
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
[](https://swm-delivery.com/www/delivery/ck-slug.php?zoneid=zone-gh-argent-2&n=1)
|
|
8
8
|
[](https://swm-delivery.com/www/delivery/ck-slug.php?zoneid=zone-gh-argent-3&n=1)
|
|
9
9
|
|
|
10
|
-
**[Argent](https://argent.swmansion.com)** gives your AI assistant direct control of iOS simulators, Android emulators and devices, TVs (Apple TV, Android TV, Fire TV)
|
|
10
|
+
**[Argent](https://argent.swmansion.com)** gives your AI assistant direct control of iOS simulators, Android emulators and devices, TVs (Apple TV, Android TV, Fire TV), Electron/Chromium apps and native Mac apps. Tap a button, profile a screen, reproduce a bug - without leaving the CLI.
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
13
|
npx @swmansion/argent@latest init # pnpm: pnpm dlx @swmansion/argent@latest init
|
|
Binary file
|
|
Binary file
|
package/bin/darwin/ax-service
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/bin/tcp/ax-service
CHANGED
|
Binary file
|
package/dist/cli-cmds.mjs
CHANGED
|
@@ -9481,6 +9481,10 @@ var FLAG_REGISTRY = [
|
|
|
9481
9481
|
name: "video-watermark",
|
|
9482
9482
|
description: "Overlay the argent corner watermark on recorded screen videos. On by default; turn it off with `argent disable video-watermark`.",
|
|
9483
9483
|
defaultEnabled: true
|
|
9484
|
+
},
|
|
9485
|
+
{
|
|
9486
|
+
name: "macos-apps",
|
|
9487
|
+
description: "Drive native Mac apps (AppKit, SwiftUI, react-native-macos) from inside the app. Adds the macos platform to list-devices and boot-device, and the file-panel and menu-bar tools. Off by default."
|
|
9484
9488
|
}
|
|
9485
9489
|
];
|
|
9486
9490
|
function getFlagDefinition(name, registry2 = FLAG_REGISTRY) {
|
|
@@ -10666,6 +10670,8 @@ var FAILURE_CODES = {
|
|
|
10666
10670
|
REACT_PROFILER_START_FAILED: "REACT_PROFILER_START_FAILED",
|
|
10667
10671
|
REACT_PROFILER_START_VERIFY_FAILED: "REACT_PROFILER_START_VERIFY_FAILED",
|
|
10668
10672
|
REACT_PROFILER_SESSION_TORN_DOWN: "REACT_PROFILER_SESSION_TORN_DOWN",
|
|
10673
|
+
REACT_PROFILER_SESSION_TAKEN_OVER: "REACT_PROFILER_SESSION_TAKEN_OVER",
|
|
10674
|
+
REACT_PROFILER_STOP_IN_PROGRESS: "REACT_PROFILER_STOP_IN_PROGRESS",
|
|
10669
10675
|
REACT_PROFILER_HOOK_ERROR: "REACT_PROFILER_HOOK_ERROR",
|
|
10670
10676
|
REACT_PROFILER_ANALYZE_NO_DATA: "REACT_PROFILER_ANALYZE_NO_DATA",
|
|
10671
10677
|
NATIVE_PROFILER_FACTORY_OPTIONS_MISSING: "NATIVE_PROFILER_FACTORY_OPTIONS_MISSING",
|
|
@@ -10744,6 +10750,32 @@ var FAILURE_CODES = {
|
|
|
10744
10750
|
CHROMIUM_ELECTRON_SPAWN_FAILED: "CHROMIUM_ELECTRON_SPAWN_FAILED",
|
|
10745
10751
|
CHROMIUM_ELECTRON_CDP_TIMEOUT: "CHROMIUM_ELECTRON_CDP_TIMEOUT",
|
|
10746
10752
|
CHROMIUM_ELECTRON_EXITED_BEFORE_READY: "CHROMIUM_ELECTRON_EXITED_BEFORE_READY",
|
|
10753
|
+
/**
|
|
10754
|
+
* Native Mac apps (the `macos-apps` flag)
|
|
10755
|
+
* @see [macos-app.ts](../../tool-server/src/blueprints/macos-app.ts)
|
|
10756
|
+
*/
|
|
10757
|
+
MACOS_APP_UNSUPPORTED_HOST: "MACOS_APP_UNSUPPORTED_HOST",
|
|
10758
|
+
MACOS_APP_PATH_INVALID: "MACOS_APP_PATH_INVALID",
|
|
10759
|
+
MACOS_APP_BUNDLE_INVALID: "MACOS_APP_BUNDLE_INVALID",
|
|
10760
|
+
MACOS_APP_NOT_FOUND: "MACOS_APP_NOT_FOUND",
|
|
10761
|
+
MACOS_APP_HARDENED_RUNTIME: "MACOS_APP_HARDENED_RUNTIME",
|
|
10762
|
+
MACOS_APP_LIBRARY_MISSING: "MACOS_APP_LIBRARY_MISSING",
|
|
10763
|
+
MACOS_APP_LIBRARY_STAGE_FAILED: "MACOS_APP_LIBRARY_STAGE_FAILED",
|
|
10764
|
+
MACOS_APP_ALREADY_RUNNING: "MACOS_APP_ALREADY_RUNNING",
|
|
10765
|
+
MACOS_APP_SPAWN_FAILED: "MACOS_APP_SPAWN_FAILED",
|
|
10766
|
+
MACOS_APP_EXITED_BEFORE_READY: "MACOS_APP_EXITED_BEFORE_READY",
|
|
10767
|
+
MACOS_APP_HANDSHAKE_TIMEOUT: "MACOS_APP_HANDSHAKE_TIMEOUT",
|
|
10768
|
+
MACOS_APP_HANDSHAKE_INVALID: "MACOS_APP_HANDSHAKE_INVALID",
|
|
10769
|
+
MACOS_APP_NOT_RUNNING: "MACOS_APP_NOT_RUNNING",
|
|
10770
|
+
MACOS_APP_NOT_CONNECTED: "MACOS_APP_NOT_CONNECTED",
|
|
10771
|
+
MACOS_APP_CONNECTION_LOST: "MACOS_APP_CONNECTION_LOST",
|
|
10772
|
+
MACOS_APP_CONNECTION_CLOSED: "MACOS_APP_CONNECTION_CLOSED",
|
|
10773
|
+
MACOS_APP_RPC_TIMEOUT: "MACOS_APP_RPC_TIMEOUT",
|
|
10774
|
+
MACOS_APP_RPC_ERROR: "MACOS_APP_RPC_ERROR",
|
|
10775
|
+
MACOS_APP_TERMINATE_FAILED: "MACOS_APP_TERMINATE_FAILED",
|
|
10776
|
+
MACOS_APP_BUNDLE_ID_MISMATCH: "MACOS_APP_BUNDLE_ID_MISMATCH",
|
|
10777
|
+
MACOS_APP_OPEN_URL_FAILED: "MACOS_APP_OPEN_URL_FAILED",
|
|
10778
|
+
MACOS_APP_FILE_ACCESS_FAILED: "MACOS_APP_FILE_ACCESS_FAILED",
|
|
10747
10779
|
KEYBOARD_KEY_UNSUPPORTED: "KEYBOARD_KEY_UNSUPPORTED",
|
|
10748
10780
|
KEYBOARD_CHARACTER_UNSUPPORTED: "KEYBOARD_CHARACTER_UNSUPPORTED",
|
|
10749
10781
|
KEYBOARD_TEXT_AND_KEY_COMBINED: "KEYBOARD_TEXT_AND_KEY_COMBINED",
|
|
@@ -35083,7 +35115,8 @@ var PLATFORMS = [
|
|
|
35083
35115
|
"vega",
|
|
35084
35116
|
"harmony",
|
|
35085
35117
|
"tvos",
|
|
35086
|
-
"android-tv"
|
|
35118
|
+
"android-tv",
|
|
35119
|
+
"macos"
|
|
35087
35120
|
];
|
|
35088
35121
|
var DEVICE_KINDS = [
|
|
35089
35122
|
"simulator",
|
|
@@ -35838,7 +35871,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
35838
35871
|
var SESSION_ID2 = randomUUID5();
|
|
35839
35872
|
function readCliVersion() {
|
|
35840
35873
|
if (true) {
|
|
35841
|
-
return "0.32.1-next.
|
|
35874
|
+
return "0.32.1-next.15";
|
|
35842
35875
|
}
|
|
35843
35876
|
return "0.0.0";
|
|
35844
35877
|
}
|
|
@@ -36944,7 +36977,7 @@ Subcommands:
|
|
|
36944
36977
|
|
|
36945
36978
|
Options (run):
|
|
36946
36979
|
--device <id> Device id to run against (auto-detected when omitted)
|
|
36947
|
-
--platform <p> ios | android | chromium | vega | ios-remote \u2014 narrow
|
|
36980
|
+
--platform <p> ios | android | chromium | vega |${isFlagEnabled("macos-apps") ? " macos |" : ""} ios-remote \u2014 narrow
|
|
36948
36981
|
auto-detection (ios never picks a remote simulator)
|
|
36949
36982
|
--update-baselines Write/refresh screenshot baselines instead of diffing,
|
|
36950
36983
|
also those of tests that tool: e2e-execute steps run,
|
package/dist/client.js
CHANGED
|
@@ -7802,6 +7802,10 @@ var FLAG_REGISTRY = [
|
|
|
7802
7802
|
name: "video-watermark",
|
|
7803
7803
|
description: "Overlay the argent corner watermark on recorded screen videos. On by default; turn it off with `argent disable video-watermark`.",
|
|
7804
7804
|
defaultEnabled: true
|
|
7805
|
+
},
|
|
7806
|
+
{
|
|
7807
|
+
name: "macos-apps",
|
|
7808
|
+
description: "Drive native Mac apps (AppKit, SwiftUI, react-native-macos) from inside the app. Adds the macos platform to list-devices and boot-device, and the file-panel and menu-bar tools. Off by default."
|
|
7805
7809
|
}
|
|
7806
7810
|
];
|
|
7807
7811
|
function getFlagDefinition(name, registry = FLAG_REGISTRY) {
|
|
@@ -9239,6 +9243,8 @@ var FAILURE_CODES = {
|
|
|
9239
9243
|
REACT_PROFILER_START_FAILED: "REACT_PROFILER_START_FAILED",
|
|
9240
9244
|
REACT_PROFILER_START_VERIFY_FAILED: "REACT_PROFILER_START_VERIFY_FAILED",
|
|
9241
9245
|
REACT_PROFILER_SESSION_TORN_DOWN: "REACT_PROFILER_SESSION_TORN_DOWN",
|
|
9246
|
+
REACT_PROFILER_SESSION_TAKEN_OVER: "REACT_PROFILER_SESSION_TAKEN_OVER",
|
|
9247
|
+
REACT_PROFILER_STOP_IN_PROGRESS: "REACT_PROFILER_STOP_IN_PROGRESS",
|
|
9242
9248
|
REACT_PROFILER_HOOK_ERROR: "REACT_PROFILER_HOOK_ERROR",
|
|
9243
9249
|
REACT_PROFILER_ANALYZE_NO_DATA: "REACT_PROFILER_ANALYZE_NO_DATA",
|
|
9244
9250
|
NATIVE_PROFILER_FACTORY_OPTIONS_MISSING: "NATIVE_PROFILER_FACTORY_OPTIONS_MISSING",
|
|
@@ -9317,6 +9323,32 @@ var FAILURE_CODES = {
|
|
|
9317
9323
|
CHROMIUM_ELECTRON_SPAWN_FAILED: "CHROMIUM_ELECTRON_SPAWN_FAILED",
|
|
9318
9324
|
CHROMIUM_ELECTRON_CDP_TIMEOUT: "CHROMIUM_ELECTRON_CDP_TIMEOUT",
|
|
9319
9325
|
CHROMIUM_ELECTRON_EXITED_BEFORE_READY: "CHROMIUM_ELECTRON_EXITED_BEFORE_READY",
|
|
9326
|
+
/**
|
|
9327
|
+
* Native Mac apps (the `macos-apps` flag)
|
|
9328
|
+
* @see [macos-app.ts](../../tool-server/src/blueprints/macos-app.ts)
|
|
9329
|
+
*/
|
|
9330
|
+
MACOS_APP_UNSUPPORTED_HOST: "MACOS_APP_UNSUPPORTED_HOST",
|
|
9331
|
+
MACOS_APP_PATH_INVALID: "MACOS_APP_PATH_INVALID",
|
|
9332
|
+
MACOS_APP_BUNDLE_INVALID: "MACOS_APP_BUNDLE_INVALID",
|
|
9333
|
+
MACOS_APP_NOT_FOUND: "MACOS_APP_NOT_FOUND",
|
|
9334
|
+
MACOS_APP_HARDENED_RUNTIME: "MACOS_APP_HARDENED_RUNTIME",
|
|
9335
|
+
MACOS_APP_LIBRARY_MISSING: "MACOS_APP_LIBRARY_MISSING",
|
|
9336
|
+
MACOS_APP_LIBRARY_STAGE_FAILED: "MACOS_APP_LIBRARY_STAGE_FAILED",
|
|
9337
|
+
MACOS_APP_ALREADY_RUNNING: "MACOS_APP_ALREADY_RUNNING",
|
|
9338
|
+
MACOS_APP_SPAWN_FAILED: "MACOS_APP_SPAWN_FAILED",
|
|
9339
|
+
MACOS_APP_EXITED_BEFORE_READY: "MACOS_APP_EXITED_BEFORE_READY",
|
|
9340
|
+
MACOS_APP_HANDSHAKE_TIMEOUT: "MACOS_APP_HANDSHAKE_TIMEOUT",
|
|
9341
|
+
MACOS_APP_HANDSHAKE_INVALID: "MACOS_APP_HANDSHAKE_INVALID",
|
|
9342
|
+
MACOS_APP_NOT_RUNNING: "MACOS_APP_NOT_RUNNING",
|
|
9343
|
+
MACOS_APP_NOT_CONNECTED: "MACOS_APP_NOT_CONNECTED",
|
|
9344
|
+
MACOS_APP_CONNECTION_LOST: "MACOS_APP_CONNECTION_LOST",
|
|
9345
|
+
MACOS_APP_CONNECTION_CLOSED: "MACOS_APP_CONNECTION_CLOSED",
|
|
9346
|
+
MACOS_APP_RPC_TIMEOUT: "MACOS_APP_RPC_TIMEOUT",
|
|
9347
|
+
MACOS_APP_RPC_ERROR: "MACOS_APP_RPC_ERROR",
|
|
9348
|
+
MACOS_APP_TERMINATE_FAILED: "MACOS_APP_TERMINATE_FAILED",
|
|
9349
|
+
MACOS_APP_BUNDLE_ID_MISMATCH: "MACOS_APP_BUNDLE_ID_MISMATCH",
|
|
9350
|
+
MACOS_APP_OPEN_URL_FAILED: "MACOS_APP_OPEN_URL_FAILED",
|
|
9351
|
+
MACOS_APP_FILE_ACCESS_FAILED: "MACOS_APP_FILE_ACCESS_FAILED",
|
|
9320
9352
|
KEYBOARD_KEY_UNSUPPORTED: "KEYBOARD_KEY_UNSUPPORTED",
|
|
9321
9353
|
KEYBOARD_CHARACTER_UNSUPPORTED: "KEYBOARD_CHARACTER_UNSUPPORTED",
|
|
9322
9354
|
KEYBOARD_TEXT_AND_KEY_COMBINED: "KEYBOARD_TEXT_AND_KEY_COMBINED",
|
package/dist/installer.mjs
CHANGED
|
@@ -16003,6 +16003,8 @@ var FAILURE_CODES = {
|
|
|
16003
16003
|
REACT_PROFILER_START_FAILED: "REACT_PROFILER_START_FAILED",
|
|
16004
16004
|
REACT_PROFILER_START_VERIFY_FAILED: "REACT_PROFILER_START_VERIFY_FAILED",
|
|
16005
16005
|
REACT_PROFILER_SESSION_TORN_DOWN: "REACT_PROFILER_SESSION_TORN_DOWN",
|
|
16006
|
+
REACT_PROFILER_SESSION_TAKEN_OVER: "REACT_PROFILER_SESSION_TAKEN_OVER",
|
|
16007
|
+
REACT_PROFILER_STOP_IN_PROGRESS: "REACT_PROFILER_STOP_IN_PROGRESS",
|
|
16006
16008
|
REACT_PROFILER_HOOK_ERROR: "REACT_PROFILER_HOOK_ERROR",
|
|
16007
16009
|
REACT_PROFILER_ANALYZE_NO_DATA: "REACT_PROFILER_ANALYZE_NO_DATA",
|
|
16008
16010
|
NATIVE_PROFILER_FACTORY_OPTIONS_MISSING: "NATIVE_PROFILER_FACTORY_OPTIONS_MISSING",
|
|
@@ -16081,6 +16083,32 @@ var FAILURE_CODES = {
|
|
|
16081
16083
|
CHROMIUM_ELECTRON_SPAWN_FAILED: "CHROMIUM_ELECTRON_SPAWN_FAILED",
|
|
16082
16084
|
CHROMIUM_ELECTRON_CDP_TIMEOUT: "CHROMIUM_ELECTRON_CDP_TIMEOUT",
|
|
16083
16085
|
CHROMIUM_ELECTRON_EXITED_BEFORE_READY: "CHROMIUM_ELECTRON_EXITED_BEFORE_READY",
|
|
16086
|
+
/**
|
|
16087
|
+
* Native Mac apps (the `macos-apps` flag)
|
|
16088
|
+
* @see [macos-app.ts](../../tool-server/src/blueprints/macos-app.ts)
|
|
16089
|
+
*/
|
|
16090
|
+
MACOS_APP_UNSUPPORTED_HOST: "MACOS_APP_UNSUPPORTED_HOST",
|
|
16091
|
+
MACOS_APP_PATH_INVALID: "MACOS_APP_PATH_INVALID",
|
|
16092
|
+
MACOS_APP_BUNDLE_INVALID: "MACOS_APP_BUNDLE_INVALID",
|
|
16093
|
+
MACOS_APP_NOT_FOUND: "MACOS_APP_NOT_FOUND",
|
|
16094
|
+
MACOS_APP_HARDENED_RUNTIME: "MACOS_APP_HARDENED_RUNTIME",
|
|
16095
|
+
MACOS_APP_LIBRARY_MISSING: "MACOS_APP_LIBRARY_MISSING",
|
|
16096
|
+
MACOS_APP_LIBRARY_STAGE_FAILED: "MACOS_APP_LIBRARY_STAGE_FAILED",
|
|
16097
|
+
MACOS_APP_ALREADY_RUNNING: "MACOS_APP_ALREADY_RUNNING",
|
|
16098
|
+
MACOS_APP_SPAWN_FAILED: "MACOS_APP_SPAWN_FAILED",
|
|
16099
|
+
MACOS_APP_EXITED_BEFORE_READY: "MACOS_APP_EXITED_BEFORE_READY",
|
|
16100
|
+
MACOS_APP_HANDSHAKE_TIMEOUT: "MACOS_APP_HANDSHAKE_TIMEOUT",
|
|
16101
|
+
MACOS_APP_HANDSHAKE_INVALID: "MACOS_APP_HANDSHAKE_INVALID",
|
|
16102
|
+
MACOS_APP_NOT_RUNNING: "MACOS_APP_NOT_RUNNING",
|
|
16103
|
+
MACOS_APP_NOT_CONNECTED: "MACOS_APP_NOT_CONNECTED",
|
|
16104
|
+
MACOS_APP_CONNECTION_LOST: "MACOS_APP_CONNECTION_LOST",
|
|
16105
|
+
MACOS_APP_CONNECTION_CLOSED: "MACOS_APP_CONNECTION_CLOSED",
|
|
16106
|
+
MACOS_APP_RPC_TIMEOUT: "MACOS_APP_RPC_TIMEOUT",
|
|
16107
|
+
MACOS_APP_RPC_ERROR: "MACOS_APP_RPC_ERROR",
|
|
16108
|
+
MACOS_APP_TERMINATE_FAILED: "MACOS_APP_TERMINATE_FAILED",
|
|
16109
|
+
MACOS_APP_BUNDLE_ID_MISMATCH: "MACOS_APP_BUNDLE_ID_MISMATCH",
|
|
16110
|
+
MACOS_APP_OPEN_URL_FAILED: "MACOS_APP_OPEN_URL_FAILED",
|
|
16111
|
+
MACOS_APP_FILE_ACCESS_FAILED: "MACOS_APP_FILE_ACCESS_FAILED",
|
|
16084
16112
|
KEYBOARD_KEY_UNSUPPORTED: "KEYBOARD_KEY_UNSUPPORTED",
|
|
16085
16113
|
KEYBOARD_CHARACTER_UNSUPPORTED: "KEYBOARD_CHARACTER_UNSUPPORTED",
|
|
16086
16114
|
KEYBOARD_TEXT_AND_KEY_COMBINED: "KEYBOARD_TEXT_AND_KEY_COMBINED",
|
|
@@ -16197,7 +16225,8 @@ var PLATFORMS = [
|
|
|
16197
16225
|
"vega",
|
|
16198
16226
|
"harmony",
|
|
16199
16227
|
"tvos",
|
|
16200
|
-
"android-tv"
|
|
16228
|
+
"android-tv",
|
|
16229
|
+
"macos"
|
|
16201
16230
|
];
|
|
16202
16231
|
var DEVICE_KINDS = [
|
|
16203
16232
|
"simulator",
|
|
@@ -16952,7 +16981,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
16952
16981
|
var SESSION_ID = randomUUID4();
|
|
16953
16982
|
function readCliVersion() {
|
|
16954
16983
|
if (true) {
|
|
16955
|
-
return "0.32.1-next.
|
|
16984
|
+
return "0.32.1-next.15";
|
|
16956
16985
|
}
|
|
16957
16986
|
return "0.0.0";
|
|
16958
16987
|
}
|
package/dist/mcp-server.mjs
CHANGED
|
@@ -24943,6 +24943,10 @@ var FLAG_REGISTRY = [
|
|
|
24943
24943
|
name: "video-watermark",
|
|
24944
24944
|
description: "Overlay the argent corner watermark on recorded screen videos. On by default; turn it off with `argent disable video-watermark`.",
|
|
24945
24945
|
defaultEnabled: true
|
|
24946
|
+
},
|
|
24947
|
+
{
|
|
24948
|
+
name: "macos-apps",
|
|
24949
|
+
description: "Drive native Mac apps (AppKit, SwiftUI, react-native-macos) from inside the app. Adds the macos platform to list-devices and boot-device, and the file-panel and menu-bar tools. Off by default."
|
|
24946
24950
|
}
|
|
24947
24951
|
];
|
|
24948
24952
|
function getFlagDefinition(name, registry2 = FLAG_REGISTRY) {
|
|
@@ -25949,6 +25953,8 @@ var FAILURE_CODES = {
|
|
|
25949
25953
|
REACT_PROFILER_START_FAILED: "REACT_PROFILER_START_FAILED",
|
|
25950
25954
|
REACT_PROFILER_START_VERIFY_FAILED: "REACT_PROFILER_START_VERIFY_FAILED",
|
|
25951
25955
|
REACT_PROFILER_SESSION_TORN_DOWN: "REACT_PROFILER_SESSION_TORN_DOWN",
|
|
25956
|
+
REACT_PROFILER_SESSION_TAKEN_OVER: "REACT_PROFILER_SESSION_TAKEN_OVER",
|
|
25957
|
+
REACT_PROFILER_STOP_IN_PROGRESS: "REACT_PROFILER_STOP_IN_PROGRESS",
|
|
25952
25958
|
REACT_PROFILER_HOOK_ERROR: "REACT_PROFILER_HOOK_ERROR",
|
|
25953
25959
|
REACT_PROFILER_ANALYZE_NO_DATA: "REACT_PROFILER_ANALYZE_NO_DATA",
|
|
25954
25960
|
NATIVE_PROFILER_FACTORY_OPTIONS_MISSING: "NATIVE_PROFILER_FACTORY_OPTIONS_MISSING",
|
|
@@ -26027,6 +26033,32 @@ var FAILURE_CODES = {
|
|
|
26027
26033
|
CHROMIUM_ELECTRON_SPAWN_FAILED: "CHROMIUM_ELECTRON_SPAWN_FAILED",
|
|
26028
26034
|
CHROMIUM_ELECTRON_CDP_TIMEOUT: "CHROMIUM_ELECTRON_CDP_TIMEOUT",
|
|
26029
26035
|
CHROMIUM_ELECTRON_EXITED_BEFORE_READY: "CHROMIUM_ELECTRON_EXITED_BEFORE_READY",
|
|
26036
|
+
/**
|
|
26037
|
+
* Native Mac apps (the `macos-apps` flag)
|
|
26038
|
+
* @see [macos-app.ts](../../tool-server/src/blueprints/macos-app.ts)
|
|
26039
|
+
*/
|
|
26040
|
+
MACOS_APP_UNSUPPORTED_HOST: "MACOS_APP_UNSUPPORTED_HOST",
|
|
26041
|
+
MACOS_APP_PATH_INVALID: "MACOS_APP_PATH_INVALID",
|
|
26042
|
+
MACOS_APP_BUNDLE_INVALID: "MACOS_APP_BUNDLE_INVALID",
|
|
26043
|
+
MACOS_APP_NOT_FOUND: "MACOS_APP_NOT_FOUND",
|
|
26044
|
+
MACOS_APP_HARDENED_RUNTIME: "MACOS_APP_HARDENED_RUNTIME",
|
|
26045
|
+
MACOS_APP_LIBRARY_MISSING: "MACOS_APP_LIBRARY_MISSING",
|
|
26046
|
+
MACOS_APP_LIBRARY_STAGE_FAILED: "MACOS_APP_LIBRARY_STAGE_FAILED",
|
|
26047
|
+
MACOS_APP_ALREADY_RUNNING: "MACOS_APP_ALREADY_RUNNING",
|
|
26048
|
+
MACOS_APP_SPAWN_FAILED: "MACOS_APP_SPAWN_FAILED",
|
|
26049
|
+
MACOS_APP_EXITED_BEFORE_READY: "MACOS_APP_EXITED_BEFORE_READY",
|
|
26050
|
+
MACOS_APP_HANDSHAKE_TIMEOUT: "MACOS_APP_HANDSHAKE_TIMEOUT",
|
|
26051
|
+
MACOS_APP_HANDSHAKE_INVALID: "MACOS_APP_HANDSHAKE_INVALID",
|
|
26052
|
+
MACOS_APP_NOT_RUNNING: "MACOS_APP_NOT_RUNNING",
|
|
26053
|
+
MACOS_APP_NOT_CONNECTED: "MACOS_APP_NOT_CONNECTED",
|
|
26054
|
+
MACOS_APP_CONNECTION_LOST: "MACOS_APP_CONNECTION_LOST",
|
|
26055
|
+
MACOS_APP_CONNECTION_CLOSED: "MACOS_APP_CONNECTION_CLOSED",
|
|
26056
|
+
MACOS_APP_RPC_TIMEOUT: "MACOS_APP_RPC_TIMEOUT",
|
|
26057
|
+
MACOS_APP_RPC_ERROR: "MACOS_APP_RPC_ERROR",
|
|
26058
|
+
MACOS_APP_TERMINATE_FAILED: "MACOS_APP_TERMINATE_FAILED",
|
|
26059
|
+
MACOS_APP_BUNDLE_ID_MISMATCH: "MACOS_APP_BUNDLE_ID_MISMATCH",
|
|
26060
|
+
MACOS_APP_OPEN_URL_FAILED: "MACOS_APP_OPEN_URL_FAILED",
|
|
26061
|
+
MACOS_APP_FILE_ACCESS_FAILED: "MACOS_APP_FILE_ACCESS_FAILED",
|
|
26030
26062
|
KEYBOARD_KEY_UNSUPPORTED: "KEYBOARD_KEY_UNSUPPORTED",
|
|
26031
26063
|
KEYBOARD_CHARACTER_UNSUPPORTED: "KEYBOARD_CHARACTER_UNSUPPORTED",
|
|
26032
26064
|
KEYBOARD_TEXT_AND_KEY_COMBINED: "KEYBOARD_TEXT_AND_KEY_COMBINED",
|
|
@@ -27812,7 +27844,8 @@ var PLATFORMS = [
|
|
|
27812
27844
|
"vega",
|
|
27813
27845
|
"harmony",
|
|
27814
27846
|
"tvos",
|
|
27815
|
-
"android-tv"
|
|
27847
|
+
"android-tv",
|
|
27848
|
+
"macos"
|
|
27816
27849
|
];
|
|
27817
27850
|
var DEVICE_KINDS = [
|
|
27818
27851
|
"simulator",
|
|
@@ -28873,7 +28906,9 @@ var AUTO_SCREENSHOT_TOOLS = /* @__PURE__ */ new Set([
|
|
|
28873
28906
|
"describe",
|
|
28874
28907
|
"run-sequence",
|
|
28875
28908
|
// A wait is almost always followed by a look at the screen it waited for.
|
|
28876
|
-
"await-ui-element"
|
|
28909
|
+
"await-ui-element",
|
|
28910
|
+
"file-panel",
|
|
28911
|
+
"menu-bar"
|
|
28877
28912
|
]);
|
|
28878
28913
|
var AUTO_SCREENSHOT_DELAY_MS_BY_TOOL = {
|
|
28879
28914
|
"launch-app": 3e3,
|
|
@@ -28921,15 +28956,18 @@ var AUTO_DESCRIBE_TOOLS = /* @__PURE__ */ new Set([
|
|
|
28921
28956
|
"restart-app",
|
|
28922
28957
|
"open-url",
|
|
28923
28958
|
"run-sequence",
|
|
28924
|
-
"await-ui-element"
|
|
28959
|
+
"await-ui-element",
|
|
28960
|
+
"file-panel",
|
|
28961
|
+
"menu-bar"
|
|
28925
28962
|
]);
|
|
28926
28963
|
function autoDescribeEnabled(options) {
|
|
28927
28964
|
return !isFlagEnabled("disable-auto-describe", options);
|
|
28928
28965
|
}
|
|
28929
28966
|
var PROFILING_CAPTURE_SKIPPED_NOTE = "Auto-screenshot and element tree skipped while a profiler is recording on this device. Call screenshot or describe if you need to see the screen.";
|
|
28930
28967
|
var AUTO_DESCRIBE_HEADER = "--- Elements after action (describe) ---";
|
|
28931
|
-
function shouldAutoDescribe(toolName) {
|
|
28932
|
-
|
|
28968
|
+
function shouldAutoDescribe(toolName, args) {
|
|
28969
|
+
const canonical = normalizeToolName(toolName);
|
|
28970
|
+
return AUTO_DESCRIBE_TOOLS.has(canonical) && !isListCall(canonical, args);
|
|
28933
28971
|
}
|
|
28934
28972
|
var SECRET_PLACEHOLDER_MARKER = "{{secret:";
|
|
28935
28973
|
function containsSecretPlaceholder(args) {
|
|
@@ -28949,9 +28987,12 @@ function normalizeToolName(name) {
|
|
|
28949
28987
|
const idx = name.lastIndexOf("__");
|
|
28950
28988
|
return idx === -1 ? name : name.slice(idx + 2);
|
|
28951
28989
|
}
|
|
28952
|
-
function shouldAutoScreenshot(toolName) {
|
|
28990
|
+
function shouldAutoScreenshot(toolName, args) {
|
|
28953
28991
|
const canonical = normalizeToolName(toolName);
|
|
28954
|
-
return canonical !== "screenshot" && AUTO_SCREENSHOT_TOOLS.has(canonical);
|
|
28992
|
+
return canonical !== "screenshot" && AUTO_SCREENSHOT_TOOLS.has(canonical) && !isListCall(canonical, args);
|
|
28993
|
+
}
|
|
28994
|
+
function isListCall(canonical, args) {
|
|
28995
|
+
return (canonical === "menu-bar" || canonical === "file-panel") && args?.action === "list";
|
|
28955
28996
|
}
|
|
28956
28997
|
function getAutoScreenshotDelayMs(toolName) {
|
|
28957
28998
|
const canonical = normalizeToolName(toolName);
|
|
@@ -29366,7 +29407,7 @@ async function startMcpServer(options) {
|
|
|
29366
29407
|
const t1 = Date.now();
|
|
29367
29408
|
try {
|
|
29368
29409
|
const d = await callTool("describe", { udid }, { signal });
|
|
29369
|
-
const desc = d.result
|
|
29410
|
+
const { description: desc, hint } = d.result ?? {};
|
|
29370
29411
|
await spyLog({
|
|
29371
29412
|
ts: (/* @__PURE__ */ new Date()).toISOString(),
|
|
29372
29413
|
event: "auto_describe",
|
|
@@ -29375,8 +29416,10 @@ async function startMcpServer(options) {
|
|
|
29375
29416
|
chars: typeof desc === "string" ? desc.length : 0
|
|
29376
29417
|
});
|
|
29377
29418
|
if (typeof desc !== "string" || desc.length === 0) return [];
|
|
29419
|
+
const hintLine = typeof hint === "string" && hint && !desc.includes(hint) ? `Hint: ${hint}
|
|
29420
|
+
` : "";
|
|
29378
29421
|
return [{ type: "text", text: `${AUTO_DESCRIBE_HEADER}
|
|
29379
|
-
${desc}` }];
|
|
29422
|
+
${hintLine}${desc}` }];
|
|
29380
29423
|
} catch (e) {
|
|
29381
29424
|
await spyLog({
|
|
29382
29425
|
ts: (/* @__PURE__ */ new Date()).toISOString(),
|
|
@@ -29446,8 +29489,8 @@ ${desc}` }];
|
|
|
29446
29489
|
content = await toMcpContent(result, outputHint, ctx, params.arguments);
|
|
29447
29490
|
}
|
|
29448
29491
|
const udid = getUdidFromArgs(params.arguments);
|
|
29449
|
-
const wantScreenshot = autoScreenshotOn && shouldAutoScreenshot(params.name);
|
|
29450
|
-
const wantTree = autoDescribeOn && shouldAutoDescribe(params.name);
|
|
29492
|
+
const wantScreenshot = autoScreenshotOn && shouldAutoScreenshot(params.name, params.arguments);
|
|
29493
|
+
const wantTree = autoDescribeOn && shouldAutoDescribe(params.name, params.arguments);
|
|
29451
29494
|
if (udid && (wantScreenshot || wantTree) && containsSecretPlaceholder(params.arguments)) {
|
|
29452
29495
|
content = [
|
|
29453
29496
|
...content,
|