codeam-cli 2.73.6 → 2.73.8
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 +12 -0
- package/dist/index.js +49 -14
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,18 @@ 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.73.7] — 2026-09-03
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- **cli:** LoadSession closes the fresh session it abandons — one agent, not two (#692)
|
|
12
|
+
|
|
13
|
+
## [2.73.6] — 2026-09-03
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- **cli:** AcpClient.stop() reaps the whole adapter tree, not just the adapter (#690)
|
|
18
|
+
|
|
7
19
|
## [2.73.5] — 2026-09-03
|
|
8
20
|
|
|
9
21
|
### Fixed
|
package/dist/index.js
CHANGED
|
@@ -1788,14 +1788,34 @@ var INTEGRATION_REGISTRY = {
|
|
|
1788
1788
|
},
|
|
1789
1789
|
delivery: {
|
|
1790
1790
|
mcp: {
|
|
1791
|
-
//
|
|
1792
|
-
//
|
|
1793
|
-
//
|
|
1794
|
-
//
|
|
1791
|
+
// clickup-mcp-pro (Node, MIT): 162 tools over `tools/list` — spaces,
|
|
1792
|
+
// folders, lists, tasks (37 task tools incl. create/update/bulk),
|
|
1793
|
+
// comments, time tracking, docs, custom fields, goals, webhooks. Reads
|
|
1794
|
+
// CLICKUP_API_TOKEN (ClickUp accepts the OAuth access token there) +
|
|
1795
|
+
// CLICKUP_TEAM_ID (the workspace id, captured at exchange), env only.
|
|
1796
|
+
//
|
|
1797
|
+
// ⚠️ WHY NOT @taazkareem/clickup-mcp-server ANY MORE. It was our pin at
|
|
1798
|
+
// 0.14.4 and the maintainer had gone paid: 0.9.0–0.12.x `UNLICENSED`,
|
|
1799
|
+
// 0.13.0+ `Proprietary` with an OBFUSCATED `build/license.js` that
|
|
1800
|
+
// validates a Polar key and puts the tools behind
|
|
1801
|
+
// `CLICKUP_MCP_LICENSE_KEY`. The server connected and found the user's
|
|
1802
|
+
// workspace, then every tool was "LIMITED" (rafaelph90.br@gmail.com,
|
|
1803
|
+
// 2026-09-03) — indistinguishable, to the agent and the user, from the
|
|
1804
|
+
// connection failures fixed the same day. Its last MIT release, 0.8.5,
|
|
1805
|
+
// exposes 36 tools; this one exposes 162 under a licence that cannot be
|
|
1806
|
+
// pulled the same way. `mcp-package-licences.test.ts` now audits every
|
|
1807
|
+
// npx pin's licence so a paywall fails in CI, not on a box.
|
|
1808
|
+
//
|
|
1809
|
+
// Verified 2026-09-03 over MCP with a dummy key (`tools/list` → 162, no
|
|
1810
|
+
// licence gate, no paywall on stderr) and supply-chain audited from the
|
|
1811
|
+
// tarball: the only network hosts are api.clickup.com /
|
|
1812
|
+
// developer.clickup.com, no child_process/eval, deps = MCP SDK, axios,
|
|
1813
|
+
// zod, dotenv, form-data. Young package (2 releases, one author) — the
|
|
1814
|
+
// pin is EXACT and the licence audit watches every bump.
|
|
1795
1815
|
command: "npx",
|
|
1796
|
-
args: ["-y", "
|
|
1816
|
+
args: ["-y", "clickup-mcp-pro@1.0.1"],
|
|
1797
1817
|
envMapping: {
|
|
1798
|
-
|
|
1818
|
+
CLICKUP_API_TOKEN: "accessToken",
|
|
1799
1819
|
CLICKUP_TEAM_ID: "teamId"
|
|
1800
1820
|
}
|
|
1801
1821
|
}
|
|
@@ -8116,7 +8136,7 @@ function readAnonId() {
|
|
|
8116
8136
|
}
|
|
8117
8137
|
function superProperties() {
|
|
8118
8138
|
return {
|
|
8119
|
-
cliVersion: true ? "2.73.
|
|
8139
|
+
cliVersion: true ? "2.73.8" : "0.0.0-dev",
|
|
8120
8140
|
nodeVersion: process.version,
|
|
8121
8141
|
platform: process.platform,
|
|
8122
8142
|
arch: process.arch,
|
|
@@ -8358,7 +8378,7 @@ var http = __toESM(require("http"));
|
|
|
8358
8378
|
// package.json
|
|
8359
8379
|
var package_default = {
|
|
8360
8380
|
name: "codeam-cli",
|
|
8361
|
-
version: "2.73.
|
|
8381
|
+
version: "2.73.8",
|
|
8362
8382
|
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.",
|
|
8363
8383
|
type: "commonjs",
|
|
8364
8384
|
main: "dist/index.js",
|
|
@@ -9951,7 +9971,7 @@ var CommandRelayService = class _CommandRelayService {
|
|
|
9951
9971
|
// fresh + clear the "CLI update available" banner after a self-update
|
|
9952
9972
|
// (a codespace that reinstalls @latest reconnects via heartbeat, not
|
|
9953
9973
|
// pair/reconnect). Older backends ignore the extra field.
|
|
9954
|
-
..."2.73.
|
|
9974
|
+
..."2.73.8" ? { ideVersion: "2.73.8" } : {}
|
|
9955
9975
|
}).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
|
|
9956
9976
|
}
|
|
9957
9977
|
/**
|
|
@@ -22227,7 +22247,7 @@ async function autoUpgradeBeforeCriticalCommand() {
|
|
|
22227
22247
|
if (process.env.NODE_ENV === "test") return;
|
|
22228
22248
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
22229
22249
|
if (process.env.CI) return;
|
|
22230
|
-
const current2 = true ? "2.73.
|
|
22250
|
+
const current2 = true ? "2.73.8" : null;
|
|
22231
22251
|
if (!current2) return;
|
|
22232
22252
|
const cache = readCache();
|
|
22233
22253
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
|
@@ -22244,7 +22264,7 @@ function checkForUpdates() {
|
|
|
22244
22264
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
22245
22265
|
if (process.env.CI) return;
|
|
22246
22266
|
if (!process.stdout.isTTY) return;
|
|
22247
|
-
const current2 = true ? "2.73.
|
|
22267
|
+
const current2 = true ? "2.73.8" : null;
|
|
22248
22268
|
if (!current2) return;
|
|
22249
22269
|
const cache = readCache();
|
|
22250
22270
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
|
@@ -22267,7 +22287,7 @@ var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
|
|
|
22267
22287
|
var SELF_UPDATE_LS_TIMEOUT_MS = 15e3;
|
|
22268
22288
|
var SUDO_PREFLIGHT_TIMEOUT_MS = 5e3;
|
|
22269
22289
|
function currentCliVersion() {
|
|
22270
|
-
return true ? "2.73.
|
|
22290
|
+
return true ? "2.73.8" : null;
|
|
22271
22291
|
}
|
|
22272
22292
|
async function installedVersion(deps) {
|
|
22273
22293
|
const ls = await deps.run(
|
|
@@ -36284,7 +36304,22 @@ var AcpClient = class {
|
|
|
36284
36304
|
if (loadTimer) clearTimeout(loadTimer);
|
|
36285
36305
|
this.opts.endLoadReplay?.();
|
|
36286
36306
|
}
|
|
36307
|
+
const abandoned = this.sessionId;
|
|
36287
36308
|
this.sessionId = sessionId;
|
|
36309
|
+
if (abandoned && abandoned !== sessionId) {
|
|
36310
|
+
try {
|
|
36311
|
+
await this.connection.closeSession({ sessionId: abandoned });
|
|
36312
|
+
log.info(
|
|
36313
|
+
"acpClient",
|
|
36314
|
+
`loadSession \u2014 closed the abandoned fresh session ${abandoned.slice(0, 8)}`
|
|
36315
|
+
);
|
|
36316
|
+
} catch (err) {
|
|
36317
|
+
log.warn(
|
|
36318
|
+
"acpClient",
|
|
36319
|
+
`loadSession \u2014 could not close abandoned session ${abandoned.slice(0, 8)}: ${err instanceof Error ? err.message : String(err)}`
|
|
36320
|
+
);
|
|
36321
|
+
}
|
|
36322
|
+
}
|
|
36288
36323
|
if (loaded?.configOptions) this.captureModelConfig(loaded.configOptions);
|
|
36289
36324
|
if (loaded?.modes !== void 0) this.captureModes(loaded.modes ?? null);
|
|
36290
36325
|
log.info("acpClient", `loadSession \u2190 ok sessionId=${sessionId.slice(0, 8)}`);
|
|
@@ -47141,7 +47176,7 @@ function checkChokidar() {
|
|
|
47141
47176
|
}
|
|
47142
47177
|
async function doctor(args2 = []) {
|
|
47143
47178
|
const json = args2.includes("--json");
|
|
47144
|
-
const cliVersion = true ? "2.73.
|
|
47179
|
+
const cliVersion = true ? "2.73.8" : "0.0.0-dev";
|
|
47145
47180
|
const apiBase2 = resolveApiBaseUrl();
|
|
47146
47181
|
const diagnosticId = (0, import_node_crypto13.randomUUID)();
|
|
47147
47182
|
log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
|
|
@@ -47612,7 +47647,7 @@ async function mcpWarm(argv = []) {
|
|
|
47612
47647
|
// src/commands/version.ts
|
|
47613
47648
|
var import_picocolors15 = __toESM(require("picocolors"));
|
|
47614
47649
|
function version2() {
|
|
47615
|
-
const v = true ? "2.73.
|
|
47650
|
+
const v = true ? "2.73.8" : "unknown";
|
|
47616
47651
|
console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
|
|
47617
47652
|
}
|
|
47618
47653
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.73.
|
|
3
|
+
"version": "2.73.8",
|
|
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",
|