@claudexor/cli 3.23.2 → 3.25.1

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 (118) hide show
  1. package/dist/account-management.d.ts +17 -0
  2. package/dist/account-management.d.ts.map +1 -0
  3. package/dist/account-management.js +35 -0
  4. package/dist/account-management.js.map +1 -0
  5. package/dist/account-observations.d.ts +7 -3
  6. package/dist/account-observations.d.ts.map +1 -1
  7. package/dist/account-observations.js +16 -4
  8. package/dist/account-observations.js.map +1 -1
  9. package/dist/account-reset-command.d.ts +3 -0
  10. package/dist/account-reset-command.d.ts.map +1 -0
  11. package/dist/account-reset-command.js +32 -0
  12. package/dist/account-reset-command.js.map +1 -0
  13. package/dist/account-reset-services.d.ts +341 -0
  14. package/dist/account-reset-services.d.ts.map +1 -0
  15. package/dist/account-reset-services.js +183 -0
  16. package/dist/account-reset-services.js.map +1 -0
  17. package/dist/account-resource-query.d.ts +18 -0
  18. package/dist/account-resource-query.d.ts.map +1 -0
  19. package/dist/account-resource-query.js +62 -0
  20. package/dist/account-resource-query.js.map +1 -0
  21. package/dist/accounts-services.d.ts +1 -0
  22. package/dist/accounts-services.d.ts.map +1 -1
  23. package/dist/accounts-services.js +4 -2
  24. package/dist/accounts-services.js.map +1 -1
  25. package/dist/claude-account-resources.d.ts +5 -0
  26. package/dist/claude-account-resources.d.ts.map +1 -0
  27. package/dist/claude-account-resources.js +134 -0
  28. package/dist/claude-account-resources.js.map +1 -0
  29. package/dist/claude-oauth-codec.d.ts +4 -0
  30. package/dist/claude-oauth-codec.d.ts.map +1 -0
  31. package/dist/claude-oauth-codec.js +71 -0
  32. package/dist/claude-oauth-codec.js.map +1 -0
  33. package/dist/claude-oauth-credential.d.ts +6 -0
  34. package/dist/claude-oauth-credential.d.ts.map +1 -1
  35. package/dist/claude-oauth-credential.js +18 -0
  36. package/dist/claude-oauth-credential.js.map +1 -1
  37. package/dist/claude-oauth-fetch.d.ts +1 -1
  38. package/dist/claude-oauth-fetch.d.ts.map +1 -1
  39. package/dist/claude-oauth-fetch.js +3 -2
  40. package/dist/claude-oauth-fetch.js.map +1 -1
  41. package/dist/claude-oauth-usage.d.ts +5 -4
  42. package/dist/claude-oauth-usage.d.ts.map +1 -1
  43. package/dist/claude-oauth-usage.js +47 -75
  44. package/dist/claude-oauth-usage.js.map +1 -1
  45. package/dist/claude-resource-source.d.ts +18 -0
  46. package/dist/claude-resource-source.d.ts.map +1 -0
  47. package/dist/claude-resource-source.js +108 -0
  48. package/dist/claude-resource-source.js.map +1 -0
  49. package/dist/claude-resource-transport.d.ts +12 -0
  50. package/dist/claude-resource-transport.d.ts.map +1 -0
  51. package/dist/claude-resource-transport.js +47 -0
  52. package/dist/claude-resource-transport.js.map +1 -0
  53. package/dist/claudexord.d.ts.map +1 -1
  54. package/dist/claudexord.js +10 -4
  55. package/dist/claudexord.js.map +1 -1
  56. package/dist/cli.js +3 -0
  57. package/dist/cli.js.map +1 -1
  58. package/dist/codex-quota-source.d.ts +7 -2
  59. package/dist/codex-quota-source.d.ts.map +1 -1
  60. package/dist/codex-quota-source.js +72 -12
  61. package/dist/codex-quota-source.js.map +1 -1
  62. package/dist/command-flags.d.ts.map +1 -1
  63. package/dist/command-flags.js +7 -0
  64. package/dist/command-flags.js.map +1 -1
  65. package/dist/control-services.d.ts +264 -118
  66. package/dist/control-services.d.ts.map +1 -1
  67. package/dist/harness-command-specs.d.ts.map +1 -1
  68. package/dist/harness-command-specs.js +11 -4
  69. package/dist/harness-command-specs.js.map +1 -1
  70. package/dist/harness-command.d.ts.map +1 -1
  71. package/dist/harness-command.js +5 -0
  72. package/dist/harness-command.js.map +1 -1
  73. package/dist/harness-install-proof.d.ts +9 -0
  74. package/dist/harness-install-proof.d.ts.map +1 -1
  75. package/dist/harness-install-proof.js +60 -8
  76. package/dist/harness-install-proof.js.map +1 -1
  77. package/dist/harness-install-recipes.d.ts +24 -1
  78. package/dist/harness-install-recipes.d.ts.map +1 -1
  79. package/dist/harness-install-recipes.js +54 -2
  80. package/dist/harness-install-recipes.js.map +1 -1
  81. package/dist/harness-install-runtime.d.ts +29 -0
  82. package/dist/harness-install-runtime.d.ts.map +1 -0
  83. package/dist/harness-install-runtime.js +51 -0
  84. package/dist/harness-install-runtime.js.map +1 -0
  85. package/dist/harness-installer.d.ts +19 -65
  86. package/dist/harness-installer.d.ts.map +1 -1
  87. package/dist/harness-installer.js +46 -48
  88. package/dist/harness-installer.js.map +1 -1
  89. package/dist/harness-maintenance-service.d.ts +473 -0
  90. package/dist/harness-maintenance-service.d.ts.map +1 -0
  91. package/dist/harness-maintenance-service.js +429 -0
  92. package/dist/harness-maintenance-service.js.map +1 -0
  93. package/dist/harness-maintenance.d.ts +62 -0
  94. package/dist/harness-maintenance.d.ts.map +1 -0
  95. package/dist/harness-maintenance.js +353 -0
  96. package/dist/harness-maintenance.js.map +1 -0
  97. package/dist/mcp-runner.d.ts.map +1 -1
  98. package/dist/mcp-runner.js +5 -0
  99. package/dist/mcp-runner.js.map +1 -1
  100. package/dist/model-services.d.ts +9 -1
  101. package/dist/model-services.d.ts.map +1 -1
  102. package/dist/model-services.js +39 -10
  103. package/dist/model-services.js.map +1 -1
  104. package/dist/ops-command-specs.d.ts.map +1 -1
  105. package/dist/ops-command-specs.js +11 -2
  106. package/dist/ops-command-specs.js.map +1 -1
  107. package/dist/quota-command.d.ts.map +1 -1
  108. package/dist/quota-command.js +38 -2
  109. package/dist/quota-command.js.map +1 -1
  110. package/dist/quota-refreshers.d.ts +3 -1
  111. package/dist/quota-refreshers.d.ts.map +1 -1
  112. package/dist/quota-refreshers.js +6 -2
  113. package/dist/quota-refreshers.js.map +1 -1
  114. package/dist/quota-services.d.ts +234 -2
  115. package/dist/quota-services.d.ts.map +1 -1
  116. package/dist/quota-services.js +49 -4
  117. package/dist/quota-services.js.map +1 -1
  118. package/package.json +25 -25
