codeam-cli 2.36.4 → 2.36.5
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 +6 -0
- package/dist/index.js +16 -17
- package/package.json +1 -1
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.36.4] — 2026-06-11
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- **cli:** Retry bd setup on transient spawn ENOENT (postinstall race)
|
|
12
|
+
|
|
7
13
|
## [2.36.3] — 2026-06-11
|
|
8
14
|
|
|
9
15
|
### Fixed
|
package/dist/index.js
CHANGED
|
@@ -498,7 +498,7 @@ var import_qrcode_terminal = __toESM(require("qrcode-terminal"));
|
|
|
498
498
|
// package.json
|
|
499
499
|
var package_default = {
|
|
500
500
|
name: "codeam-cli",
|
|
501
|
-
version: "2.36.
|
|
501
|
+
version: "2.36.5",
|
|
502
502
|
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.",
|
|
503
503
|
type: "commonjs",
|
|
504
504
|
main: "dist/index.js",
|
|
@@ -5900,7 +5900,7 @@ function readAnonId() {
|
|
|
5900
5900
|
}
|
|
5901
5901
|
function superProperties() {
|
|
5902
5902
|
return {
|
|
5903
|
-
cliVersion: true ? "2.36.
|
|
5903
|
+
cliVersion: true ? "2.36.5" : "0.0.0-dev",
|
|
5904
5904
|
nodeVersion: process.version,
|
|
5905
5905
|
platform: process.platform,
|
|
5906
5906
|
arch: process.arch,
|
|
@@ -17463,6 +17463,9 @@ function _defaultSpawn(binaryPath, args2, opts) {
|
|
|
17463
17463
|
proc.on("close", (code) => resolve7({ code: code ?? -1, stdout, stderr }));
|
|
17464
17464
|
});
|
|
17465
17465
|
}
|
|
17466
|
+
var _adapterSeam = {
|
|
17467
|
+
sleep: (ms) => new Promise((r) => setTimeout(r, ms))
|
|
17468
|
+
};
|
|
17466
17469
|
var BdAdapter = class {
|
|
17467
17470
|
constructor(opts = {}) {
|
|
17468
17471
|
this.opts = opts;
|
|
@@ -17513,7 +17516,13 @@ var BdAdapter = class {
|
|
|
17513
17516
|
"beads",
|
|
17514
17517
|
`bd ${args2.join(" ")} (cwd=${this.opts.cwd ?? process.cwd()}, shared-server)`
|
|
17515
17518
|
);
|
|
17516
|
-
|
|
17519
|
+
let res = await _spawnSeam.run(binary, args2, { cwd: this.opts.cwd, env });
|
|
17520
|
+
for (let attempt = 1; attempt <= 3 && res.code === -1 && res.stderr.includes("ENOENT"); attempt++) {
|
|
17521
|
+
log.info("beads", `bd ${args2[0]} spawn ENOENT (transient binary) \u2014 retry ${attempt}/3`);
|
|
17522
|
+
await _adapterSeam.sleep(750 * attempt);
|
|
17523
|
+
res = await _spawnSeam.run(binary, args2, { cwd: this.opts.cwd, env });
|
|
17524
|
+
}
|
|
17525
|
+
return res;
|
|
17517
17526
|
}
|
|
17518
17527
|
/**
|
|
17519
17528
|
* `bd ready --json` → typed issue array. `bd list --json` shares the shape,
|
|
@@ -17993,8 +18002,6 @@ var _provisionSeam = {
|
|
|
17993
18002
|
installDolt,
|
|
17994
18003
|
/** No-sudo fallback: extract the dolt tarball/zip into a user-writable dir. */
|
|
17995
18004
|
installDoltToDir,
|
|
17996
|
-
/** Async sleep — behind the seam so the spawn-retry backoff is instant in tests. */
|
|
17997
|
-
sleep: (ms) => new Promise((r) => setTimeout(r, ms)),
|
|
17998
18005
|
// Probe dolt on PATH AND auto-prepend a known install dir if found off-PATH
|
|
17999
18006
|
// (codespace: official install.sh drops dolt in /usr/local/bin, which the
|
|
18000
18007
|
// bundled-node CLI's PATH can omit — mirrors the bd-on-PATH symlink fix).
|
|
@@ -18194,15 +18201,7 @@ async function setupAgents(bd, agents) {
|
|
|
18194
18201
|
continue;
|
|
18195
18202
|
}
|
|
18196
18203
|
log.info("beads", `wiring agent natively: bd setup ${recipe} --global`);
|
|
18197
|
-
|
|
18198
|
-
for (let attempt = 1; setup.code === -1 && attempt <= 2; attempt++) {
|
|
18199
|
-
log.info(
|
|
18200
|
-
"beads",
|
|
18201
|
-
`bd setup ${recipe} --global spawn failed (transient: ${setup.stderr.slice(0, 80)}) \u2014 retry ${attempt}/2`
|
|
18202
|
-
);
|
|
18203
|
-
await _provisionSeam.sleep(1500);
|
|
18204
|
-
setup = await bd.run(["setup", recipe, "--global"]);
|
|
18205
|
-
}
|
|
18204
|
+
const setup = await bd.run(["setup", recipe, "--global"]);
|
|
18206
18205
|
if (setup.code === 0) {
|
|
18207
18206
|
wired.push(recipe);
|
|
18208
18207
|
} else {
|
|
@@ -26501,7 +26500,7 @@ function checkChokidar() {
|
|
|
26501
26500
|
}
|
|
26502
26501
|
async function doctor(args2 = []) {
|
|
26503
26502
|
const json = args2.includes("--json");
|
|
26504
|
-
const cliVersion = true ? "2.36.
|
|
26503
|
+
const cliVersion = true ? "2.36.5" : "0.0.0-dev";
|
|
26505
26504
|
const apiBase = resolveApiBaseUrl();
|
|
26506
26505
|
const diagnosticId = (0, import_node_crypto8.randomUUID)();
|
|
26507
26506
|
log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
|
|
@@ -26700,7 +26699,7 @@ async function completion(args2) {
|
|
|
26700
26699
|
// src/commands/version.ts
|
|
26701
26700
|
var import_picocolors13 = __toESM(require("picocolors"));
|
|
26702
26701
|
function version2() {
|
|
26703
|
-
const v = true ? "2.36.
|
|
26702
|
+
const v = true ? "2.36.5" : "unknown";
|
|
26704
26703
|
console.log(`${import_picocolors13.default.bold("codeam-cli")} ${import_picocolors13.default.cyan(v)}`);
|
|
26705
26704
|
}
|
|
26706
26705
|
|
|
@@ -26986,7 +26985,7 @@ function checkForUpdates() {
|
|
|
26986
26985
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
26987
26986
|
if (process.env.CI) return;
|
|
26988
26987
|
if (!process.stdout.isTTY) return;
|
|
26989
|
-
const current = true ? "2.36.
|
|
26988
|
+
const current = true ? "2.36.5" : null;
|
|
26990
26989
|
if (!current) return;
|
|
26991
26990
|
const cache = readCache();
|
|
26992
26991
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.36.
|
|
3
|
+
"version": "2.36.5",
|
|
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",
|