anyray-connect 0.11.78 → 0.11.80

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.
Files changed (46) hide show
  1. package/dist/assets/vscodeExtensionAsset.js +5 -5
  2. package/dist/assets/vscodeExtensionAsset.js.map +1 -1
  3. package/dist/cli.js +12 -1
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/managed.js +11 -0
  6. package/dist/commands/managed.js.map +1 -1
  7. package/dist/commands/mcpServer.js +160 -52
  8. package/dist/commands/mcpServer.js.map +1 -1
  9. package/dist/commands/refreshProxy.js +46 -7
  10. package/dist/commands/refreshProxy.js.map +1 -1
  11. package/dist/tools/acpAgents.js +8 -9
  12. package/dist/tools/acpAgents.js.map +1 -1
  13. package/dist/tools/claudeCode.js +10 -11
  14. package/dist/tools/claudeCode.js.map +1 -1
  15. package/dist/tools/claudeCodeEnv.js +22 -10
  16. package/dist/tools/claudeCodeEnv.js.map +1 -1
  17. package/dist/tools/claudeDesktopNative.js +8 -5
  18. package/dist/tools/claudeDesktopNative.js.map +1 -1
  19. package/dist/tools/sharedHooks.js +11 -13
  20. package/dist/tools/sharedHooks.js.map +1 -1
  21. package/dist/tools/shellEnv.js +16 -6
  22. package/dist/tools/shellEnv.js.map +1 -1
  23. package/dist/util/cliInvocation.js +7 -13
  24. package/dist/util/cliInvocation.js.map +1 -1
  25. package/dist/util/commandTrim.js +13 -1
  26. package/dist/util/commandTrim.js.map +1 -1
  27. package/dist/util/connectHealth.js +68 -14
  28. package/dist/util/connectHealth.js.map +1 -1
  29. package/dist/util/devRefresh.js +44 -1
  30. package/dist/util/devRefresh.js.map +1 -1
  31. package/dist/util/drainMarker.js +89 -0
  32. package/dist/util/drainMarker.js.map +1 -0
  33. package/dist/util/durableRuntime.js +46 -2
  34. package/dist/util/durableRuntime.js.map +1 -1
  35. package/dist/util/localSearch.js +18 -3
  36. package/dist/util/localSearch.js.map +1 -1
  37. package/dist/util/proxyService.js +36 -9
  38. package/dist/util/proxyService.js.map +1 -1
  39. package/dist/util/repair.js +24 -8
  40. package/dist/util/repair.js.map +1 -1
  41. package/dist/util/selfUpdate.js +37 -5
  42. package/dist/util/selfUpdate.js.map +1 -1
  43. package/dist/util/vscodeExtension.js +18 -2
  44. package/dist/util/vscodeExtension.js.map +1 -1
  45. package/dist/version.js +1 -1
  46. package/package.json +1 -1
@@ -5,18 +5,16 @@
5
5
  * connect ships as a Bun single-file binary — then `process.execPath` IS the
6
6
  * cli and the flag is its only argument. In dev / tests it runs as
7
7
  * `node <script.js>`, so the script path has to ride along as the first arg.
8
- * This resolves both. Only Node built-ins; no I/O. Shared by the key-refresh
9
- * daemon login service (util/proxyService.ts), the detached key-refresh spawn
10
- * (util/devRefresh.ts), and the per-user refresh scheduler
8
+ * This resolves both, through the self-update-stable launcher. Shared by the
9
+ * key-refresh daemon login service (util/proxyService.ts), the detached
10
+ * key-refresh spawn (util/devRefresh.ts), and the per-user refresh scheduler
11
11
  * (util/refreshScheduler.ts) so all three agree on how to relaunch the binary.
12
12
  */
13
+ import { stableEntryPath, stableInvocation } from './durableRuntime.js';
13
14
  /** The command + args that re-invoke this cli in a hidden `flag` mode. */
14
15
  export const cliInvocation = (flag) => {
15
- const exe = process.execPath;
16
- const runsUnderNode = /[\\/](node|node\.exe)$/i.test(exe);
17
- const script = process.argv[1];
18
- const args = runsUnderNode && script ? [script, flag] : [flag];
19
- return { command: exe, args };
16
+ const { command, args } = stableInvocation([flag]);
17
+ return { command, args };
20
18
  };
