codeam-cli 2.75.29 → 2.75.30
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 +15 -12
- 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.75.29] — 2026-09-25
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- **cli:** Preview reaches the real dev server (readiness, Host), no CodeAgent Cloud copy (#821)
|
|
12
|
+
|
|
7
13
|
## [2.75.28] — 2026-09-25
|
|
8
14
|
|
|
9
15
|
### Fixed
|
package/dist/index.js
CHANGED
|
@@ -10516,7 +10516,7 @@ function readAnonId() {
|
|
|
10516
10516
|
}
|
|
10517
10517
|
function superProperties() {
|
|
10518
10518
|
return {
|
|
10519
|
-
cliVersion: true ? "2.75.
|
|
10519
|
+
cliVersion: true ? "2.75.30" : "0.0.0-dev",
|
|
10520
10520
|
nodeVersion: process.version,
|
|
10521
10521
|
platform: process.platform,
|
|
10522
10522
|
arch: process.arch,
|
|
@@ -10758,7 +10758,7 @@ var http = __toESM(require("http"));
|
|
|
10758
10758
|
// package.json
|
|
10759
10759
|
var package_default = {
|
|
10760
10760
|
name: "codeam-cli",
|
|
10761
|
-
version: "2.75.
|
|
10761
|
+
version: "2.75.30",
|
|
10762
10762
|
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.",
|
|
10763
10763
|
type: "commonjs",
|
|
10764
10764
|
main: "dist/index.js",
|
|
@@ -12088,7 +12088,7 @@ var CommandRelayService = class _CommandRelayService {
|
|
|
12088
12088
|
// fresh + clear the "CLI update available" banner after a self-update
|
|
12089
12089
|
// (a codespace that reinstalls @latest reconnects via heartbeat, not
|
|
12090
12090
|
// pair/reconnect). Older backends ignore the extra field.
|
|
12091
|
-
..."2.75.
|
|
12091
|
+
..."2.75.30" ? { ideVersion: "2.75.30" } : {}
|
|
12092
12092
|
};
|
|
12093
12093
|
try {
|
|
12094
12094
|
const res = await _postJson(`${API_BASE2}/api/plugin/heartbeat`, body);
|
|
@@ -24895,10 +24895,13 @@ async function bringUpInspector(targetPort, deps = {}) {
|
|
|
24895
24895
|
|
|
24896
24896
|
// src/services/preview/served-address.ts
|
|
24897
24897
|
var LOOPBACK_HOSTS = ["127.0.0.1", "::1"];
|
|
24898
|
-
var ANSI_RE2 = /\x1b\[[0-9
|
|
24898
|
+
var ANSI_RE2 = /\x1b\[[0-9;?]*[A-Za-z]/g;
|
|
24899
|
+
function stripAnsi(text) {
|
|
24900
|
+
return text.replace(ANSI_RE2, "");
|
|
24901
|
+
}
|
|
24899
24902
|
var LOCAL_URL_RE = /https?:\/\/(?:localhost|127\.0\.0\.1|0\.0\.0\.0|\[::1?\]|\[::\]):(\d{2,5})\b/gi;
|
|
24900
24903
|
function announcedPorts(output) {
|
|
24901
|
-
const clean = output
|
|
24904
|
+
const clean = stripAnsi(output);
|
|
24902
24905
|
const ports = [];
|
|
24903
24906
|
for (const m of clean.matchAll(LOCAL_URL_RE)) {
|
|
24904
24907
|
const port = Number(m[1]);
|
|
@@ -25287,7 +25290,7 @@ async function startDevServer(ctx, extraEnv = {}) {
|
|
|
25287
25290
|
emit2(USER_EVENTS.PREVIEW_ERROR, {
|
|
25288
25291
|
stage: "spawn",
|
|
25289
25292
|
message: `The dev server exited (code ${outcome.code}) before it was ready. It may need a database or other services.`,
|
|
25290
|
-
stderrTail: outputTail.slice(-8e3)
|
|
25293
|
+
stderrTail: stripAnsi(outputTail).slice(-8e3)
|
|
25291
25294
|
});
|
|
25292
25295
|
return null;
|
|
25293
25296
|
}
|
|
@@ -25296,7 +25299,7 @@ async function startDevServer(ctx, extraEnv = {}) {
|
|
|
25296
25299
|
emit2(USER_EVENTS.PREVIEW_ERROR, {
|
|
25297
25300
|
stage: "ready_timeout",
|
|
25298
25301
|
message: "The dev server didn't become ready in time. It may be stuck waiting on a database or other service.",
|
|
25299
|
-
stderrTail: outputTail.slice(-8e3)
|
|
25302
|
+
stderrTail: stripAnsi(outputTail).slice(-8e3)
|
|
25300
25303
|
});
|
|
25301
25304
|
return null;
|
|
25302
25305
|
}
|
|
@@ -48637,7 +48640,7 @@ async function autoUpgradeBeforeCriticalCommand() {
|
|
|
48637
48640
|
if (process.env.NODE_ENV === "test") return;
|
|
48638
48641
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
48639
48642
|
if (process.env.CI) return;
|
|
48640
|
-
const current2 = true ? "2.75.
|
|
48643
|
+
const current2 = true ? "2.75.30" : null;
|
|
48641
48644
|
if (!current2) return;
|
|
48642
48645
|
const cache = readCache();
|
|
48643
48646
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
|
@@ -48654,7 +48657,7 @@ function checkForUpdates() {
|
|
|
48654
48657
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
48655
48658
|
if (process.env.CI) return;
|
|
48656
48659
|
if (!process.stdout.isTTY) return;
|
|
48657
|
-
const current2 = true ? "2.75.
|
|
48660
|
+
const current2 = true ? "2.75.30" : null;
|
|
48658
48661
|
if (!current2) return;
|
|
48659
48662
|
const cache = readCache();
|
|
48660
48663
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
|
@@ -48677,7 +48680,7 @@ var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
|
|
|
48677
48680
|
var SELF_UPDATE_LS_TIMEOUT_MS = 15e3;
|
|
48678
48681
|
var SUDO_PREFLIGHT_TIMEOUT_MS = 5e3;
|
|
48679
48682
|
function currentCliVersion() {
|
|
48680
|
-
return true ? "2.75.
|
|
48683
|
+
return true ? "2.75.30" : null;
|
|
48681
48684
|
}
|
|
48682
48685
|
async function installedVersion(deps) {
|
|
48683
48686
|
const ls = await deps.run(
|
|
@@ -50642,7 +50645,7 @@ function checkChokidar() {
|
|
|
50642
50645
|
}
|
|
50643
50646
|
async function doctor(args2 = []) {
|
|
50644
50647
|
const json = args2.includes("--json");
|
|
50645
|
-
const cliVersion = true ? "2.75.
|
|
50648
|
+
const cliVersion = true ? "2.75.30" : "0.0.0-dev";
|
|
50646
50649
|
const apiBase2 = resolveApiBaseUrl();
|
|
50647
50650
|
const diagnosticId = (0, import_node_crypto13.randomUUID)();
|
|
50648
50651
|
log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
|
|
@@ -51166,7 +51169,7 @@ async function mcpWarm(argv = [], opts = {}) {
|
|
|
51166
51169
|
// src/commands/version.ts
|
|
51167
51170
|
var import_picocolors15 = __toESM(require("picocolors"));
|
|
51168
51171
|
function version2() {
|
|
51169
|
-
const v = true ? "2.75.
|
|
51172
|
+
const v = true ? "2.75.30" : "unknown";
|
|
51170
51173
|
console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
|
|
51171
51174
|
}
|
|
51172
51175
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.75.
|
|
3
|
+
"version": "2.75.30",
|
|
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",
|