codeam-cli 2.67.1 → 2.67.2

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.67.1] — 2026-08-24
8
+
9
+ ### Fixed
10
+
11
+ - **cli:** A Headroom proxy that is briefly down is not an invalid credential
12
+ - **cli:** Log the credential-invalid report instead of firing it blind
13
+
7
14
  ## [2.67.0] — 2026-08-24
8
15
 
9
16
  ### Added
package/dist/index.js CHANGED
@@ -8081,7 +8081,7 @@ function readAnonId() {
8081
8081
  }
8082
8082
  function superProperties() {
8083
8083
  return {
8084
- cliVersion: true ? "2.67.1" : "0.0.0-dev",
8084
+ cliVersion: true ? "2.67.2" : "0.0.0-dev",
8085
8085
  nodeVersion: process.version,
8086
8086
  platform: process.platform,
8087
8087
  arch: process.arch,
@@ -8323,7 +8323,7 @@ var http = __toESM(require("http"));
8323
8323
  // package.json
8324
8324
  var package_default = {
8325
8325
  name: "codeam-cli",
8326
- version: "2.67.1",
8326
+ version: "2.67.2",
8327
8327
  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.",
8328
8328
  type: "commonjs",
8329
8329
  main: "dist/index.js",
@@ -9855,7 +9855,7 @@ var CommandRelayService = class _CommandRelayService {
9855
9855
  // fresh + clear the "CLI update available" banner after a self-update
9856
9856
  // (a codespace that reinstalls @latest reconnects via heartbeat, not
9857
9857
  // pair/reconnect). Older backends ignore the extra field.
9858
- ..."2.67.1" ? { ideVersion: "2.67.1" } : {}
9858
+ ..."2.67.2" ? { ideVersion: "2.67.2" } : {}
9859
9859
  }).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
9860
9860
  }
9861
9861
  /**
@@ -14938,6 +14938,8 @@ function validateClaudeToken(token) {
14938
14938
  }
14939
14939
  const expiresAt = typeof oauth.expiresAt === "number" ? oauth.expiresAt : null;
14940
14940
  if (expiresAt === null) return { status: "unknown" };
14941
+ const hasAnyToken = typeof oauth.accessToken === "string" && oauth.accessToken.length > 0 || typeof oauth.refreshToken === "string" && oauth.refreshToken.length > 0;
14942
+ if (!hasAnyToken) return { status: "unknown" };
14941
14943
  if (expiresAt >= Date.now()) return { status: "valid" };
14942
14944
  const hasRefresh = typeof oauth.refreshToken === "string" && oauth.refreshToken.length > 0;
14943
14945
  if (hasRefresh) return { status: "unknown" };
@@ -22080,7 +22082,7 @@ async function autoUpgradeBeforeCriticalCommand() {
22080
22082
  if (process.env.NODE_ENV === "test") return;
22081
22083
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
22082
22084
  if (process.env.CI) return;
22083
- const current2 = true ? "2.67.1" : null;
22085
+ const current2 = true ? "2.67.2" : null;
22084
22086
  if (!current2) return;
22085
22087
  const cache = readCache();
22086
22088
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -22097,7 +22099,7 @@ function checkForUpdates() {
22097
22099
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
22098
22100
  if (process.env.CI) return;
22099
22101
  if (!process.stdout.isTTY) return;
22100
- const current2 = true ? "2.67.1" : null;
22102
+ const current2 = true ? "2.67.2" : null;
22101
22103
  if (!current2) return;
22102
22104
  const cache = readCache();
22103
22105
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -22120,7 +22122,7 @@ var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
22120
22122
  var SELF_UPDATE_LS_TIMEOUT_MS = 15e3;
22121
22123
  var SUDO_PREFLIGHT_TIMEOUT_MS = 5e3;
22122
22124
  function currentCliVersion() {
22123
- return true ? "2.67.1" : null;
22125
+ return true ? "2.67.2" : null;
22124
22126
  }
22125
22127
  async function installedVersion(deps) {
22126
22128
  const ls = await deps.run(
@@ -36074,7 +36076,11 @@ You have two options:
36074
36076
  }
36075
36077
 
36076
36078
  // src/agents/acp/wakeCredentialProbe.ts
36079
+ function usesHouseProxy(env = process.env) {
36080
+ return /\/agent-proxy(\/|$)/.test(env.ANTHROPIC_BASE_URL ?? "");
36081
+ }
36077
36082
  async function localCredentialExpiryStatus(agent) {
36083
+ if (usesHouseProxy()) return "unknown";
36078
36084
  if (!/claude/i.test(agent)) return "unknown";
36079
36085
  const token = await extractLocalClaudeToken();
36080
36086
  if (!token) return "unknown";
@@ -45752,7 +45758,7 @@ function checkChokidar() {
45752
45758
  }
45753
45759
  async function doctor(args2 = []) {
45754
45760
  const json = args2.includes("--json");
45755
- const cliVersion = true ? "2.67.1" : "0.0.0-dev";
45761
+ const cliVersion = true ? "2.67.2" : "0.0.0-dev";
45756
45762
  const apiBase2 = resolveApiBaseUrl();
45757
45763
  const diagnosticId = (0, import_node_crypto13.randomUUID)();
45758
45764
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -46143,7 +46149,7 @@ async function mcpRun(args2) {
46143
46149
  // src/commands/version.ts
46144
46150
  var import_picocolors15 = __toESM(require("picocolors"));
46145
46151
  function version2() {
46146
- const v = true ? "2.67.1" : "unknown";
46152
+ const v = true ? "2.67.2" : "unknown";
46147
46153
  console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
46148
46154
  }
46149
46155
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "2.67.1",
3
+ "version": "2.67.2",
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",