codeam-cli 2.65.5 → 2.65.6

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 (2) hide show
  1. package/dist/index.js +23 -43
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -8079,7 +8079,7 @@ function readAnonId() {
8079
8079
  }
8080
8080
  function superProperties() {
8081
8081
  return {
8082
- cliVersion: true ? "2.65.5" : "0.0.0-dev",
8082
+ cliVersion: true ? "2.65.6" : "0.0.0-dev",
8083
8083
  nodeVersion: process.version,
8084
8084
  platform: process.platform,
8085
8085
  arch: process.arch,
@@ -8260,7 +8260,7 @@ var os4 = __toESM(require("os"));
8260
8260
  // package.json
8261
8261
  var package_default = {
8262
8262
  name: "codeam-cli",
8263
- version: "2.65.5",
8263
+ version: "2.65.6",
8264
8264
  description: "Workflow-continuity bridge for AI coding agents. Wrap Claude Code or Codex in a PTY and supervise, approve, and redirect the session from any device \u2014 async. The terminal companion for CodeAgent Mobile.",
8265
8265
  type: "commonjs",
8266
8266
  main: "dist/index.js",
@@ -9712,7 +9712,7 @@ var CommandRelayService = class _CommandRelayService {
9712
9712
  // fresh + clear the "CLI update available" banner after a self-update
9713
9713
  // (a codespace that reinstalls @latest reconnects via heartbeat, not
9714
9714
  // pair/reconnect). Older backends ignore the extra field.
9715
- ..."2.65.5" ? { ideVersion: "2.65.5" } : {}
9715
+ ..."2.65.6" ? { ideVersion: "2.65.6" } : {}
9716
9716
  }).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
9717
9717
  }
9718
9718
  /**
@@ -21641,7 +21641,7 @@ async function autoUpgradeBeforeCriticalCommand() {
21641
21641
  if (process.env.NODE_ENV === "test") return;
21642
21642
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
21643
21643
  if (process.env.CI) return;
21644
- const current2 = true ? "2.65.5" : null;
21644
+ const current2 = true ? "2.65.6" : null;
21645
21645
  if (!current2) return;
21646
21646
  const cache = readCache();
21647
21647
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -21658,7 +21658,7 @@ function checkForUpdates() {
21658
21658
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
21659
21659
  if (process.env.CI) return;
21660
21660
  if (!process.stdout.isTTY) return;
21661
- const current2 = true ? "2.65.5" : null;
21661
+ const current2 = true ? "2.65.6" : null;
21662
21662
  if (!current2) return;
21663
21663
  const cache = readCache();
21664
21664
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -21678,7 +21678,7 @@ var SELF_UPDATE_INTERVAL_MS = 60 * 60 * 1e3;
21678
21678
  var SELF_UPDATE_VIEW_TIMEOUT_MS = 3e4;
21679
21679
  var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
21680
21680
  function currentCliVersion() {
21681
- return true ? "2.65.5" : null;
21681
+ return true ? "2.65.6" : null;
21682
21682
  }
21683
21683
  function runCmd(cmd, args2, timeoutMs) {
21684
21684
  return new Promise((resolve9) => {
@@ -33971,10 +33971,7 @@ var AcpClient = class {
33971
33971
  const input = import_node_stream.Readable.toWeb(child.stdout);
33972
33972
  const output = import_node_stream.Writable.toWeb(child.stdin);
33973
33973
  const stream = ndJsonStream(output, input);
33974
- this.connection = new ClientSideConnection(
33975
- (_agent) => this.buildClient(),
33976
- stream
33977
- );
33974
+ this.connection = new ClientSideConnection((_agent) => this.buildClient(), stream);
33978
33975
  const startAborted = new Promise((_2, reject) => {
33979
33976
  this.startAbortReject = reject;
33980
33977
  });
@@ -34105,14 +34102,8 @@ var AcpClient = class {
34105
34102
  if (!this.connection || !this.sessionId) {
34106
34103
  throw new Error("AcpClient.sendPromptOnce called before start()");
34107
34104
  }
34108
- const textLen = blocks.reduce(
34109
- (n, b) => b.type === "text" ? n + b.text.length : n,
34110
- 0
34111
- );
34112
- const imageCount = blocks.reduce(
34113
- (n, b) => b.type === "image" ? n + 1 : n,
34114
- 0
34115
- );
34105
+ const textLen = blocks.reduce((n, b) => b.type === "text" ? n + b.text.length : n, 0);
34106
+ const imageCount = blocks.reduce((n, b) => b.type === "image" ? n + 1 : n, 0);
34116
34107
  log.info(
34117
34108
  "acpClient",
34118
34109
  `prompt \u2192 session=${this.sessionId.slice(0, 8)} textChars=${textLen} imageBlocks=${imageCount}`
@@ -34133,6 +34124,7 @@ var AcpClient = class {
34133
34124
  this.pendingToolCalls.clear();
34134
34125
  try {
34135
34126
  const result = await Promise.race([send, idle.promise]);
34127
+ await new Promise((resolve9) => setImmediate(resolve9));
34136
34128
  log.info(
34137
34129
  "acpClient",
34138
34130
  `prompt \u2190 ok stopReason=${result.stopReason ?? "?"} elapsedMs=${Date.now() - t0}`
@@ -34413,9 +34405,7 @@ var AcpClient = class {
34413
34405
  * hardcoded list, no guessed model.
34414
34406
  */
34415
34407
  captureModelConfig(configOptions) {
34416
- const modelOption = configOptions.find(
34417
- (o) => o.category === "model" && o.type === "select"
34418
- );
34408
+ const modelOption = configOptions.find((o) => o.category === "model" && o.type === "select");
34419
34409
  if (!modelOption || modelOption.type !== "select") {
34420
34410
  this.modelConfigId = void 0;
34421
34411
  this.availableModels = [];
@@ -34447,9 +34437,7 @@ var AcpClient = class {
34447
34437
  throw new Error("AcpClient.setMode called before start()");
34448
34438
  }
34449
34439
  if (this.availableModes.length === 0) {
34450
- throw new Error(
34451
- "mode selection not available: this agent advertises no ACP session modes"
34452
- );
34440
+ throw new Error("mode selection not available: this agent advertises no ACP session modes");
34453
34441
  }
34454
34442
  log.info("acpClient", `setMode \u2192 ${modeId}`);
34455
34443
  await this.connection.setSessionMode({
@@ -34594,11 +34582,9 @@ var AcpClient = class {
34594
34582
  const code = err.code;
34595
34583
  if (code === "ENOENT") throw RequestError.resourceNotFound(params.path);
34596
34584
  if (code === "EACCES" || code === "EPERM") {
34597
- throw new RequestError(
34598
- -32002,
34599
- `Permission denied: ${params.path}`,
34600
- { uri: params.path }
34601
- );
34585
+ throw new RequestError(-32002, `Permission denied: ${params.path}`, {
34586
+ uri: params.path
34587
+ });
34602
34588
  }
34603
34589
  if (code === "EISDIR") {
34604
34590
  throw RequestError.invalidParams(`path is a directory: ${params.path}`);
@@ -34616,16 +34602,12 @@ var AcpClient = class {
34616
34602
  } catch (err) {
34617
34603
  const code = err.code;
34618
34604
  if (code === "EACCES" || code === "EPERM") {
34619
- throw new RequestError(
34620
- -32002,
34621
- `Permission denied: ${params.path}`,
34622
- { uri: params.path }
34623
- );
34605
+ throw new RequestError(-32002, `Permission denied: ${params.path}`, {
34606
+ uri: params.path
34607
+ });
34624
34608
  }
34625
34609
  if (code === "ENOENT") {
34626
- throw RequestError.invalidParams(
34627
- `Parent directory does not exist for: ${params.path}`
34628
- );
34610
+ throw RequestError.invalidParams(`Parent directory does not exist for: ${params.path}`);
34629
34611
  }
34630
34612
  throw RequestError.internalError({ uri: params.path }, code ?? String(err));
34631
34613
  }
@@ -34704,9 +34686,7 @@ function knownAgentBinaryDirs() {
34704
34686
  });
34705
34687
  }
34706
34688
  function expandPathForAgentBinaries(existingPath) {
34707
- const existing = new Set(
34708
- existingPath.split(path74.delimiter).filter((p2) => p2.length > 0)
34709
- );
34689
+ const existing = new Set(existingPath.split(path74.delimiter).filter((p2) => p2.length > 0));
34710
34690
  const additions = [];
34711
34691
  for (const dir of knownAgentBinaryDirs()) {
34712
34692
  if (!existing.has(dir)) {
@@ -35383,7 +35363,7 @@ var DEGENERATE_LINE_RE = new RegExp(
35383
35363
  "^[ \\t]*(`{0,2})[ \\t]*" + HANDOFF_FENCE_TAG + "[ \\t]+(\\{.*\\})[ \\t]*\\1[ \\t]*\\r?$"
35384
35364
  );
35385
35365
  var TAG_ONLY_LINE_RE = new RegExp(
35386
- "^[ \\t]*`{0,2}[ \\t]*" + HANDOFF_FENCE_TAG + "[ \\t]*`{0,2}[ \\t]*\\r?$"
35366
+ "^[ \\t]*`*[ \\t]*" + HANDOFF_FENCE_TAG + "[ \\t]*`*[ \\t]*\\r?$"
35387
35367
  );
35388
35368
  var CLOSING_BACKTICK_LINE_RE = /^[ \t]*`+[ \t]*\r?$/;
35389
35369
  var OUTER_FENCE_RE = /(`{4,})[\s\S]*?\1/g;
@@ -44645,7 +44625,7 @@ function checkChokidar() {
44645
44625
  }
44646
44626
  async function doctor(args2 = []) {
44647
44627
  const json = args2.includes("--json");
44648
- const cliVersion = true ? "2.65.5" : "0.0.0-dev";
44628
+ const cliVersion = true ? "2.65.6" : "0.0.0-dev";
44649
44629
  const apiBase2 = resolveApiBaseUrl();
44650
44630
  const diagnosticId = (0, import_node_crypto13.randomUUID)();
44651
44631
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -45036,7 +45016,7 @@ async function mcpRun(args2) {
45036
45016
  // src/commands/version.ts
45037
45017
  var import_picocolors15 = __toESM(require("picocolors"));
45038
45018
  function version2() {
45039
- const v = true ? "2.65.5" : "unknown";
45019
+ const v = true ? "2.65.6" : "unknown";
45040
45020
  console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
45041
45021
  }
45042
45022
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "2.65.5",
3
+ "version": "2.65.6",
4
4
  "description": "Workflow-continuity bridge for AI coding agents. Wrap Claude Code or Codex in a PTY and supervise, approve, and redirect the session from any device — async. The terminal companion for CodeAgent Mobile.",
5
5
  "type": "commonjs",
6
6
  "main": "dist/index.js",