@swmansion/argent 0.33.1-next.0 → 0.33.1-next.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.
- package/bin/argent-android-devtools-0.4.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 +1 -1
- package/dist/installer.mjs +16 -15
- package/dist/tool-server.cjs +24 -5
- 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 +1 -1
|
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
|
@@ -35872,7 +35872,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
35872
35872
|
var SESSION_ID2 = randomUUID5();
|
|
35873
35873
|
function readCliVersion() {
|
|
35874
35874
|
if (true) {
|
|
35875
|
-
return "0.33.1-next.
|
|
35875
|
+
return "0.33.1-next.2";
|
|
35876
35876
|
}
|
|
35877
35877
|
return "0.0.0";
|
|
35878
35878
|
}
|
package/dist/installer.mjs
CHANGED
|
@@ -16981,7 +16981,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
16981
16981
|
var SESSION_ID = randomUUID4();
|
|
16982
16982
|
function readCliVersion() {
|
|
16983
16983
|
if (true) {
|
|
16984
|
-
return "0.33.1-next.
|
|
16984
|
+
return "0.33.1-next.2";
|
|
16985
16985
|
}
|
|
16986
16986
|
return "0.0.0";
|
|
16987
16987
|
}
|
|
@@ -20663,12 +20663,13 @@ function npxChildEnv(env = process.env) {
|
|
|
20663
20663
|
}
|
|
20664
20664
|
return childEnv;
|
|
20665
20665
|
}
|
|
20666
|
-
function isSkillsCliAvailable() {
|
|
20666
|
+
function isSkillsCliAvailable(cwd) {
|
|
20667
20667
|
try {
|
|
20668
20668
|
execSync("npx --force --no-install skills --version", {
|
|
20669
20669
|
env: npxChildEnv(),
|
|
20670
20670
|
stdio: ["ignore", "ignore", "ignore"],
|
|
20671
|
-
timeout: PROBE_TIMEOUT_MS
|
|
20671
|
+
timeout: PROBE_TIMEOUT_MS,
|
|
20672
|
+
...cwd ? { cwd } : {}
|
|
20672
20673
|
});
|
|
20673
20674
|
return true;
|
|
20674
20675
|
} catch {
|
|
@@ -23345,10 +23346,10 @@ function bundledCopyFor(version) {
|
|
|
23345
23346
|
}
|
|
23346
23347
|
return SKILLS_DIR;
|
|
23347
23348
|
}
|
|
23348
|
-
function printManualInstructions(source, bundledCopy, scope,
|
|
23349
|
-
const
|
|
23349
|
+
function printManualInstructions(source, bundledCopy, scope, root, npxMissing = false) {
|
|
23350
|
+
const dir = (sub) => scope === "global" ? `~/${sub}` : shellQuotePath(`${root}/${sub}`);
|
|
23350
23351
|
const add = `skills add ${source}${scope === "global" ? " -g" : ""} --skill '*' -y`;
|
|
23351
|
-
const cd = scope === "
|
|
23352
|
+
const cd = scope === "global" ? "" : `cd ${shellQuotePath(root)} && `;
|
|
23352
23353
|
note(
|
|
23353
23354
|
[
|
|
23354
23355
|
`Skills are bundled at:`,
|
|
@@ -23357,10 +23358,10 @@ function printManualInstructions(source, bundledCopy, scope, customRoot, npxMiss
|
|
|
23357
23358
|
`To install manually, copy them to your editor's skills directory:`,
|
|
23358
23359
|
``,
|
|
23359
23360
|
` ${import_picocolors10.default.dim("# Claude Code")}`,
|
|
23360
|
-
` mkdir -p ${
|
|
23361
|
+
` mkdir -p ${dir(".claude/skills")} && cp -r ${bundledCopy}/* ${dir(".claude/skills/")}`,
|
|
23361
23362
|
``,
|
|
23362
23363
|
` ${import_picocolors10.default.dim("# Cursor")}`,
|
|
23363
|
-
` mkdir -p ${
|
|
23364
|
+
` mkdir -p ${dir(".cursor/skills")} && cp -r ${bundledCopy}/* ${dir(".cursor/skills/")}`,
|
|
23364
23365
|
``,
|
|
23365
23366
|
...npxMissing ? [` ${import_picocolors10.default.dim("# Or, with pnpm:")}`, ` ${cd}pnpm dlx ${add}`] : [` ${import_picocolors10.default.dim("# Or use npx skills directly:")}`, ` ${cd}npx ${add}`]
|
|
23366
23367
|
].join("\n"),
|
|
@@ -23392,12 +23393,13 @@ function formatSkillsSummaryLine(skills) {
|
|
|
23392
23393
|
return `${import_picocolors10.default.green("Skills")} ${written} installed`;
|
|
23393
23394
|
}
|
|
23394
23395
|
async function runSkillsStep(args) {
|
|
23395
|
-
const { nonInteractive, fromTar, version, scope,
|
|
23396
|
+
const { nonInteractive, fromTar, version, scope, effectiveRoot } = args;
|
|
23397
|
+
const skillsCwd = scope === "global" ? void 0 : effectiveRoot;
|
|
23396
23398
|
log.step(import_picocolors10.default.bold("Step 2: Skills Installation"));
|
|
23397
23399
|
log.warn(import_picocolors10.default.yellow("Skills installation is required for Argent to function properly."));
|
|
23398
23400
|
let skillsMethod;
|
|
23399
23401
|
const online = await isOnline();
|
|
23400
|
-
const offlineWithCache = !online && isSkillsCliAvailable();
|
|
23402
|
+
const offlineWithCache = !online && isSkillsCliAvailable(skillsCwd);
|
|
23401
23403
|
const skillsCliReady = online || offlineWithCache;
|
|
23402
23404
|
if (!skillsCliReady) {
|
|
23403
23405
|
log.warn(
|
|
@@ -23436,8 +23438,7 @@ async function runSkillsStep(args) {
|
|
|
23436
23438
|
const useGitHubSource = online && !fromTar && version !== "unknown";
|
|
23437
23439
|
const skillsSource = useGitHubSource ? buildArgentSkillsSource(version) : SKILLS_DIR;
|
|
23438
23440
|
const bundledCopy = useGitHubSource ? bundledCopyFor(version) : SKILLS_DIR;
|
|
23439
|
-
const
|
|
23440
|
-
const skillsRoot = scope === "global" ? os3.homedir() : skillsCwd ?? process.cwd();
|
|
23441
|
+
const skillsRoot = scope === "global" ? os3.homedir() : effectiveRoot;
|
|
23441
23442
|
const skillsScope = scope === "global" ? "global" : "project";
|
|
23442
23443
|
const expected = listBundledSkills(bundledCopy);
|
|
23443
23444
|
const snapshot = () => snapshotArgentSkills(skillsRoot, skillsScope, expected);
|
|
@@ -23447,7 +23448,7 @@ async function runSkillsStep(args) {
|
|
|
23447
23448
|
let installedFrom = skillsSource;
|
|
23448
23449
|
let fallbackReason = null;
|
|
23449
23450
|
if (skillsMethod === "manual") {
|
|
23450
|
-
printManualInstructions(skillsSource, bundledCopy, scope,
|
|
23451
|
+
printManualInstructions(skillsSource, bundledCopy, scope, effectiveRoot);
|
|
23451
23452
|
skillOutcome = "skipped";
|
|
23452
23453
|
} else {
|
|
23453
23454
|
const interactive = skillsMethod === "interactive";
|
|
@@ -23471,7 +23472,7 @@ async function runSkillsStep(args) {
|
|
|
23471
23472
|
const fail = (err, attempted, npxMissing = false) => {
|
|
23472
23473
|
if (!interactive) spinner2.stop(import_picocolors10.default.red("Skills installation failed."));
|
|
23473
23474
|
log.error(`Failed to install skills from ${attempted}: ${meaningfulLine(err)}`);
|
|
23474
|
-
printManualInstructions(bundledCopy, bundledCopy, scope,
|
|
23475
|
+
printManualInstructions(bundledCopy, bundledCopy, scope, effectiveRoot, npxMissing);
|
|
23475
23476
|
return "failure";
|
|
23476
23477
|
};
|
|
23477
23478
|
try {
|
|
@@ -23746,7 +23747,7 @@ async function init2(args) {
|
|
|
23746
23747
|
fromTar: parsed.fromTar,
|
|
23747
23748
|
version,
|
|
23748
23749
|
scope,
|
|
23749
|
-
|
|
23750
|
+
effectiveRoot
|
|
23750
23751
|
});
|
|
23751
23752
|
log.step(import_picocolors11.default.bold("Step 3: Rules"));
|
|
23752
23753
|
const copyResults = copyRulesAndAgents(
|
package/dist/tool-server.cjs
CHANGED
|
@@ -101273,7 +101273,7 @@ var _CI_VENDOR_COUNT_FOR_TEST = vendors_default.length;
|
|
|
101273
101273
|
var SESSION_ID = (0, import_node_crypto3.randomUUID)();
|
|
101274
101274
|
function readCliVersion() {
|
|
101275
101275
|
if (true) {
|
|
101276
|
-
return "0.33.1-next.
|
|
101276
|
+
return "0.33.1-next.2";
|
|
101277
101277
|
}
|
|
101278
101278
|
return "0.0.0";
|
|
101279
101279
|
}
|
|
@@ -143362,7 +143362,7 @@ function debuggerServiceRef(params) {
|
|
|
143362
143362
|
// ../tool-server/src/tools/debugger/not-connected.ts
|
|
143363
143363
|
var GUIDANCE = {
|
|
143364
143364
|
metro_not_running: "Metro is not running on this port. Do not retry in a loop \u2014 the result will not change until Metro is started. Start Metro with the project's own start script if it has one (else `npx react-native start` or `npx expo start`) or ask the user, wait for it to report ready, then retry once.",
|
|
143365
|
-
no_app_connected: "Metro is running but no app is attached. Do not retry immediately \u2014 launch or restart the RN app on the target device (launch-app / restart-app), wait a few seconds for the bundle to load, then retry once. On Android, if the app cannot reach Metro, first run `adb reverse tcp:<port> tcp:<port>`.",
|
|
143365
|
+
no_app_connected: "Metro is running, but no app on the target device is attached to it. Do not retry immediately \u2014 launch or restart the RN app on the target device (launch-app / restart-app), wait a few seconds for the bundle to load, then retry once. On Android, if the app cannot reach Metro, first run `adb reverse tcp:<port> tcp:<port>`.",
|
|
143366
143366
|
device_mismatch: "The device_id does not match any debugger target on this Metro. Re-target with the logicalDeviceId listed in the detail message, or give the device its own Metro port.",
|
|
143367
143367
|
cdp_unreachable: "The runtime's CDP endpoint could not be reached. Verify the app is running (launch-app), then call debugger-connect and retry once.",
|
|
143368
143368
|
runtime_unresponsive: "The runtime accepted the debugger connection but did not answer within the timeout \u2014 it is likely frozen, or paused at a breakpoint. Do not retry in a loop (each attempt waits out the full timeout). Check the app; if it is hung, restart it (restart-app), then retry once.",
|
|
@@ -146924,8 +146924,18 @@ function deviceKey(target) {
|
|
|
146924
146924
|
}
|
|
146925
146925
|
return target.deviceName;
|
|
146926
146926
|
}
|
|
146927
|
+
var seenLogicalDeviceIds = /* @__PURE__ */ new Set();
|
|
146928
|
+
function listDevices(devices) {
|
|
146929
|
+
return [...devices].map(
|
|
146930
|
+
(d) => d.logicalId ? `${d.name ?? "unknown"} (${d.logicalId})` : `${d.name ?? "unknown"} (legacy inspector \u2014 no logicalDeviceId)`
|
|
146931
|
+
).join(", ");
|
|
146932
|
+
}
|
|
146927
146933
|
function selectTarget(targets, port, options) {
|
|
146928
146934
|
const pool = targets;
|
|
146935
|
+
for (const t of pool) {
|
|
146936
|
+
const id = t.reactNative?.logicalDeviceId;
|
|
146937
|
+
if (id) seenLogicalDeviceIds.add(id);
|
|
146938
|
+
}
|
|
146929
146939
|
let candidates = pool;
|
|
146930
146940
|
if (typeof options?.deviceId === "string" && options.deviceId) {
|
|
146931
146941
|
const deviceId = options.deviceId;
|
|
@@ -146944,9 +146954,7 @@ function selectTarget(targets, port, options) {
|
|
|
146944
146954
|
}
|
|
146945
146955
|
}
|
|
146946
146956
|
if (distinctDevices.size > 1) {
|
|
146947
|
-
const listed =
|
|
146948
|
-
(d) => d.logicalId ? `${d.name ?? "unknown"} (${d.logicalId})` : `${d.name ?? "unknown"} (legacy inspector \u2014 no logicalDeviceId)`
|
|
146949
|
-
).join(", ");
|
|
146957
|
+
const listed = listDevices(distinctDevices.values());
|
|
146950
146958
|
throw new FailureError(
|
|
146951
146959
|
`No debugger target matches device_id "${deviceId}". ${distinctDevices.size} devices are connected to Metro on port ${port}: ${listed}. Re-target with the logicalDeviceId in parentheses \u2014 that is what debugger-connect returns and what subsequent debugger-* calls must pass. A legacy-inspector device (RN 0.72 / Vega) reports none and cannot be singled out of a shared Metro: give it its own Metro port.`,
|
|
146952
146960
|
{
|
|
@@ -146957,6 +146965,17 @@ function selectTarget(targets, port, options) {
|
|
|
146957
146965
|
}
|
|
146958
146966
|
);
|
|
146959
146967
|
}
|
|
146968
|
+
if (seenLogicalDeviceIds.has(deviceId)) {
|
|
146969
|
+
throw new FailureError(
|
|
146970
|
+
`Device with logicalDeviceId "${deviceId}" is no longer attached to Metro on port ${port} \u2014 its app likely exited or reloaded onto another Metro. Not falling back to the remaining device: ${listDevices(distinctDevices.values())}. If the app exited, relaunch it on the target device (launch-app / restart-app), then retry with the same id: a relaunched app keeps its logicalDeviceId. If it was reinstalled (reinstall-app), iOS can give it a new logicalDeviceId: when the device listed above is your target, retry with the id shown for it.`,
|
|
146971
|
+
{
|
|
146972
|
+
error_code: FAILURE_CODES.DEBUGGER_METRO_NO_TARGETS,
|
|
146973
|
+
failure_stage: "debugger_select_target",
|
|
146974
|
+
failure_area: "tool_server",
|
|
146975
|
+
error_kind: "not_found"
|
|
146976
|
+
}
|
|
146977
|
+
);
|
|
146978
|
+
}
|
|
146960
146979
|
}
|
|
146961
146980
|
}
|
|
146962
146981
|
if (options?.deviceName) {
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@swmansion/argent",
|
|
3
|
-
"version": "0.33.1-next.
|
|
3
|
+
"version": "0.33.1-next.2",
|
|
4
4
|
"mcpName": "io.github.software-mansion/argent",
|
|
5
5
|
"description": "MCP server for iOS Simulator, Android Emulator, Chromium app and Mac app control",
|
|
6
6
|
"license": "Apache-2.0",
|