@@ -48,18 +48,18 @@
48
48
  * vendor script) run with their stdout routed onto stderr, so vendor
49
49
  * output stays visible without corrupting the machine envelope.
50
50
  */
51
- import { spawnSync } from "node:child_process";
52
51
  import { createHash } from "node:crypto";
53
52
  import { existsSync, mkdirSync, mkdtempSync, readFileSync, readSync, rmSync } from "node:fs";
54
- import { homedir, tmpdir } from "node:os";
55
- import { join, resolve } from "node:path";
56
- import { composeBaseEnv, embeddedNpmCli, pickAllowlistedEnv, WINDOWS_RUNTIME_ENV_KEYS, isWindowsNativeArch, } from "@claudexor/core";
53
+ import { tmpdir } from "node:os";
54
+ import { join } from "node:path";
55
+ import { embeddedNpmCli, isWindowsNativeArch } from "@claudexor/core";
57
56
  import { flagBool, flagStr } from "./args.js";
58
57
  import { CliError, renderCliFailure } from "./cli-error.js";
59
58
  import { print, printJson, printUsageError } from "./cli-io.js";
60
59
  import { INSTALLABLE_HARNESSES } from "./harness-command-specs.js";
61
60
  import { acquireHarnessInstallLease, HARNESS_INSTALL_LOCK_TIMEOUT_MS, } from "./harness-install-lease.js";
62
- import { proveInstalledNpm, proveInstalledScriptVendor, } from "./harness-install-proof.js";
61
+ import { compareVendorVersions, EXACT_VENDOR_VERSION, managedNpmPackageVersion, proveInstalledNpm, proveInstalledScriptVendor, } from "./harness-install-proof.js";
62
+ import { installerRuntime } from "./harness-install-runtime.js";
63
63
  import { harnessInstallerDisclosure, isHarnessInstallTarget, isInstallableHarness, NPM_PINS, scriptInstaller, TARGET_LAYOUTS, } from "./harness-install-recipes.js";
