codeam-cli 2.61.65 → 2.61.66

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.61.65] — 2026-07-28
8
+
9
+ ### Added
10
+
11
+ - **shared:** Enable Microsoft Teams (comms, OAuth Graph + teams MCP)
12
+
7
13
  ## [2.61.64] — 2026-07-28
8
14
 
9
15
  ### Added
package/dist/index.js CHANGED
@@ -1158,11 +1158,12 @@ var INTEGRATION_REGISTRY = {
1158
1158
  name: "Figma",
1159
1159
  icon: "figma",
1160
1160
  category: "design",
1161
- // DARK pending Figma's OAuth-app review approval (submitted 2026-07-16).
1162
- // Figma OAuth apps do NOT exist publicly until review passes (authorize URL
1163
- // errors "OAuth app ... doesn't exist"). Backend provider + secrets are
1164
- // already deployed; flip to true once approved (bead codeagent-m4ix).
1165
- enabled: false,
1161
+ // LIVE. OAuth is the PRIMARY flow (app pending Figma's review until it
1162
+ // passes the authorize URL errors "OAuth app doesn't exist"), so a PAT
1163
+ // fallback (`apiKeyFallback`) ships alongside it and works TODAY: the user
1164
+ // pastes a Figma personal access token. Same OAuth-primary + PAT-secondary
1165
+ // shape as GitHub. Flip of the OAuth review is transparent (bead codeagent-m4ix).
1166
+ enabled: true,
1166
1167
  auth: {
1167
1168
  kind: "oauth_redirect",
1168
1169
  // Granular READ-ONLY scopes (legacy `files:read` is deprecated for
@@ -1176,7 +1177,25 @@ var INTEGRATION_REGISTRY = {
1176
1177
  "file_metadata:read",
1177
1178
  "file_dev_resources:read",
1178
1179
  "library_content:read"
1179
- ]
1180
+ ],
1181
+ // SECONDARY: paste a Figma personal access token instead of OAuth. The
1182
+ // PAT uses the `X-Figma-Token` header, so the delivery env var differs
1183
+ // from OAuth (`FIGMA_API_KEY` vs `FIGMA_OAUTH_TOKEN`) — hence its own
1184
+ // envMapping, used when the credential was linked via PAT.
1185
+ apiKeyFallback: {
1186
+ fields: [
1187
+ {
1188
+ key: "accessToken",
1189
+ label: "Figma personal access token",
1190
+ placeholder: "figd_\u2026",
1191
+ secret: true,
1192
+ help: "Figma \u2192 Settings \u2192 Security \u2192 Personal access tokens (read-only scopes)."
1193
+ }
1194
+ ],
1195
+ envMapping: {
1196
+ FIGMA_API_KEY: "accessToken"
1197
+ }
1198
+ }
1180
1199
  },
1181
1200
  delivery: {
1182
1201
  mcp: {
@@ -6969,7 +6988,7 @@ function readAnonId() {
6969
6988
  }
6970
6989
  function superProperties() {
6971
6990
  return {
6972
- cliVersion: true ? "2.61.65" : "0.0.0-dev",
6991
+ cliVersion: true ? "2.61.66" : "0.0.0-dev",
6973
6992
  nodeVersion: process.version,
6974
6993
  platform: process.platform,
6975
6994
  arch: process.arch,
@@ -7150,7 +7169,7 @@ var os4 = __toESM(require("os"));
7150
7169
  // package.json
7151
7170
  var package_default = {
7152
7171
  name: "codeam-cli",
7153
- version: "2.61.65",
7172
+ version: "2.61.66",
7154
7173
  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.",
7155
7174
  type: "commonjs",
7156
7175
  main: "dist/index.js",
@@ -8322,7 +8341,7 @@ var CommandRelayService = class _CommandRelayService {
8322
8341
  // fresh + clear the "CLI update available" banner after a self-update
8323
8342
  // (a codespace that reinstalls @latest reconnects via heartbeat, not
8324
8343
  // pair/reconnect). Older backends ignore the extra field.
8325
- ..."2.61.65" ? { ideVersion: "2.61.65" } : {}
8344
+ ..."2.61.66" ? { ideVersion: "2.61.66" } : {}
8326
8345
  }).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
8327
8346
  }
8328
8347
  /**
@@ -19431,7 +19450,7 @@ async function autoUpgradeBeforeCriticalCommand() {
19431
19450
  if (process.env.NODE_ENV === "test") return;
19432
19451
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
19433
19452
  if (process.env.CI) return;
19434
- const current = true ? "2.61.65" : null;
19453
+ const current = true ? "2.61.66" : null;
19435
19454
  if (!current) return;
19436
19455
  const cache = readCache();
19437
19456
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -19448,7 +19467,7 @@ function checkForUpdates() {
19448
19467
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
19449
19468
  if (process.env.CI) return;
19450
19469
  if (!process.stdout.isTTY) return;
19451
- const current = true ? "2.61.65" : null;
19470
+ const current = true ? "2.61.66" : null;
19452
19471
  if (!current) return;
19453
19472
  const cache = readCache();
19454
19473
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -19468,7 +19487,7 @@ var SELF_UPDATE_INTERVAL_MS = 60 * 60 * 1e3;
19468
19487
  var SELF_UPDATE_VIEW_TIMEOUT_MS = 3e4;
19469
19488
  var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
19470
19489
  function currentCliVersion() {
19471
- return true ? "2.61.65" : null;
19490
+ return true ? "2.61.66" : null;
19472
19491
  }
19473
19492
  function runCmd(cmd, args2, timeoutMs) {
19474
19493
  return new Promise((resolve8) => {
@@ -39707,7 +39726,7 @@ function checkChokidar() {
39707
39726
  }
39708
39727
  async function doctor(args2 = []) {
39709
39728
  const json = args2.includes("--json");
39710
- const cliVersion = true ? "2.61.65" : "0.0.0-dev";
39729
+ const cliVersion = true ? "2.61.66" : "0.0.0-dev";
39711
39730
  const apiBase2 = resolveApiBaseUrl();
39712
39731
  const diagnosticId = (0, import_node_crypto13.randomUUID)();
39713
39732
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -40229,7 +40248,7 @@ async function mcpRun(args2) {
40229
40248
  // src/commands/version.ts
40230
40249
  var import_picocolors15 = __toESM(require("picocolors"));
40231
40250
  function version2() {
40232
- const v = true ? "2.61.65" : "unknown";
40251
+ const v = true ? "2.61.66" : "unknown";
40233
40252
  console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
40234
40253
  }
40235
40254
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "2.61.65",
3
+ "version": "2.61.66",
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",