codeam-cli 2.75.14 → 2.75.15

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,13 @@ 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.14] — 2026-09-24
8
+
9
+ ### Fixed
10
+
11
+ - **cli:** PTY helper forwards SIGTERM to the agent; kill is awaited before respawn/hand-off
12
+ - **cli:** A new ACP text message after a finished sentence starts a new paragraph
13
+
7
14
  ## [2.75.13] — 2026-09-24
8
15
 
9
16
  ### Added
package/dist/index.js CHANGED
@@ -10509,7 +10509,7 @@ function readAnonId() {
10509
10509
  }
10510
10510
  function superProperties() {
10511
10511
  return {
10512
- cliVersion: true ? "2.75.14" : "0.0.0-dev",
10512
+ cliVersion: true ? "2.75.15" : "0.0.0-dev",
10513
10513
  nodeVersion: process.version,
10514
10514
  platform: process.platform,
10515
10515
  arch: process.arch,
@@ -10751,7 +10751,7 @@ var http = __toESM(require("http"));
10751
10751
  // package.json
10752
10752
  var package_default = {
10753
10753
  name: "codeam-cli",
10754
- version: "2.75.14",
10754
+ version: "2.75.15",
10755
10755
  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.",
10756
10756
  type: "commonjs",
10757
10757
  main: "dist/index.js",
@@ -12081,7 +12081,7 @@ var CommandRelayService = class _CommandRelayService {
12081
12081
  // fresh + clear the "CLI update available" banner after a self-update
12082
12082
  // (a codespace that reinstalls @latest reconnects via heartbeat, not
12083
12083
  // pair/reconnect). Older backends ignore the extra field.
12084
- ..."2.75.14" ? { ideVersion: "2.75.14" } : {}
12084
+ ..."2.75.15" ? { ideVersion: "2.75.15" } : {}
12085
12085
  };
12086
12086
  try {
12087
12087
  const res = await _postJson(`${API_BASE2}/api/plugin/heartbeat`, body);
@@ -37665,7 +37665,7 @@ function replyIsHouseAgentLimit(finalText) {
37665
37665
  const t2 = finalText.trim();
37666
37666
  return t2.length > 0 && t2.length <= 400 && looksLikeHouseAgentLimit(t2);
37667
37667
  }
37668
- var BYO_PROVIDER_BILLING_RE = /(?:api error|http|status)[:\s]+402\b[^\n]{0,80}insufficient (?:credits?|balance)|\b402\b[^\n]{0,40}insufficient (?:credits?|balance)|insufficient (?:credits?|balance)[^\n]{0,40}\b402\b/i;
37668
+ var BYO_PROVIDER_BILLING_RE = /(?:api error|http|status)[:\s]+402\b[^\n]{0,80}(?:insufficient (?:credits?|balance)|requires more credits)|\b402\b[^\n]{0,40}(?:insufficient (?:credits?|balance)|requires more credits)|insufficient (?:credits?|balance)[^\n]{0,40}\b402\b/i;
37669
37669
  function looksLikeByoProviderBilling(text, env = process.env) {
37670
37670
  return !isHouseProxyEnv(env) && BYO_PROVIDER_BILLING_RE.test(text);
37671
37671
  }
@@ -44342,9 +44342,18 @@ var import_picocolors4 = __toESM(require("picocolors"));
44342
44342
 
44343
44343
  // src/lib/agent-prompt.ts
44344
44344
  function parseAgentFlag(args2) {
44345
- const flag = args2.find((a) => a.startsWith("--agent="));
44346
- if (!flag) return null;
44347
- const value = flag.slice("--agent=".length);
44345
+ let value;
44346
+ const eq = args2.find((a) => a.startsWith("--agent="));
44347
+ if (eq) {
44348
+ value = eq.slice("--agent=".length);
44349
+ } else {
44350
+ const i = args2.indexOf("--agent");
44351
+ if (i === -1) return null;
44352
+ value = args2[i + 1];
44353
+ if (!value || value.startsWith("-")) {
44354
+ throw new Error(`--agent needs a value; valid: ${Object.keys(AGENT_REGISTRY).join(", ")}`);
44355
+ }
44356
+ }
44348
44357
  if (!isKnownAgentId(value)) {
44349
44358
  throw new Error(
44350
44359
  `invalid agent "${value}"; valid: ${Object.keys(AGENT_REGISTRY).join(", ")}`
@@ -47589,7 +47598,7 @@ async function autoUpgradeBeforeCriticalCommand() {
47589
47598
  if (process.env.NODE_ENV === "test") return;
47590
47599
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
47591
47600
  if (process.env.CI) return;
47592
- const current2 = true ? "2.75.14" : null;
47601
+ const current2 = true ? "2.75.15" : null;
47593
47602
  if (!current2) return;
47594
47603
  const cache = readCache();
47595
47604
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -47606,7 +47615,7 @@ function checkForUpdates() {
47606
47615
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
47607
47616
  if (process.env.CI) return;
47608
47617
  if (!process.stdout.isTTY) return;
47609
- const current2 = true ? "2.75.14" : null;
47618
+ const current2 = true ? "2.75.15" : null;
47610
47619
  if (!current2) return;
47611
47620
  const cache = readCache();
47612
47621
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -47629,7 +47638,7 @@ var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
47629
47638
  var SELF_UPDATE_LS_TIMEOUT_MS = 15e3;
47630
47639
  var SUDO_PREFLIGHT_TIMEOUT_MS = 5e3;
47631
47640
  function currentCliVersion() {
47632
- return true ? "2.75.14" : null;
47641
+ return true ? "2.75.15" : null;
47633
47642
  }
47634
47643
  async function installedVersion(deps) {
47635
47644
  const ls = await deps.run(
@@ -49490,7 +49499,7 @@ function checkChokidar() {
49490
49499
  }
49491
49500
  async function doctor(args2 = []) {
49492
49501
  const json = args2.includes("--json");
49493
- const cliVersion = true ? "2.75.14" : "0.0.0-dev";
49502
+ const cliVersion = true ? "2.75.15" : "0.0.0-dev";
49494
49503
  const apiBase2 = resolveApiBaseUrl();
49495
49504
  const diagnosticId = (0, import_node_crypto12.randomUUID)();
49496
49505
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -50014,7 +50023,7 @@ async function mcpWarm(argv = [], opts = {}) {
50014
50023
  // src/commands/version.ts
50015
50024
  var import_picocolors15 = __toESM(require("picocolors"));
50016
50025
  function version2() {
50017
- const v = true ? "2.75.14" : "unknown";
50026
+ const v = true ? "2.75.15" : "unknown";
50018
50027
  console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
50019
50028
  }
50020
50029
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "2.75.14",
3
+ "version": "2.75.15",
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",