64
64
  // The recipe surface is re-exported from its historical home: callers and
65
65
  // tests import `harness-installer.js`, and the split is an internal one.
@@ -76,7 +76,7 @@ function verificationFailure(harness, reason, evidence = {}) {
76
76
  * has declared Windows support for this architecture. Post-install proof uses
77
77
  * its standard npm entrypoint, whether native or Node. Other recipes keep
78
78
  * their existing platform boundary; the remote target is unaffected. */
79
- function localPlatformRefusal(harness, platform, arch) {
79
+ export function localPlatformRefusal(harness, platform, arch) {
80
80
  if (platform !== "win32")
81
81
  return null;
82
82
  const pin = NPM_PINS[harness];
@@ -102,22 +102,14 @@ function harnessInstallException(error) {
102
102
  });
103
103
  }
104
104
  export function runHarnessInstaller(harness, options = {}) {
105
- // Anchored on the SAME `HOME` the harness PATH producer reads, so the prefix
106
- // this installs into is the prefix doctor/login/run resolve — on Windows
107
- // `homedir()` follows USERPROFILE and would silently diverge from a scoped
108
- // HOME.
109
- const home = resolve(options.home ?? ((options.sourceEnv ?? process.env).HOME || homedir()));
110
- const target = options.target ?? "remote";
111
- const platform = options.platform ?? process.platform;
112
- const arch = options.arch ?? process.arch;
105
+ const runtime = installerRuntime(options);
106
+ const { home, target, platform, arch, runnerNodePath, environment, spawn } = runtime;
113
107
  if (target === "local") {
114
108
  const unsupported = localPlatformRefusal(harness, platform, arch);
115
109
  if (unsupported)
116
110
  return unsupported;
117
111
  }
118
- const spawn = options.spawn ?? spawnSync;
119
112
  const json = options.json === true;
120
- const runnerNodePath = resolve(options.nodePath ?? process.execPath);
121
113
  // stdin inherited; child stdout -> OUR stderr (fd 2) in json mode so
122
114
  // vendor/npm output stays visible but never pollutes the JSON envelope.
123
115
  const childStdio = json ? [0, 2, 2] : "inherit";
@@ -127,27 +119,16 @@ export function runHarnessInstaller(harness, options = {}) {
127
119
  else
128
120
  print(line);
129
121
  };
130
- // Vendor-controlled npm/curl/shell children receive the shared minimal
131
- // runtime env, never the parent process's provider credentials.
132
- const resolutionSource = {
133
- ...(options.sourceEnv ?? process.env),
134
- HOME: home,
135
- // Local resolution must not read the SSH-runtime vendor prefix; the remote
136
- // flow keeps whatever its own runtime already exported.
137
- ...(target === "local" ? { CLAUDEXOR_REMOTE_RUNTIME: "0" } : {}),
138
- };
139
- const environment = {
140
- ...composeBaseEnv("clean", resolutionSource, runnerNodePath, platform),
141
- // npm and the vendor image cannot start on Windows without the process
142
- // environment the OS itself resolves against (the login/setup lanes
143
- // forward the same named set).
144
- ...(platform === "win32"
145
- ? pickAllowlistedEnv(resolutionSource, WINDOWS_RUNTIME_ENV_KEYS, platform)
146
- : {}),
147
- HOME: home,
148
- };
149
122
  const pin = NPM_PINS[harness];
150
123
  const script = scriptInstaller(harness);
124
+ const explicit = options.version !== undefined;
125
+ if (explicit && (!pin || target !== "local" || !EXACT_VENDOR_VERSION.test(options.version))) {
126
+ return {
127
+ exitCode: 1,
128
+ code: "version_selection_unsupported",
129
+ refusal: `${harness} accepts an explicit vendor version only as one exact version of a local npm recipe; nothing was executed`,
130
+ };
131
+ }
151
132
  let npmCLI;
152
133
  if (pin) {
153
134
  npmCLI = embeddedNpmCli(runnerNodePath, platform);
@@ -160,20 +141,20 @@ export function runHarnessInstaller(harness, options = {}) {
160
141
  };
161
142
  }
162
143
  }
163
- const proofRuntime = { runnerNodePath, platform, arch, resolutionSource, environment, spawn };
164
144
  // The remote target runs in a PTY the operator is watching and keeps the
165
145
  // historical exit-code contract. Only the unattended local target has to
166
146
  // prove what it installed.
167
147
  const proofRequired = target === "local";
168
- const proveInstalled = () => pin
148
+ const wanted = options.version ?? pin?.version;
149
+ const proveInstalled = (version = wanted) => pin && version
169
150
  ? proveInstalledNpm({
170
151
  vendorRoot: TARGET_LAYOUTS[target].root(home),
171
152
  npmPackage: pin.npmPackage,
172
153
  binaryNames: pin.binaryNames,
173
- expectedVersion: pin.version,
174
- }, proofRuntime)
154
+ expectedVersion: version,
155
+ }, runtime)
175
156
  : /* c8 ignore next -- every non-npm harness has a script row */
