codeam-cli 2.76.43 → 2.76.44

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.76.43] — 2026-10-31
8
+
9
+ ### Fixed
10
+
11
+ - **box:** Root stays out of the box's npm cache; the CLI heals a foreign cache and installs expo (#1013)
12
+
7
13
  ## [2.76.42] — 2026-10-31
8
14
 
9
15
  ### Added
package/dist/index.js CHANGED
@@ -3518,8 +3518,10 @@ function pointPickerScript(opts) {
3518
3518
 
3519
3519
  // Inside a React Native WebView the document is TOP-LEVEL (window.parent ===
3520
3520
  // window), so the only way out is the bridge RN injects. It carries STRINGS.
3521
+ // Any mode may answer through it: the host app owns the WebView, there is no
3522
+ // third party to keep out \u2014 only the control API (the door below) needs
3523
+ // \`globalName\`, because a global turns the picker on with nobody's permission.
3521
3524
  function rnBridge() {
3522
- if (!GLOBAL) return null;
3523
3525
  var rn = W.ReactNativeWebView;
3524
3526
  return rn && typeof rn.postMessage === 'function' ? rn : null;
3525
3527
  }
@@ -3530,13 +3532,17 @@ function pointPickerScript(opts) {
3530
3532
  msg[FIELD] = CH;
3531
3533
  msg.type = type;
3532
3534
  if (extra) for (var k in extra) msg[k] = extra[k];
3535
+ // A parent window first (the feed framing the app; a host that installed
3536
+ // one); only a top-level document falls back to the React Native bridge
3537
+ // (2026-11-01: Remix's phone app got no \`on\` and no \`pick\` here).
3538
+ if (W.parent !== W) {
3539
+ try { W.parent.postMessage(msg, driver); } catch (e) {}
3540
+ return;
3541
+ }
3533
3542
  var rn = rnBridge();
3534
3543
  if (rn) {
3535
3544
  try { rn.postMessage(JSON.stringify(msg)); } catch (e) {}
3536
- return;
3537
3545
  }
3538
- if (W.parent === W) return;
3539
- try { W.parent.postMessage(msg, driver); } catch (e) {}
3540
3546
  }
3541
3547
 
3542
3548
  function clip(s, max) { return s.length > max ? s.slice(0, max - 1) + '\\u2026' : s; }
@@ -11354,7 +11360,7 @@ function readAnonId() {
11354
11360
  }
11355
11361
  function superProperties() {
11356
11362
  return {
11357
- cliVersion: true ? "2.76.43" : "0.0.0-dev",
11363
+ cliVersion: true ? "2.76.44" : "0.0.0-dev",
11358
11364
  nodeVersion: process.version,
11359
11365
  platform: process.platform,
11360
11366
  arch: process.arch,
@@ -11603,7 +11609,7 @@ var http = __toESM(require("http"));
11603
11609
  // package.json
11604
11610
  var package_default = {
11605
11611
  name: "codeam-cli",
11606
- version: "2.76.43",
11612
+ version: "2.76.44",
11607
11613
  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.",
11608
11614
  type: "commonjs",
11609
11615
  main: "dist/index.js",
@@ -12979,7 +12985,7 @@ var CommandRelayService = class _CommandRelayService {
12979
12985
  // fresh + clear the "CLI update available" banner after a self-update
12980
12986
  // (a codespace that reinstalls @latest reconnects via heartbeat, not
12981
12987
  // pair/reconnect). Older backends ignore the extra field.
12982
- ..."2.76.43" ? { ideVersion: "2.76.43" } : {}
12988
+ ..."2.76.44" ? { ideVersion: "2.76.44" } : {}
12983
12989
  };
12984
12990
  try {
12985
12991
  const res = await _postJson(`${API_BASE2}/api/plugin/heartbeat`, body, this.pollSecretHeader());
@@ -52288,7 +52294,7 @@ async function autoUpgradeBeforeCriticalCommand() {
52288
52294
  if (process.env.NODE_ENV === "test") return;
52289
52295
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
52290
52296
  if (process.env.CI) return;
52291
- const current2 = true ? "2.76.43" : null;
52297
+ const current2 = true ? "2.76.44" : null;
52292
52298
  if (!current2) return;
52293
52299
  const cache = readCache();
52294
52300
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -52305,7 +52311,7 @@ function checkForUpdates() {
52305
52311
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
52306
52312
  if (process.env.CI) return;
52307
52313
  if (!process.stdout.isTTY) return;
52308
- const current2 = true ? "2.76.43" : null;
52314
+ const current2 = true ? "2.76.44" : null;
52309
52315
  if (!current2) return;
52310
52316
  const cache = readCache();
52311
52317
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -52611,7 +52617,7 @@ var SELF_UPDATE_VIEW_TIMEOUT_MS = 3e4;
52611
52617
  var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
52612
52618
  var SELF_UPDATE_LS_TIMEOUT_MS = 15e3;
52613
52619
  function currentCliVersion() {
52614
- return true ? "2.76.43" : null;
52620
+ return true ? "2.76.44" : null;
52615
52621
  }
52616
52622
  async function installedVersion(deps) {
52617
52623
  const ls = await deps.run(
@@ -52834,7 +52840,7 @@ function signalHostReady(send = process.send?.bind(process)) {
52834
52840
  }
52835
52841
  function defaultDeps() {
52836
52842
  return {
52837
- ownVersion: true ? "2.76.43" : null,
52843
+ ownVersion: true ? "2.76.44" : null,
52838
52844
  root: cliVersionsRoot(),
52839
52845
  args: process.argv.slice(3),
52840
52846
  execPath: process.execPath,
@@ -55372,7 +55378,7 @@ function checkChokidar() {
55372
55378
  }
55373
55379
  async function doctor(args2 = []) {
55374
55380
  const json = args2.includes("--json");
55375
- const cliVersion = true ? "2.76.43" : "0.0.0-dev";
55381
+ const cliVersion = true ? "2.76.44" : "0.0.0-dev";
55376
55382
  const apiBase2 = resolveApiBaseUrl();
55377
55383
  const diagnosticId = (0, import_node_crypto17.randomUUID)();
55378
55384
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -55908,7 +55914,7 @@ async function mcpWarm(argv = [], opts = {}) {
55908
55914
  // src/commands/version.ts
55909
55915
  var import_picocolors15 = __toESM(require("picocolors"));
55910
55916
  function version2() {
55911
- const v = true ? "2.76.43" : "unknown";
55917
+ const v = true ? "2.76.44" : "unknown";
55912
55918
  console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
55913
55919
  }
55914
55920
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "2.76.43",
3
+ "version": "2.76.44",
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",