codeam-cli 2.39.48 → 2.39.49
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 +36 -5
- 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.39.48] — 2026-06-19
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- **cli:** Per-session daemon singleton — stop duplicate codeam daemons
|
|
12
|
+
|
|
7
13
|
## [2.39.47] — 2026-06-19
|
|
8
14
|
|
|
9
15
|
### Fixed
|
package/dist/index.js
CHANGED
|
@@ -488,6 +488,27 @@ function makeConfig(baseDir) {
|
|
|
488
488
|
}
|
|
489
489
|
return { getConfig: getConfig2, ensurePluginId: ensurePluginId2, addSession: addSession2, removeSession: removeSession2, setActiveSession: setActiveSession2, getActiveSession: getActiveSession2, getActiveSessionForAgent: getActiveSessionForAgent2, clearAll: clearAll2, saveCliConfig: saveCliConfig2, loadCliConfig: loadCliConfig2 };
|
|
490
490
|
}
|
|
491
|
+
var CODESPACE_ENV_KEYS = [
|
|
492
|
+
"PREVIEW_TUNNEL_TOKEN",
|
|
493
|
+
"PREVIEW_TUNNEL_HOSTNAME",
|
|
494
|
+
"HEADROOM_ENABLED",
|
|
495
|
+
"HEADROOM_AGENT",
|
|
496
|
+
"HEADROOM_SAVINGS_INGEST_URL"
|
|
497
|
+
];
|
|
498
|
+
function loadCodespaceEnv() {
|
|
499
|
+
try {
|
|
500
|
+
const file = path.join(os.homedir(), ".codeam", "codespace-env.json");
|
|
501
|
+
if (!fs.existsSync(file)) return;
|
|
502
|
+
const raw = JSON.parse(fs.readFileSync(file, "utf-8"));
|
|
503
|
+
for (const key of CODESPACE_ENV_KEYS) {
|
|
504
|
+
const value = raw[key];
|
|
505
|
+
if (typeof value === "string" && value.length > 0 && process.env[key] === void 0) {
|
|
506
|
+
process.env[key] = value;
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
} catch {
|
|
510
|
+
}
|
|
511
|
+
}
|
|
491
512
|
var _default = makeConfig();
|
|
492
513
|
var { getConfig, ensurePluginId, addSession, removeSession, setActiveSession, getActiveSession, getActiveSessionForAgent, clearAll, saveCliConfig, loadCliConfig } = _default;
|
|
493
514
|
|
|
@@ -5367,7 +5388,7 @@ function readAnonId() {
|
|
|
5367
5388
|
}
|
|
5368
5389
|
function superProperties() {
|
|
5369
5390
|
return {
|
|
5370
|
-
cliVersion: true ? "2.39.
|
|
5391
|
+
cliVersion: true ? "2.39.49" : "0.0.0-dev",
|
|
5371
5392
|
nodeVersion: process.version,
|
|
5372
5393
|
platform: process.platform,
|
|
5373
5394
|
arch: process.arch,
|
|
@@ -5526,7 +5547,7 @@ var os4 = __toESM(require("os"));
|
|
|
5526
5547
|
// package.json
|
|
5527
5548
|
var package_default = {
|
|
5528
5549
|
name: "codeam-cli",
|
|
5529
|
-
version: "2.39.
|
|
5550
|
+
version: "2.39.49",
|
|
5530
5551
|
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.",
|
|
5531
5552
|
type: "commonjs",
|
|
5532
5553
|
main: "dist/index.js",
|
|
@@ -24822,6 +24843,15 @@ async function start(requestedAgent) {
|
|
|
24822
24843
|
"pluginAuth",
|
|
24823
24844
|
`boot triple sessionId=${session.id} pluginId=${pluginId} tokenLen=${tokenForLog.length} tokenHead=${tokenForLog.slice(0, 12)} tokenTail=${tokenForLog.slice(-8)} mintedEqualsCached=${refreshed === session.pluginAuthToken}`
|
|
24824
24845
|
);
|
|
24846
|
+
const headroomReporter = session.pluginAuthToken ? maybeStartHeadroomReporter({
|
|
24847
|
+
sessionId: session.id,
|
|
24848
|
+
pluginId,
|
|
24849
|
+
pluginAuthToken: session.pluginAuthToken,
|
|
24850
|
+
codespaceId: process.env["CODESPACE_NAME"] ?? session.id
|
|
24851
|
+
}) : null;
|
|
24852
|
+
process.once("exit", () => {
|
|
24853
|
+
headroomReporter?.stop();
|
|
24854
|
+
});
|
|
24825
24855
|
if (process.env.CODESPACES === "true") ensureClaudeOnboarded();
|
|
24826
24856
|
let beads = null;
|
|
24827
24857
|
const getBeads = () => beads;
|
|
@@ -27534,7 +27564,7 @@ function checkChokidar() {
|
|
|
27534
27564
|
}
|
|
27535
27565
|
async function doctor(args2 = []) {
|
|
27536
27566
|
const json = args2.includes("--json");
|
|
27537
|
-
const cliVersion = true ? "2.39.
|
|
27567
|
+
const cliVersion = true ? "2.39.49" : "0.0.0-dev";
|
|
27538
27568
|
const apiBase2 = resolveApiBaseUrl();
|
|
27539
27569
|
const diagnosticId = (0, import_node_crypto8.randomUUID)();
|
|
27540
27570
|
log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
|
|
@@ -27733,7 +27763,7 @@ async function completion(args2) {
|
|
|
27733
27763
|
// src/commands/version.ts
|
|
27734
27764
|
var import_picocolors13 = __toESM(require("picocolors"));
|
|
27735
27765
|
function version2() {
|
|
27736
|
-
const v = true ? "2.39.
|
|
27766
|
+
const v = true ? "2.39.49" : "unknown";
|
|
27737
27767
|
console.log(`${import_picocolors13.default.bold("codeam-cli")} ${import_picocolors13.default.cyan(v)}`);
|
|
27738
27768
|
}
|
|
27739
27769
|
|
|
@@ -28019,7 +28049,7 @@ function checkForUpdates() {
|
|
|
28019
28049
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
28020
28050
|
if (process.env.CI) return;
|
|
28021
28051
|
if (!process.stdout.isTTY) return;
|
|
28022
|
-
const current = true ? "2.39.
|
|
28052
|
+
const current = true ? "2.39.49" : null;
|
|
28023
28053
|
if (!current) return;
|
|
28024
28054
|
const cache = readCache();
|
|
28025
28055
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
|
@@ -28058,6 +28088,7 @@ if (!process.env.HOME) {
|
|
|
28058
28088
|
} catch {
|
|
28059
28089
|
}
|
|
28060
28090
|
}
|
|
28091
|
+
loadCodespaceEnv();
|
|
28061
28092
|
var [, , command, ...args] = process.argv;
|
|
28062
28093
|
async function main() {
|
|
28063
28094
|
const isMetaCommand = command === "--version" || command === "-v" || command === "version" || command === "--help" || command === "-h" || command === "help";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.39.
|
|
3
|
+
"version": "2.39.49",
|
|
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",
|