176
- proveInstalledScriptVendor(script?.binaryName ?? harness, proofRuntime);
157
+ proveInstalledScriptVendor(script?.binaryName ?? harness, runtime);
177
158
  let lease;
178
159
  try {
179
160
  // Serialization belongs to the same contract as the proof: a machine caller
@@ -195,23 +176,40 @@ export function runHarnessInstaller(harness, options = {}) {
195
176
  };
196
177
  }
197
178
  }
198
- if (pin && npmCLI) {
179
+ if (pin && npmCLI && wanted) {
199
180
  const vendorRoot = TARGET_LAYOUTS[target].root(home);
200
181
  const alreadyInstalled = proofRequired ? proveInstalled() : null;
201
182
  if (alreadyInstalled?.ok) {
202
- note(`${harness} ${pin.version} is already installed at ${vendorRoot}; nothing to change`);
183
+ note(`${harness} ${wanted} is already installed at ${vendorRoot}; nothing to change`);
203
184
  return { exitCode: 0, ...alreadyInstalled.proof };
204
185
  }
186
+ const declared = proofRequired
187
+ ? managedNpmPackageVersion(vendorRoot, pin.npmPackage, platform)
188
+ : null;
189
+ const newer = !explicit && declared && EXACT_VENDOR_VERSION.test(declared)
190
+ ? compareVendorVersions(declared, pin.version) > 0 && proveInstalled(declared)
191
+ : false;
192
+ if (newer && newer.ok) {
193
+ // Ensure never downgrades a runnable newer copy; the pin stays a separate fact.
194
+ note(`${harness} ${declared} (newer than the tested ${pin.version}) is installed; nothing to change`);
195
+ return { exitCode: 0, ...newer.proof };
196
+ }
197
+ const previous = explicit ? { previousVersion: declared } : {};
205
198
  (options.mkdir ?? mkdirSync)(vendorRoot, { recursive: true, mode: 0o700 });
206
- const result = spawn(runnerNodePath, [npmCLI, "install", "--global", "--prefix", vendorRoot, `${pin.npmPackage}@${pin.version}`], { stdio: childStdio, env: environment });
207
- if (result.status !== 0)
208
- return { exitCode: result.status ?? 1 };
199
+ const result = spawn(runnerNodePath, [npmCLI, "install", "--global", "--prefix", vendorRoot, `${pin.npmPackage}@${wanted}`], { stdio: childStdio, env: environment });
200
+ if (result.status !== 0) {
201
+ return {
202
+ exitCode: result.status ?? 1,
203
+ ...(result.signal ? { code: "installer_terminated" } : {}),
204
+ ...previous,
205
+ };
206
+ }
209
207
  if (!proofRequired)
210
208
  return { exitCode: 0 };
211
209
  const installed = proveInstalled();
212
210
  return installed.ok
213
- ? { exitCode: 0, ...installed.proof }
214
- : verificationFailure(harness, installed.reason);
211
+ ? { exitCode: 0, ...installed.proof, ...previous }
212
+ : { ...verificationFailure(harness, installed.reason), ...previous };
215
213
  }
216
214
  // Script vendors (cursor, agy): download the COMPLETE vendor script before
217
215
  // execution (`--fail` rejects HTTP error bodies), read it back and record
@@ -324,7 +322,7 @@ function printHumanDisclosure(disclosure) {
324
322
  }
325
323
  /** Blocking y/N read on the controlling TTY (fd 0). Anything but an explicit
326
324
  * yes declines — closing stdin or an unreadable terminal never installs. */
327
- function confirmOnTty(question) {
325
+ export function confirmOnTty(question) {
328
326
  process.stdout.write(question);
329
327
  const buffer = Buffer.alloc(1024);
330
328
  let input = "";
@@ -1 +1 @@
1
- {"version":3,"file":"harness-installer.js","sourceRoot":"","sources":["../src/harness-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"harness-installer.js","sourceRoot":"","sources":["../src/harness-installer.ts"],"names":[],"mappings":"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"}