codeam-cli 2.61.31 → 2.61.32

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.31] — 2026-07-24
8
+
9
+ ### Added
10
+
11
+ - **shared:** Make GitHub a first-class version_control integration
12
+
7
13
  ## [2.61.30] — 2026-07-24
8
14
 
9
15
  ### Added
package/dist/index.js CHANGED
@@ -641,6 +641,36 @@ var INTEGRATION_REGISTRY = {
641
641
  // No MCP: a deployed box already has an authenticated `gh` on PATH.
642
642
  delivery: {}
643
643
  },
644
+ gitlab: {
645
+ id: "gitlab",
646
+ name: "GitLab",
647
+ icon: "gitlab",
648
+ category: "version_control",
649
+ // LIVE — a user-owned gitlab.com application (Confidential) with BOTH env
650
+ // callbacks registered, so dev/prod share the client and differ only in
651
+ // GITLAB_OAUTH_REDIRECT_URI. The backend GitLabOAuthProvider is
652
+ // config-gated (503 if env unset), so this is safe mid-rollout.
653
+ //
654
+ // ⚠️ Unlike `github`, this is a NORMAL `oauth_redirect` integration: its
655
+ // credential is vaulted here rather than living in a ProviderToken, because
656
+ // nothing else in the product owns a GitLab connection (GitHub's lives on
657
+ // the codespaces rail, which is why it's `kind: 'connection'`).
658
+ enabled: true,
659
+ auth: {
660
+ kind: "oauth_redirect",
661
+ // GitLab has NO per-resource scopes — `api` is the only one that grants
662
+ // merge-request WRITE (comment / approve / merge / close), so a
663
+ // read-only alternative would make the whole MR surface useless.
664
+ // `write_repository` is the git-over-HTTPS rail for the agent's push;
665
+ // `api` already covers it for user tokens, but it costs nothing on a
666
+ // consent screen that already says "complete read/write access" and
667
+ // changing scopes later forces EVERY user to re-authorize.
668
+ scopes: ["api", "write_repository"]
669
+ },
670
+ // No MCP: the box's `git` is authenticated for push, and the MR surface is
671
+ // served backend-side by the VCS provider — same shape as `github`.
672
+ delivery: {}
673
+ },
644
674
  github_issues: {
645
675
  id: "github_issues",
646
676
  name: "GitHub Issues",
@@ -6325,7 +6355,7 @@ function readAnonId() {
6325
6355
  }
6326
6356
  function superProperties() {
6327
6357
  return {
6328
- cliVersion: true ? "2.61.31" : "0.0.0-dev",
6358
+ cliVersion: true ? "2.61.32" : "0.0.0-dev",
6329
6359
  nodeVersion: process.version,
6330
6360
  platform: process.platform,
6331
6361
  arch: process.arch,
@@ -6506,7 +6536,7 @@ var os4 = __toESM(require("os"));
6506
6536
  // package.json
6507
6537
  var package_default = {
6508
6538
  name: "codeam-cli",
6509
- version: "2.61.31",
6539
+ version: "2.61.32",
6510
6540
  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.",
6511
6541
  type: "commonjs",
6512
6542
  main: "dist/index.js",
@@ -7677,7 +7707,7 @@ var CommandRelayService = class _CommandRelayService {
7677
7707
  // fresh + clear the "CLI update available" banner after a self-update
7678
7708
  // (a codespace that reinstalls @latest reconnects via heartbeat, not
7679
7709
  // pair/reconnect). Older backends ignore the extra field.
7680
- ..."2.61.31" ? { ideVersion: "2.61.31" } : {}
7710
+ ..."2.61.32" ? { ideVersion: "2.61.32" } : {}
7681
7711
  }).then(() => log.trace("relay", `heartbeat ok online=${online}`)).catch((err) => log.trace("relay", `heartbeat failed online=${online}`, err));
7682
7712
  }
7683
7713
  /**
@@ -18539,7 +18569,7 @@ async function autoUpgradeBeforeCriticalCommand() {
18539
18569
  if (process.env.NODE_ENV === "test") return;
18540
18570
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
18541
18571
  if (process.env.CI) return;
18542
- const current = true ? "2.61.31" : null;
18572
+ const current = true ? "2.61.32" : null;
18543
18573
  if (!current) return;
18544
18574
  const cache = readCache();
18545
18575
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -18556,7 +18586,7 @@ function checkForUpdates() {
18556
18586
  if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
18557
18587
  if (process.env.CI) return;
18558
18588
  if (!process.stdout.isTTY) return;
18559
- const current = true ? "2.61.31" : null;
18589
+ const current = true ? "2.61.32" : null;
18560
18590
  if (!current) return;
18561
18591
  const cache = readCache();
18562
18592
  const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
@@ -18576,7 +18606,7 @@ var SELF_UPDATE_INTERVAL_MS = 60 * 60 * 1e3;
18576
18606
  var SELF_UPDATE_VIEW_TIMEOUT_MS = 3e4;
18577
18607
  var SELF_UPDATE_INSTALL_TIMEOUT_MS = 18e4;
18578
18608
  function currentCliVersion() {
18579
- return true ? "2.61.31" : null;
18609
+ return true ? "2.61.32" : null;
18580
18610
  }
18581
18611
  function runCmd(cmd, args2, timeoutMs) {
18582
18612
  return new Promise((resolve8) => {
@@ -38569,7 +38599,7 @@ function checkChokidar() {
38569
38599
  }
38570
38600
  async function doctor(args2 = []) {
38571
38601
  const json = args2.includes("--json");
38572
- const cliVersion = true ? "2.61.31" : "0.0.0-dev";
38602
+ const cliVersion = true ? "2.61.32" : "0.0.0-dev";
38573
38603
  const apiBase2 = resolveApiBaseUrl();
38574
38604
  const diagnosticId = (0, import_node_crypto13.randomUUID)();
38575
38605
  log.info("doctor", `run id=${diagnosticId} cli=${cliVersion}`);
@@ -39080,7 +39110,7 @@ async function mcpRun(args2) {
39080
39110
  // src/commands/version.ts
39081
39111
  var import_picocolors15 = __toESM(require("picocolors"));
39082
39112
  function version2() {
39083
- const v = true ? "2.61.31" : "unknown";
39113
+ const v = true ? "2.61.32" : "unknown";
39084
39114
  console.log(`${import_picocolors15.default.bold("codeam-cli")} ${import_picocolors15.default.cyan(v)}`);
39085
39115
  }
39086
39116
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "2.61.31",
3
+ "version": "2.61.32",
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",