codeam-cli 2.23.11 → 2.23.13

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.23.11] — 2026-05-27
8
+
9
+ ### Fixed
10
+
11
+ - **cli:** DetectStartupBanner matches Claude v2.1.x box-drawn welcome
12
+
7
13
  ## [2.23.10] — 2026-05-27
8
14
 
9
15
  ### Added
package/dist/index.js CHANGED
@@ -441,7 +441,7 @@ var import_qrcode_terminal = __toESM(require("qrcode-terminal"));
441
441
  // package.json
442
442
  var package_default = {
443
443
  name: "codeam-cli",
444
- version: "2.23.11",
444
+ version: "2.23.13",
445
445
  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.",
446
446
  type: "commonjs",
447
447
  main: "dist/index.js",
@@ -5774,7 +5774,7 @@ function readAnonId() {
5774
5774
  }
5775
5775
  function superProperties() {
5776
5776
  return {
5777
- cliVersion: true ? "2.23.11" : "0.0.0-dev",
5777
+ cliVersion: true ? "2.23.13" : "0.0.0-dev",
5778
5778
  nodeVersion: process.version,
5779
5779
  platform: process.platform,
5780
5780
  arch: process.arch,
@@ -5869,14 +5869,16 @@ var API_BASE2 = resolveApiBaseUrl();
5869
5869
  var SSE_LIVENESS_TIMEOUT_MS = 45e3;
5870
5870
  var SSE_WATCHDOG_INTERVAL_MS = 1e4;
5871
5871
  var CommandRelayService = class {
5872
- constructor(pluginId, onCommand, agentMeta) {
5872
+ constructor(pluginId, onCommand, agentMeta, agentsOverride) {
5873
5873
  this.pluginId = pluginId;
5874
5874
  this.onCommand = onCommand;
5875
5875
  this.agentMeta = agentMeta;
5876
+ this.agentsOverride = agentsOverride;
5876
5877
  }
5877
5878
  pluginId;
5878
5879
  onCommand;
5879
5880
  agentMeta;
5881
+ agentsOverride;
5880
5882
  _running = false;
5881
5883
  heartbeatTimer = null;
5882
5884
  agentsTimer = null;
@@ -6142,16 +6144,17 @@ var CommandRelayService = class {
6142
6144
  }).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
6143
6145
  }
6144
6146
  reportAgents() {
6147
+ const agents = this.agentsOverride ? [...this.agentsOverride] : [
6148
+ {
6149
+ id: this.agentMeta.id,
6150
+ name: this.agentMeta.displayName,
6151
+ icon: this.agentMeta.id,
6152
+ installed: true
6153
+ }
6154
+ ];
6145
6155
  _postJson(`${API_BASE2}/api/plugin/agents`, {
6146
6156
  pluginId: this.pluginId,
6147
- agents: [
6148
- {
6149
- id: this.agentMeta.id,
6150
- name: this.agentMeta.displayName,
6151
- icon: this.agentMeta.id,
6152
- installed: true
6153
- }
6154
- ]
6157
+ agents
6155
6158
  }).then(() => {
6156
6159
  this.agentsRegistered = true;
6157
6160
  }).catch(() => {
@@ -15858,6 +15861,9 @@ async function start(requestedAgent) {
15858
15861
  codespaceName: process.env.CODESPACE_NAME
15859
15862
  };
15860
15863
  const { apply: setKeepAlive2 } = buildKeepAlive(keepAliveCtx);
15864
+ if (keepAliveCtx.inCodespace) {
15865
+ setKeepAlive2(true);
15866
+ }
15861
15867
  const outputSvc = new OutputService(
15862
15868
  session.id,
15863
15869
  pluginId,
@@ -16314,6 +16320,24 @@ async function pairAuto(args2) {
16314
16320
  console.log(
16315
16321
  " Skipping agent launch \u2014 install an agent from the dashboard to start chatting."
16316
16322
  );
16323
+ const heartbeatRelay = new CommandRelayService(
16324
+ pluginId,
16325
+ async () => {
16326
+ },
16327
+ AGENT_REGISTRY[claimed.agent],
16328
+ []
16329
+ // empty agents list
16330
+ );
16331
+ heartbeatRelay.start();
16332
+ const sigHandler = () => {
16333
+ heartbeatRelay.stop();
16334
+ process.exit(0);
16335
+ };
16336
+ process.once("SIGINT", sigHandler);
16337
+ process.once("SIGTERM", sigHandler);
16338
+ process.once("SIGHUP", sigHandler);
16339
+ await new Promise(() => {
16340
+ });
16317
16341
  return;
16318
16342
  }
16319
16343
  console.log(" Starting agent loop\u2026");
@@ -18562,7 +18586,7 @@ function checkChokidar() {
18562
18586
  }
18563
18587
  async function doctor(args2 = []) {
18564
18588
  const json = args2.includes("--json");
18565
- const cliVersion = true ? "2.23.11" : "0.0.0-dev";
18589
+ const cliVersion = true ? "2.23.13" : "0.0.0-dev";
18566
18590
  const apiBase = resolveApiBaseUrl();
18567
18591
  const diagnosticId = (0, import_node_crypto5.randomUUID)();
18568
18592
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -18761,7 +18785,7 @@ async function completion(args2) {
18761
18785
  // src/commands/version.ts
18762
18786
  var import_picocolors13 = __toESM(require("picocolors"));
18763
18787
  function version2() {
18764
- const v = true ? "2.23.11" : "unknown";
18788
+ const v = true ? "2.23.13" : "unknown";
18765
18789
  console.log(`${import_picocolors13.default.bold("codeam-cli")} ${import_picocolors13.default.cyan(v)}`);
18766
18790
  }
18767
18791
 
@@ -18989,7 +19013,7 @@ function checkForUpdates() {
18989
19013
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
18990
19014
  if (process.env.CI) return;
18991
19015
  if (!process.stdout.isTTY) return;
18992
- const current = true ? "2.23.11" : null;
19016
+ const current = true ? "2.23.13" : null;
18993
19017
  if (!current) return;
18994
19018
  const cache = readCache();
18995
19019
  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.23.11",
3
+ "version": "2.23.13",
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",