codeam-cli 2.61.86 → 2.61.87

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/CHANGELOG.md CHANGED
@@ -4,6 +4,12 @@ All notable changes to `codeam-cli` are documented here.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [2.61.86] — 2026-08-07
8
+
9
+ ### Fixed
10
+
11
+ - **cli:** Per-tools/call watchdog on the httpUrl MCP relay (agent hang → clean tool error) (#592)
12
+
7
13
  ## [2.61.85] — 2026-08-06
8
14
 
9
15
  ### Fixed
package/dist/index.js CHANGED
@@ -7800,7 +7800,7 @@ function readAnonId() {
7800
7800
  }
7801
7801
  function superProperties() {
7802
7802
  return {
7803
- cliVersion: true ? "2.61.86" : "0.0.0-dev",
7803
+ cliVersion: true ? "2.61.87" : "0.0.0-dev",
7804
7804
  nodeVersion: process.version,
7805
7805
  platform: process.platform,
7806
7806
  arch: process.arch,
@@ -7981,7 +7981,7 @@ var os4 = __toESM(require("os"));
7981
7981
  // package.json
7982
7982
  var package_default = {
7983
7983
  name: "codeam-cli",
7984
- version: "2.61.86",
7984
+ version: "2.61.87",
7985
7985
  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.",
7986
7986
  type: "commonjs",
7987
7987
  main: "dist/index.js",
@@ -9257,7 +9257,7 @@ var CommandRelayService = class _CommandRelayService {
9257
9257
  // fresh + clear the "CLI update available" banner after a self-update
9258
9258
  // (a codespace that reinstalls @latest reconnects via heartbeat, not
9259
9259
  // pair/reconnect). Older backends ignore the extra field.
9260
- ..."2.61.86" ? { ideVersion: "2.61.86" } : {}
9260
+ ..."2.61.87" ? { ideVersion: "2.61.87" } : {}
9261
9261
  }).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
9262
9262
  }
9263
9263
  /**
@@ -20430,7 +20430,7 @@ async function autoUpgradeBeforeCriticalCommand() {
20430
20430
  if (process.env.NODE_ENV === "test") return;
20431
20431
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
20432
20432
  if (process.env.CI) return;
20433
- const current = true ? "2.61.86" : null;
20433
+ const current = true ? "2.61.87" : null;
20434
20434
  if (!current) return;
20435
20435
  const cache = readCache();
20436
20436
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -20447,7 +20447,7 @@ function checkForUpdates() {
20447
20447
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
20448
20448
  if (process.env.CI) return;
20449
20449
  if (!process.stdout.isTTY) return;
20450
- const current = true ? "2.61.86" : null;
20450
+ const current = true ? "2.61.87" : null;
20451
20451
  if (!current) return;
20452
20452
  const cache = readCache();
20453
20453
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -20467,7 +20467,7 @@ var SELF_UPDATE_INTERVAL_MS = 60 * 60 * 1e3;
20467
20467
  var SELF_UPDATE_VIEW_TIMEOUT_MS = 3e4;
20468
20468
  var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
20469
20469
  function currentCliVersion() {
20470
- return true ? "2.61.86" : null;
20470
+ return true ? "2.61.87" : null;
20471
20471
  }
20472
20472
  function runCmd(cmd, args2, timeoutMs) {
20473
20473
  return new Promise((resolve9) => {
@@ -20800,6 +20800,7 @@ function buildFleetBoxRunArgs(p2) {
20800
20800
  ];
20801
20801
  }
20802
20802
  var DOCKER_RUN_TIMEOUT_MS = 12e4;
20803
+ var DOCKER_RUN_WITH_PULL_TIMEOUT_MS = 6e5;
20803
20804
  var defaultDockerRunner = {
20804
20805
  run(args2, opts = {}) {
20805
20806
  return new Promise((resolve9) => {
@@ -21253,7 +21254,9 @@ var HostAgentSupervisor = class {
21253
21254
  }
21254
21255
  const args2 = buildFleetBoxRunArgs(payload);
21255
21256
  const res = await this.docker.run(args2, {
21256
- timeoutMs: DOCKER_RUN_TIMEOUT_MS,
21257
+ // `--pull=always` pulls the ~1 GB image inline — needs the pull bound, not
21258
+ // the 120 s fast bound (which SIGTERM'd the create mid-pull, code=143).
21259
+ timeoutMs: DOCKER_RUN_WITH_PULL_TIMEOUT_MS,
21257
21260
  env: { CODEAM_ENROLL_TOKEN: payload.enrollToken }
21258
21261
  });
21259
21262
  if (res.code === 0) {
@@ -21293,7 +21296,8 @@ var HostAgentSupervisor = class {
21293
21296
  limits: payload.limits
21294
21297
  });
21295
21298
  const res2 = await this.docker.run(args2, {
21296
- timeoutMs: DOCKER_RUN_TIMEOUT_MS,
21299
+ // Recreate also pulls `:latest` inline — use the pull bound, not 120 s.
21300
+ timeoutMs: DOCKER_RUN_WITH_PULL_TIMEOUT_MS,
21297
21301
  env: { CODEAM_ENROLL_TOKEN: payload.enrollToken }
21298
21302
  });
21299
21303
  if (res2.code === 0) {
@@ -41487,7 +41491,7 @@ function checkChokidar() {
41487
41491
  }
41488
41492
  async function doctor(args2 = []) {
41489
41493
  const json = args2.includes("--json");
41490
- const cliVersion = true ? "2.61.86" : "0.0.0-dev";
41494
+ const cliVersion = true ? "2.61.87" : "0.0.0-dev";
41491
41495
  const apiBase2 = resolveApiBaseUrl();
41492
41496
  const diagnosticId = (0, import_node_crypto13.randomUUID)();
41493
41497
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -41878,7 +41882,7 @@ async function mcpRun(args2) {
41878
41882
  // src/commands/version.ts
41879
41883
  var import_picocolors15 = __toESM(require("picocolors"));
41880
41884
  function version2() {
41881
- const v = true ? "2.61.86" : "unknown";
41885
+ const v = true ? "2.61.87" : "unknown";
41882
41886
  console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
41883
41887
  }
41884
41888
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "2.61.86",
3
+ "version": "2.61.87",
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",