codeam-cli 2.61.61 → 2.61.63
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 +123 -8
- 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.61.62] — 2026-07-28
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- **shared:** Postman + Mixpanel integrations (api_key)
|
|
12
|
+
|
|
13
|
+
## [2.61.61] — 2026-07-27
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
|
|
17
|
+
- **shared:** N8n integration (automation, api_key + n8n MCP)
|
|
18
|
+
|
|
7
19
|
## [2.61.59] — 2026-07-27
|
|
8
20
|
|
|
9
21
|
### Added
|
package/dist/index.js
CHANGED
|
@@ -1351,6 +1351,121 @@ var INTEGRATION_REGISTRY = {
|
|
|
1351
1351
|
staticEnv: { MCP_MODE: "stdio" }
|
|
1352
1352
|
}
|
|
1353
1353
|
}
|
|
1354
|
+
},
|
|
1355
|
+
postman: {
|
|
1356
|
+
id: "postman",
|
|
1357
|
+
name: "Postman",
|
|
1358
|
+
icon: "postman",
|
|
1359
|
+
category: "api_tools",
|
|
1360
|
+
// LIVE — api_key rail. Postman auth is a personal API key (Settings → API
|
|
1361
|
+
// keys). The user pastes it; the backend validates via GET /me + vaults it.
|
|
1362
|
+
// No OAuth (Postman's API has no user OAuth), no secrets, no config-503.
|
|
1363
|
+
enabled: true,
|
|
1364
|
+
auth: {
|
|
1365
|
+
kind: "api_key",
|
|
1366
|
+
fields: [
|
|
1367
|
+
{
|
|
1368
|
+
key: "accessToken",
|
|
1369
|
+
label: "API Key",
|
|
1370
|
+
placeholder: "PMAK-\u2026",
|
|
1371
|
+
secret: true,
|
|
1372
|
+
help: "Postman \u2192 Settings \u2192 API keys \u2192 Generate API Key."
|
|
1373
|
+
}
|
|
1374
|
+
]
|
|
1375
|
+
},
|
|
1376
|
+
delivery: {
|
|
1377
|
+
mcp: {
|
|
1378
|
+
// Postman's OFFICIAL stdio MCP server (Node). BYO key via POSTMAN_API_KEY
|
|
1379
|
+
// (env only). Version PINNED; bump only after re-verifying headless.
|
|
1380
|
+
command: "npx",
|
|
1381
|
+
args: ["-y", "@postman/postman-mcp-server@2.11.2"],
|
|
1382
|
+
envMapping: {
|
|
1383
|
+
POSTMAN_API_KEY: "accessToken"
|
|
1384
|
+
}
|
|
1385
|
+
}
|
|
1386
|
+
}
|
|
1387
|
+
},
|
|
1388
|
+
mixpanel: {
|
|
1389
|
+
id: "mixpanel",
|
|
1390
|
+
name: "Mixpanel",
|
|
1391
|
+
icon: "mixpanel",
|
|
1392
|
+
category: "analytics",
|
|
1393
|
+
// LIVE — api_key rail. Mixpanel query/export auth is a SERVICE ACCOUNT
|
|
1394
|
+
// (username + password, Basic auth) scoped to a project (project id). The
|
|
1395
|
+
// user pastes all three; the backend validates + vaults them. No OAuth
|
|
1396
|
+
// redirect (service accounts are machine-to-machine), no GSM secrets.
|
|
1397
|
+
enabled: true,
|
|
1398
|
+
auth: {
|
|
1399
|
+
kind: "api_key",
|
|
1400
|
+
fields: [
|
|
1401
|
+
{
|
|
1402
|
+
key: "accessToken",
|
|
1403
|
+
label: "Service Account Username",
|
|
1404
|
+
placeholder: "your-sa.mp-service-account",
|
|
1405
|
+
secret: false,
|
|
1406
|
+
help: "Mixpanel \u2192 Organization Settings \u2192 Service Accounts \u2192 create one with project access."
|
|
1407
|
+
},
|
|
1408
|
+
{
|
|
1409
|
+
key: "secretKey",
|
|
1410
|
+
label: "Service Account Secret",
|
|
1411
|
+
placeholder: "the service account secret",
|
|
1412
|
+
secret: true,
|
|
1413
|
+
help: "Shown once when you create the service account \u2014 copy it then."
|
|
1414
|
+
},
|
|
1415
|
+
{
|
|
1416
|
+
key: "projectId",
|
|
1417
|
+
label: "Project ID",
|
|
1418
|
+
placeholder: "1234567",
|
|
1419
|
+
secret: false,
|
|
1420
|
+
help: "Mixpanel \u2192 Project Settings \u2192 Project ID."
|
|
1421
|
+
}
|
|
1422
|
+
]
|
|
1423
|
+
},
|
|
1424
|
+
delivery: {
|
|
1425
|
+
mcp: {
|
|
1426
|
+
// @mendeel/mcp-mixpanel (Node): the service account + project id via env
|
|
1427
|
+
// only (MIXPANEL_SERVICE_ACCOUNT_USERNAME/PASSWORD + MIXPANEL_PROJECT_ID).
|
|
1428
|
+
// Version PINNED; bump only after re-verifying headless. Default region US.
|
|
1429
|
+
command: "npx",
|
|
1430
|
+
args: ["-y", "@mendeel/mcp-mixpanel@1.0.4"],
|
|
1431
|
+
envMapping: {
|
|
1432
|
+
MIXPANEL_SERVICE_ACCOUNT_USERNAME: "accessToken",
|
|
1433
|
+
MIXPANEL_SERVICE_ACCOUNT_PASSWORD: "secretKey",
|
|
1434
|
+
MIXPANEL_PROJECT_ID: "projectId"
|
|
1435
|
+
}
|
|
1436
|
+
}
|
|
1437
|
+
}
|
|
1438
|
+
},
|
|
1439
|
+
supabase: {
|
|
1440
|
+
id: "supabase",
|
|
1441
|
+
name: "Supabase",
|
|
1442
|
+
icon: "supabase",
|
|
1443
|
+
category: "database",
|
|
1444
|
+
// LIVE — OAuth 2.0 (authorization code, Confidential). authorize
|
|
1445
|
+
// api.supabase.com/v1/oauth/authorize; token /v1/oauth/token
|
|
1446
|
+
// (form-urlencoded, client creds via HTTP Basic); rotating refresh tokens.
|
|
1447
|
+
// The OAuth app (Organization → OAuth Apps) is registered and
|
|
1448
|
+
// SUPABASE_OAUTH_CLIENT_ID/SECRET/REDIRECT_URI are in Secret Manager
|
|
1449
|
+
// (prod+dev); the config-gated 503 keeps this safe mid-rollout.
|
|
1450
|
+
enabled: true,
|
|
1451
|
+
auth: {
|
|
1452
|
+
kind: "oauth_redirect",
|
|
1453
|
+
// ⚠️ Supabase scopes are configured ON THE OAUTH APP, NOT sent in the
|
|
1454
|
+
// authorize URL — this list is informational (what the app was granted).
|
|
1455
|
+
scopes: ["all"]
|
|
1456
|
+
},
|
|
1457
|
+
delivery: {
|
|
1458
|
+
mcp: {
|
|
1459
|
+
// Supabase's OFFICIAL MCP server (Node). The OAuth access token IS a
|
|
1460
|
+
// Management API token → fed via SUPABASE_ACCESS_TOKEN (env only, never
|
|
1461
|
+
// argv). Version PINNED; bump only after re-verifying headless.
|
|
1462
|
+
command: "npx",
|
|
1463
|
+
args: ["-y", "@supabase/mcp-server-supabase@0.9.0"],
|
|
1464
|
+
envMapping: {
|
|
1465
|
+
SUPABASE_ACCESS_TOKEN: "accessToken"
|
|
1466
|
+
}
|
|
1467
|
+
}
|
|
1468
|
+
}
|
|
1354
1469
|
}
|
|
1355
1470
|
};
|
|
1356
1471
|
function getIntegration(id) {
|
|
@@ -6796,7 +6911,7 @@ function readAnonId() {
|
|
|
6796
6911
|
}
|
|
6797
6912
|
function superProperties() {
|
|
6798
6913
|
return {
|
|
6799
|
-
cliVersion: true ? "2.61.
|
|
6914
|
+
cliVersion: true ? "2.61.63" : "0.0.0-dev",
|
|
6800
6915
|
nodeVersion: process.version,
|
|
6801
6916
|
platform: process.platform,
|
|
6802
6917
|
arch: process.arch,
|
|
@@ -6977,7 +7092,7 @@ var os4 = __toESM(require("os"));
|
|
|
6977
7092
|
// package.json
|
|
6978
7093
|
var package_default = {
|
|
6979
7094
|
name: "codeam-cli",
|
|
6980
|
-
version: "2.61.
|
|
7095
|
+
version: "2.61.63",
|
|
6981
7096
|
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.",
|
|
6982
7097
|
type: "commonjs",
|
|
6983
7098
|
main: "dist/index.js",
|
|
@@ -8149,7 +8264,7 @@ var CommandRelayService = class _CommandRelayService {
|
|
|
8149
8264
|
// fresh + clear the "CLI update available" banner after a self-update
|
|
8150
8265
|
// (a codespace that reinstalls @latest reconnects via heartbeat, not
|
|
8151
8266
|
// pair/reconnect). Older backends ignore the extra field.
|
|
8152
|
-
..."2.61.
|
|
8267
|
+
..."2.61.63" ? { ideVersion: "2.61.63" } : {}
|
|
8153
8268
|
}).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
|
|
8154
8269
|
}
|
|
8155
8270
|
/**
|
|
@@ -19258,7 +19373,7 @@ async function autoUpgradeBeforeCriticalCommand() {
|
|
|
19258
19373
|
if (process.env.NODE_ENV === "test") return;
|
|
19259
19374
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
19260
19375
|
if (process.env.CI) return;
|
|
19261
|
-
const current = true ? "2.61.
|
|
19376
|
+
const current = true ? "2.61.63" : null;
|
|
19262
19377
|
if (!current) return;
|
|
19263
19378
|
const cache = readCache();
|
|
19264
19379
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
|
@@ -19275,7 +19390,7 @@ function checkForUpdates() {
|
|
|
19275
19390
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
19276
19391
|
if (process.env.CI) return;
|
|
19277
19392
|
if (!process.stdout.isTTY) return;
|
|
19278
|
-
const current = true ? "2.61.
|
|
19393
|
+
const current = true ? "2.61.63" : null;
|
|
19279
19394
|
if (!current) return;
|
|
19280
19395
|
const cache = readCache();
|
|
19281
19396
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
|
@@ -19295,7 +19410,7 @@ var SELF_UPDATE_INTERVAL_MS = 60 * 60 * 1e3;
|
|
|
19295
19410
|
var SELF_UPDATE_VIEW_TIMEOUT_MS = 3e4;
|
|
19296
19411
|
var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
|
|
19297
19412
|
function currentCliVersion() {
|
|
19298
|
-
return true ? "2.61.
|
|
19413
|
+
return true ? "2.61.63" : null;
|
|
19299
19414
|
}
|
|
19300
19415
|
function runCmd(cmd, args2, timeoutMs) {
|
|
19301
19416
|
return new Promise((resolve8) => {
|
|
@@ -39534,7 +39649,7 @@ function checkChokidar() {
|
|
|
39534
39649
|
}
|
|
39535
39650
|
async function doctor(args2 = []) {
|
|
39536
39651
|
const json = args2.includes("--json");
|
|
39537
|
-
const cliVersion = true ? "2.61.
|
|
39652
|
+
const cliVersion = true ? "2.61.63" : "0.0.0-dev";
|
|
39538
39653
|
const apiBase2 = resolveApiBaseUrl();
|
|
39539
39654
|
const diagnosticId = (0, import_node_crypto13.randomUUID)();
|
|
39540
39655
|
log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
|
|
@@ -40056,7 +40171,7 @@ async function mcpRun(args2) {
|
|
|
40056
40171
|
// src/commands/version.ts
|
|
40057
40172
|
var import_picocolors15 = __toESM(require("picocolors"));
|
|
40058
40173
|
function version2() {
|
|
40059
|
-
const v = true ? "2.61.
|
|
40174
|
+
const v = true ? "2.61.63" : "unknown";
|
|
40060
40175
|
console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
|
|
40061
40176
|
}
|
|
40062
40177
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.61.
|
|
3
|
+
"version": "2.61.63",
|
|
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",
|