codeam-cli 2.12.13 → 2.12.15
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 +25 -6
- 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.12.14] — 2026-05-14
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- **cli:** Dedent Codex's 2-space chat margin from diff lines
|
|
12
|
+
|
|
13
|
+
## [2.12.13] — 2026-05-14
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- **cli:** Don't wrap diff / commit / PR / push / merge output in code fences
|
|
18
|
+
|
|
7
19
|
## [2.12.12] — 2026-05-14
|
|
8
20
|
|
|
9
21
|
### Fixed
|
package/dist/index.js
CHANGED
|
@@ -1682,7 +1682,7 @@ var import_qrcode_terminal = __toESM(require("qrcode-terminal"));
|
|
|
1682
1682
|
// package.json
|
|
1683
1683
|
var package_default = {
|
|
1684
1684
|
name: "codeam-cli",
|
|
1685
|
-
version: "2.12.
|
|
1685
|
+
version: "2.12.15",
|
|
1686
1686
|
description: "Remote control Claude Code (and other AI coding agents) from your mobile phone. Pair your device, send prompts, stream responses in real-time, and approve commands \u2014 from anywhere.",
|
|
1687
1687
|
type: "commonjs",
|
|
1688
1688
|
main: "dist/index.js",
|
|
@@ -5834,12 +5834,13 @@ function filterCodexChrome(lines) {
|
|
|
5834
5834
|
}
|
|
5835
5835
|
out.push(t2);
|
|
5836
5836
|
}
|
|
5837
|
-
const
|
|
5837
|
+
const dedented = dedentCodexStructuredLines(out);
|
|
5838
|
+
const wrapped = wrapCodexCodeBlocks(dedented);
|
|
5838
5839
|
const hasRealInput = lines.some((l) => /\w/.test(l));
|
|
5839
5840
|
if (out.length > 0 || hasRealInput) {
|
|
5840
5841
|
const sampleIn = lines.slice(-50).map((l, i) => ` in[${i}] ${JSON.stringify(l)}`).join("\n");
|
|
5841
|
-
const sampleOut =
|
|
5842
|
-
log.info("codex-parse", `in=${lines.length} out=${
|
|
5842
|
+
const sampleOut = dedented.map((l, i) => ` out[${i}] ${JSON.stringify(l)}`).join("\n");
|
|
5843
|
+
log.info("codex-parse", `in=${lines.length} out=${dedented.length}
|
|
5843
5844
|
${sampleIn}
|
|
5844
5845
|
---
|
|
5845
5846
|
${sampleOut}`);
|
|
@@ -5864,6 +5865,24 @@ var PR_TITLE_RE = /^title:\s+\S/;
|
|
|
5864
5865
|
var PR_STATE_RE = /^state:\s+(?:OPEN|CLOSED|MERGED|DRAFT)/i;
|
|
5865
5866
|
var PR_URL_RE = /https?:\/\/github\.com\/[\w.-]+\/[\w.-]+\/pull\/\d+/;
|
|
5866
5867
|
var PR_BANNER_RE = /^\s*[✓✔]?\s*Pull request created\s*$/i;
|
|
5868
|
+
function dedentCodexStructuredLines(lines) {
|
|
5869
|
+
const MARKER_RE = /^( +)(?:diff --git |@@ |--- |\+\+\+ |Updating [0-9a-f]|Fast-forward|Merge made by |To (?:https?:\/\/|git@|github\.com|[\w.-]+[:/])|From (?:https?:\/\/|git@|github\.com|[\w.-]+[:/])|\[[\w./@-]+\s+[0-9a-f]{7,40}\])/;
|
|
5870
|
+
let margin = -1;
|
|
5871
|
+
for (const line of lines) {
|
|
5872
|
+
const m = line.match(MARKER_RE);
|
|
5873
|
+
if (m) {
|
|
5874
|
+
const w3 = m[1].length;
|
|
5875
|
+
if (margin === -1 || w3 < margin) margin = w3;
|
|
5876
|
+
}
|
|
5877
|
+
}
|
|
5878
|
+
if (margin <= 0) return lines;
|
|
5879
|
+
return lines.map((line) => {
|
|
5880
|
+
if (line.length === 0) return line;
|
|
5881
|
+
const lead = line.match(/^ */)?.[0].length ?? 0;
|
|
5882
|
+
const strip = Math.min(margin, lead);
|
|
5883
|
+
return strip > 0 ? line.slice(strip) : line;
|
|
5884
|
+
});
|
|
5885
|
+
}
|
|
5867
5886
|
function isStructuredBlock(block) {
|
|
5868
5887
|
if (block.some((l) => DIFF_HUNK_RE.test(l))) return true;
|
|
5869
5888
|
if (block.some((l) => DIFF_GIT_RE.test(l))) return true;
|
|
@@ -10424,7 +10443,7 @@ async function stopWorkspaceFromLocal(target) {
|
|
|
10424
10443
|
// src/commands/version.ts
|
|
10425
10444
|
var import_picocolors11 = __toESM(require("picocolors"));
|
|
10426
10445
|
function version() {
|
|
10427
|
-
const v = true ? "2.12.
|
|
10446
|
+
const v = true ? "2.12.15" : "unknown";
|
|
10428
10447
|
console.log(`${import_picocolors11.default.bold("codeam-cli")} ${import_picocolors11.default.cyan(v)}`);
|
|
10429
10448
|
}
|
|
10430
10449
|
|
|
@@ -10559,7 +10578,7 @@ function checkForUpdates() {
|
|
|
10559
10578
|
if (process.env.CODEAM_DISABLE_UPDATE_CHECK === "1") return;
|
|
10560
10579
|
if (process.env.CI) return;
|
|
10561
10580
|
if (!process.stdout.isTTY) return;
|
|
10562
|
-
const current = true ? "2.12.
|
|
10581
|
+
const current = true ? "2.12.15" : null;
|
|
10563
10582
|
if (!current) return;
|
|
10564
10583
|
const cache = readCache();
|
|
10565
10584
|
const fresh = cache && Date.now() - cache.fetchedAt < TTL_MS;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.15",
|
|
4
4
|
"description": "Remote control Claude Code (and other AI coding agents) from your mobile phone. Pair your device, send prompts, stream responses in real-time, and approve commands — from anywhere.",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "dist/index.js",
|