21
19
  /**
22
20
  * The single path that must stay durable for an installed invocation (a login
@@ -25,9 +23,5 @@ export const cliInvocation = (flag) => {
25
23
  * path (an `npx` temp dir) would break the moment that dir is cleaned — callers
26
24
  * pair this with `isEphemeralBinaryPath` to skip the install.
27
25
  */
28
- export const cliDurableBinaryPath = () => {
29
- const exe = process.execPath;
30
- const runsUnderNode = /[\\/](node|node\.exe)$/i.test(exe);
31
- return runsUnderNode && process.argv[1] ? process.argv[1] : exe;
32
- };
26
+ export const cliDurableBinaryPath = () => stableEntryPath();
33
27
  //# sourceMappingURL=cliInvocation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cliInvocation.js","sourceRoot":"","sources":["../../src/util/cliInvocation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,0EAA0E;AAC1E,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAAY,EACyB,EAAE;IACvC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC7B,MAAM,aAAa,GAAG,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/D,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAChC,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAW,EAAE;IAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC7B,MAAM,aAAa,GAAG,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1D,OAAO,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAClE,CAAC,CAAC"}
1
+ {"version":3,"file":"cliInvocation.js","sourceRoot":"","sources":["../../src/util/cliInvocation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAExE,0EAA0E;AAC1E,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAAY,EACyB,EAAE;IACvC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3B,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAW,EAAE,CAAC,eAAe,EAAE,CAAC"}
@@ -371,12 +371,24 @@ const digestGrep = (lines, minRatio) => {
371
371
  // ----------------------------------------------------------------------------
372
372
  // Router 3: log-dedup. Normalize volatile tokens, collapse repeats with counts.
373
373
  // ----------------------------------------------------------------------------
374
+ /**
375
+ * Only genuinely VOLATILE tokens — the ones that differ when the SAME line is
376
+ * emitted twice. A path is payload, not a volatile token: two lines differing
377
+ * only by path are two different facts, and collapsing them into `[×N]` claims
378
+ * an occurrence count that never happened.
379
+ *
380
+ * Normalizing paths here also defeated LOG_MAX_UNIQUE_RATIO, whose whole job is
381
+ * to keep this router away from mostly-unique output — it MANUFACTURED the
382
+ * duplication the guard looks for. A 23-line `git status --short` came back as
383
+ * 9 lines with invented `[×5]`/`[×10]` counts, because every `a/b/c.ts` reduced
384
+ * to the same `<PATH>`. Same for `find`, `ls -R`, `git diff --name-only`: a
385
+ * listing of distinct paths is exactly what must NOT collapse.
386
+ */
374
387
  const normalizeLogLine = (line) => line
375
388
  .replace(/\d{4}-\d\d-\d\d[T ]\d\d:\d\d:\d\d(?:\.\d+)?Z?/g, '<TS>') // ISO timestamp
376
389
  .replace(/\b\d\d:\d\d:\d\d\b/g, '<TS>') // bare clock
377
390
  .replace(/\b[0-9a-f]{2,}(?:-[0-9a-f]{2,}){2,}\b/gi, '<ID>') // uuid-ish id
378
391
  .replace(/\b0x[0-9a-f]+\b/gi, '<HEX>')
379
- .replace(/(?:\/[\w.\-]+){2,}/g, '<PATH>')
380
392
  .replace(/\b\d{8,}\b/g, '<NUM>') // ≥8 digits; shorter numbers (codes, ports) are distinct
381
393
  .trim();
382
394
  const digestLog = (lines) => {
@@ -1 +1 @@
1
- {"version":3,"file":"commandTrim.js","sourceRoot":"","sources":["../../src/util/commandTrim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commandTrim.js","sourceRoot":"","sources":["../../src/util/commandTrim.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,10 @@ import { canonical, verifyWithGateway } from './devVerify.js';
22
22
  import { loadDevKey, loadProfile } from './persist.js';
23
23
  const GATEWAY_TIMEOUT_MS = 500;
24
24
  const CP_TIMEOUT_MS = 2000;
25
+ /** Longest we'll idle a foreground CLI waiting on a retry. */
26
+ const RETRY_BUDGET_MS = 2000;
27
+ /** Backoff when the server signals "transient" without a Retry-After. */
28
+ const DEFAULT_RETRY_MS = 250;
25
29
  /** POST to the gateway's `/connect/health`. Returns true on 2xx, false on
26
30
  * unreachable/rejected (so the caller can fall back). Never throws. Exported
27
31
  * for unit tests. */
@@ -46,6 +50,69 @@ export const postToGateway = async (origin, headers, events, version) => {
46
50
  clearTimeout(timer);
47
51
  }
48
52
  };
53
+ /**
54
+ * How long the server asked us to wait, in ms, or `undefined` when it didn't
55
+ * say. Only the delta-seconds form is honoured — an HTTP-date needs clock
56
+ * agreement we don't have, and guessing wrong means a CLI hangs.
57
+ */
58
+ const retryAfterMs = (res) => {
59
+ const raw = res.headers?.get?.('retry-after');
60
+ if (!raw)
61
+ return undefined;
62
+ const seconds = Number(raw.trim());
63
+ return Number.isFinite(seconds) && seconds >= 0 ? seconds * 1000 : undefined;
64
+ };
65
+ const sleepMs = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
66
+ /**
67
+ * POST the DevCert-signed envelope, with at most ONE bounded retry. Exported for
68
+ * unit tests.
69
+ *
70
+ * A 429 here means the control plane's per-developer throttle already has a
71
+ * report from THIS machine inside its window, so the dropped post is a duplicate,
72
+ * not lost fleet signal — the fleet-wide-outage loss lived in the server's
73
+ * throttle key, and is fixed there. What's left worth retrying is a transient
74
+ * server-side blip (5xx) or a throttle window short enough to sit out. Anything
75
+ * longer than RETRY_BUDGET_MS is abandoned: `doctor` is a foreground command and
76
+ * telemetry must never be the reason it feels hung.
77
+ *
78
+ * Deliberately NOT queued for later. A queue outlives this one-shot process, so
79
+ * it means on-disk state — a spool of signed envelopes whose proofs go stale in
80
+ * five minutes anyway, plus its own growth, corruption and privacy surface. For
81
+ * best-effort diagnostics that is a worse trade than dropping the report.
82
+ *
83
+ * The same signed body is replayed verbatim: `challenge.issuedAt` is still well
84
+ * inside the server's skew window, so re-signing would buy nothing.
85
+ */
86
+ export const postSignedEnvelope = async (url, body, sleep = sleepMs) => {
87
+ for (let attempt = 0;; attempt++) {
88
+ const controller = new AbortController();
89
+ const timer = setTimeout(() => controller.abort(), CP_TIMEOUT_MS);
90
+ let wait;
91
+ try {
92
+ const res = await fetch(url, {
93
+ method: 'POST',
94
+ headers: { 'content-type': 'application/json' },
95
+ body,
96
+ signal: controller.signal,
97
+ });
98
+ if (res.ok)
99
+ return true;
100
+ // A 4xx other than 429 is a verdict on the payload (bad proof, expired
101
+ // cert, unknown deployment) — re-sending the identical bytes can only
102
+ // fail identically.
103
+ const retryable = res.status === 429 || res.status >= 500;
104
+ if (attempt > 0 || !retryable)
105
+ return false;
106
+ wait = retryAfterMs(res) ?? DEFAULT_RETRY_MS;
107
+ if (wait > RETRY_BUDGET_MS)
108
+ return false;
109
+ }
110
+ finally {
111
+ clearTimeout(timer);
112
+ }
113
+ await sleep(wait);
114
+ }
115
+ };
49
116
  /**
50
117
  * DevCert-signed direct post to the control plane — the gateway-down fallback.
51
118
  * No-op (false) when the machine isn't enrolled: without a cert + dev key there's
@@ -77,20 +144,7 @@ const postToControlPlane = async (events) => {
77
144
  // The private key is a credential — never echo it or its parse error.
78
145
  return false;
79
146
  }
80
- const controller = new AbortController();
81
- const timer = setTimeout(() => controller.abort(), CP_TIMEOUT_MS);
82
- try {
83
- const res = await fetch(`${cpOrigin()}/v1/connect-events`, {
84
- method: 'POST',
85
- headers: { 'content-type': 'application/json' },
86
- body: JSON.stringify({ cert, challenge, sig }),
87
- signal: controller.signal,
88
- });
89
- return res.ok;
90
- }
91
- finally {
92
- clearTimeout(timer);
93
- }
147
+ return await postSignedEnvelope(`${cpOrigin()}/v1/connect-events`, JSON.stringify({ cert, challenge, sig }));
94
148
  }
95
149
  catch {
96
150
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"connectHealth.js","sourceRoot":"","sources":["../../src/util/connectHealth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connectHealth.js","sourceRoot":"","sources":["../../src/util/connectHealth.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,8 @@ import { loadProfile, saveProfile, loadDevKey, } from './persist.js';
32
32
  import { targetFromProfile } from './profileTarget.js';
33
33
  import { loopbackEngaged } from './loopback.js';
34
34
  import { probeHealth } from './proxyService.js';
35
- import { findDriftedManagedTools, repairTools } from './repair.js';
35
+ import { findDriftedManagedTools, findInstalledManagedTools, repairTools, } from './repair.js';
36
+ import { launcherBacked } from './durableRuntime.js';
36
37
  import { fetchTeamPolicy, reconcileFleetPolicy } from './policySync.js';
37
38
  import { publishTemporaryFile } from './atomicFile.js';
38
39
  import { GatewayVerifyError, verifyWithGateway } from './devVerify.js';
@@ -645,6 +646,48 @@ const defaultRepairDrift = async (profile, probe = probeHealth) => {
645
646
  return false;
646
647
  }
647
648
  };
649
+ /**
650
+ * One-time heal for configs a pre-launcher Connect pinned to `versions/<semver>`,
651
+ * a path self-update prunes one bump later. Re-applying every recorded managed
652
+ * tool republishes them through the stable launcher — needed because the
653
+ * ownership-gated surfaces (MCP) and the dynamic-credential adapters that
654
+ * `rewriteConfiguredTools` skips never rewrite themselves.
655
+ *
656
+ * Best-effort and throw-free; the refresh tick must not fail on it. A partial
657
+ * sweep is never retried — `apply()` returns `not-found`/`manual`/`held` as
658
+ * terminal states, so retrying until all succeed would re-apply every tick
659
+ * forever. Stragglers are caught by the ordinary re-mint / drift applies.
660
+ */
661
+ export const repathManagedTools = async (deps = {}) => {
662
+ try {
663
+ const readState = deps.readState ?? readRefreshState;
664
+ if ((await readState()).repathedAt)
665
+ return 'skipped';
666
+ const now = deps.now ?? Date.now;
667
+ // Stamp inside the claim, or two overlapping ticks both sweep.
668
+ const claim = async () => claimRefreshState((state) => state.repathedAt
669
+ ? { result: false }
670
+ : { next: { ...state, repathedAt: now() }, result: true }, false, deps).catch(() => false);
671
+ // An npm/dev/MDM copy was never version-pinned: stamp, touch nothing.
672
+ if (!(deps.launcherBacked ?? launcherBacked)()) {
673
+ return (await claim()) ? 'stamped' : 'skipped';
674
+ }
675
+ const profile = await (deps.load ?? loadProfile)();
676
+ const findTools = deps.findTools ?? findInstalledManagedTools;
677
+ const adapters = await findTools(profile.managedTools ?? []);
678
+ if (adapters.length === 0)
679
+ return (await claim()) ? 'stamped' : 'skipped';
680
+ // Resolve before claiming: an unreachable gateway retries next tick.
681
+ const resolved = await targetFromProfile(async () => profile, undefined, deps.probe ?? probeHealth);
682
+ if (!resolved || !(await claim()))
683
+ return 'skipped';
684
+ await (deps.repair ?? repairTools)(adapters, resolved.target);
685
+ return 'repathed';
686
+ }
687
+ catch {
688
+ return 'skipped';
689
+ }
690
+ };
648
691
  /** Pull the widened fleet policy without ever surfacing a fetch/parse body. */
649
692
  const defaultReconcilePolicy = async (profile) => {
650
693
  if (!profile.gateway || !profile.clientKey)
@@ -1 +1 @@
1
- {"version":3,"file":"devRefresh.js","sourceRoot":"","sources":["../../src/util/devRefresh.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devRefresh.js","sourceRoot":"","sources":["../../src/util/devRefresh.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * A node-local marker saying "this daemon is quiet ON PURPOSE".
3
+ *
4
+ * `gracefulStop` closes the listener FIRST and keeps writing to the sockets it
5
+ * already accepted, so a draining daemon is alive, streaming, and unreachable on
6
+ * its port. `reconcileProxyService` reads liveness through that port, so it
7
+ * cannot tell a drain from an EDR kill — and healing the daemon it thinks is
8
+ * dead means `launchctl bootout` on one that is mid-response.
9
+ *
10
+ * Checking whether the PROCESS exists would not separate the two either:
11
+ * reconcile deliberately heals a WEDGED daemon (alive, unresponsive), which
12
+ * looks identical from outside. Intent is the distinguishing fact and only the
13
+ * daemon has it, so the daemon states it here.
14
+ *
15
+ * A file rather than memory because the reader is a different process (the
16
+ * scheduler tick / SessionStart hook). Not durable state — it is node-local,
17
+ * ephemeral, single-writer, and losing it only costs a bounce (durable-state.md
18
+ * rule 2). Content-free: one absolute deadline, no request or user data.
19
+ *
20
+ * The deadline is what makes a SIGKILLed daemon safe. A marker left behind by a
21
+ * killed process expires on its own, so a genuinely dead daemon can never block
22
+ * healing for more than the drain it claimed.
23
+ */
24
+ import { readFileSync, rmSync, writeFileSync, mkdirSync } from 'node:fs';
25
+ import { join } from 'node:path';
26
+ import { stateDir } from './persist.js';
27
+ const markerPath = () => join(stateDir(), 'draining');
28
+ /**
29
+ * Declare a drain in progress until `deadlineMs` (absolute epoch ms).
30
+ *
31
+ * Synchronous on purpose: the callers are a signal handler and a shutdown route
32
+ * that exit immediately afterwards, and an await here could lose the write.
33
+ * Best-effort throughout — failing to write the marker costs at most the bounce
34
+ * this exists to prevent, so it must never break the shutdown path.
35
+ */
36
+ export const markDraining = (deadlineMs) => {
37
+ try {
38
+ mkdirSync(stateDir(), { recursive: true });
39
+ writeFileSync(markerPath(), `${Math.floor(deadlineMs)}\n`, 'utf-8');
40
+ }
41
+ catch {
42
+ // Best-effort: a drain we couldn't announce still drains.
43
+ }
44
+ };
45
+ /** Drop the marker. Called on a clean exit and again at daemon startup. */
46
+ export const clearDraining = () => {
47
+ try {
48
+ rmSync(markerPath(), { force: true });
49
+ }
50
+ catch {
51
+ // Best-effort: an expired marker is ignored anyway.
52
+ }
53
+ };
54
+ /**
55
+ * The furthest ahead a claim may reach. A drain cannot legitimately outlast the
56
+ * daemon's idle ceiling, so anything beyond this is not a claim worth honouring
57
+ * — and honouring it would strand a dead daemon for as long as the bogus value
58
+ * says. Must stay >= IDLE_DRAIN_CEILING_MS; drainMarker.test.ts asserts that
59
+ * against the real constant so the two cannot drift apart.
60
+ */
61
+ export const MAX_DRAIN_CLAIM_MS = 16 * 60_000;
62
+ /**
63
+ * True while a daemon has announced a drain that has not yet expired. Anything
64
+ * unreadable, unparseable, past its deadline or reaching implausibly far ahead
65
+ * reads as "not draining" — the marker may only ever SUPPRESS a bounce, never
66
+ * invent a reason to skip healing a daemon that is genuinely gone.
67
+ */
68
+ export const isDraining = (now = Date.now()) => {
69
+ let raw;
70
+ try {
71
+ raw = readFileSync(markerPath(), 'utf-8');
72
+ }
73
+ catch {
74
+ return false;
75
+ }
76
+ const value = raw.trim();
77
+ // Digits only. `parseInt` would take the numeric prefix of a corrupted
78
+ // "<future epoch>garbage" and honour it, stranding a dead or wedged daemon
79
+ // until that timestamp passed.
80
+ if (!/^\d+$/.test(value))
81
+ return false;
82
+ const deadline = Number(value);
83
+ return (Number.isSafeInteger(deadline) &&
84
+ deadline > now &&
85
+ // Bounded, so neither a digits-only corruption nor a clock that jumped
86
+ // backwards can suppress healing beyond one legitimate drain.
87
+ deadline <= now + MAX_DRAIN_CLAIM_MS);
88
+ };
89
+ //# sourceMappingURL=drainMarker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drainMarker.js","sourceRoot":"","sources":["../../src/util/drainMarker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,MAAM,UAAU,GAAG,GAAW,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,UAAkB,EAAQ,EAAE;IACvD,IAAI,CAAC;QACH,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,aAAa,CAAC,UAAU,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAAC,MAAM,CAAC;QACP,0DAA0D;IAC5D,CAAC;AACH,CAAC,CAAC;AAEF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,aAAa,GAAG,GAAS,EAAE;IACtC,IAAI,CAAC;QACH,MAAM,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,oDAAoD;IACtD,CAAC;AACH,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,GAAG,MAAM,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAc,IAAI,CAAC,GAAG,EAAE,EAAW,EAAE;IAC9D,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACzB,uEAAuE;IACvE,2EAA2E;IAC3E,+BAA+B;IAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO,CACL,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC;QAC9B,QAAQ,GAAG,GAAG;QACd,uEAAuE;QACvE,8DAA8D;QAC9D,QAAQ,IAAI,GAAG,GAAG,kBAAkB,CACrC,CAAC;AACJ,CAAC,CAAC"}
@@ -10,9 +10,10 @@
10
10
  * registrations already point at the durable copy.
11
11
  */
12
12
  import { spawnSync } from 'node:child_process';
13
+ import { realpathSync } from 'node:fs';
13
14
  import { access, cp, mkdir, readFile, realpath, rename, rm, writeFile, } from 'node:fs/promises';
14
15
  import { tmpdir } from 'node:os';
15
- import { dirname, join, resolve } from 'node:path';
16
+ import { basename, dirname, join, resolve } from 'node:path';
16
17
  import { ensureStateDir, stateDir } from './persist.js';
17
18
  const normalized = (path) => resolve(path).replace(/\\/g, '/').toLowerCase();
18
19
  /** npm's `_npx` content-addressed execution cache on POSIX and Windows. */
@@ -38,6 +39,49 @@ const runsUnderNode = (execPath) => /[\\/](node|node\.exe)$/i.test(execPath);
38
39
  export const runtimeEntryPath = (context = runtimeContext()) => runsUnderNode(context.execPath) && context.scriptPath
39
40
  ? context.scriptPath
40
41
  : context.execPath;
42
+ /**
43
+ * `<root>/bin/anyray-connect` when that launcher resolves to the running binary.
44
+ * A managed install runs as `<root>/versions/<semver>`; an npm/dev/MDM copy no
45
+ * launcher points at keeps its own path.
46
+ */
47
+ const managedLauncherPath = (execPath) => {
48
+ const versionsDir = dirname(execPath);
49
+ if (basename(versionsDir) !== 'versions')
50
+ return undefined;
51
+ const launcher = join(dirname(versionsDir), 'bin', process.platform === 'win32' ? 'anyray-connect.exe' : 'anyray-connect');
52
+ try {
53
+ return realpathSync(launcher) === realpathSync(execPath)
54
+ ? launcher
55
+ : undefined;
56
+ }
57
+ catch {
58
+ return undefined;
59
+ }
60
+ };
61
+ /**
62
+ * The entry path to embed in anything that OUTLIVES this process — a hook, an
63
+ * MCP registration, a login service. Like {@link runtimeEntryPath}, except a
64
+ * managed install collapses to its launcher: self-update prunes the
65
+ * `versions/<semver>` it runs as, and every config naming it then ENOENTs.
66
+ */
67
+ export const stableEntryPath = (context = runtimeContext()) => {
68
+ const entry = runtimeEntryPath(context);
69
+ if (entry !== context.execPath)
70
+ return entry;
71
+ return managedLauncherPath(entry) ?? entry;
72
+ };
73
+ /** Whether a launcher backs this binary — i.e. paths written earlier could rot. */
74
+ export const launcherBacked = (context = runtimeContext()) => stableEntryPath(context) !== runtimeEntryPath(context);
75
+ /**
76
+ * How to re-invoke this cli with `args` from a persisted config: the standalone
77
+ * binary runs directly, a Node/npx runtime re-runs its entry script under node.
78
+ */
79
+ export const stableInvocation = (args, context = runtimeContext()) => {
80
+ const entryPath = stableEntryPath(context);
81
+ return runsUnderNode(context.execPath) && context.scriptPath
82
+ ? { command: context.execPath, args: [entryPath, ...args], entryPath }
83
+ : { command: entryPath, args, entryPath };
84
+ };
41
85
  /**
42
86
  * Directory to prepend to PATH so a bare `anyray-connect …` resolves in a fresh
43
87
  * shell. A `curl | sh` install drops the standalone binary under `~/.anyray/bin`,
@@ -50,7 +94,7 @@ export const runtimeEntryPath = (context = runtimeContext()) => runsUnderNode(co
50
94
  * not exist, but a guarded PATH prepend of a missing dir is a harmless no-op.
51
95
  */
52
96
  export const durableBinDir = (context = runtimeContext()) => {
53
- const entry = runtimeEntryPath(context);
97
+ const entry = stableEntryPath(context);
54
98
  if (!runsUnderNode(context.execPath) && !isEphemeralRuntimePath(entry)) {
55
99
  return dirname(entry);
56
100
  }