codeam-cli 2.4.15 → 2.4.17
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 +16 -3
- 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.4.15] — 2026-05-03
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- **cli:** Robust pm2 wrapper for codeam deploy (v2.4.15)
|
|
12
|
+
|
|
13
|
+
## [2.4.14] — 2026-05-03
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- **cli:** Use PM2 to keep codeam-pair alive on Codespaces (v2.4.14)
|
|
18
|
+
|
|
7
19
|
## [2.4.13] — 2026-05-03
|
|
8
20
|
|
|
9
21
|
### Fixed
|
package/dist/index.js
CHANGED
|
@@ -179,7 +179,7 @@ var import_qrcode_terminal = __toESM(require("qrcode-terminal"));
|
|
|
179
179
|
// package.json
|
|
180
180
|
var package_default = {
|
|
181
181
|
name: "codeam-cli",
|
|
182
|
-
version: "2.4.
|
|
182
|
+
version: "2.4.17",
|
|
183
183
|
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.",
|
|
184
184
|
main: "dist/index.js",
|
|
185
185
|
bin: {
|
|
@@ -5913,11 +5913,24 @@ async function deploy() {
|
|
|
5913
5913
|
// --max-restarts 3 keeps PM2 from looping forever if codeam pair
|
|
5914
5914
|
// can't start (e.g. backend unreachable) — three attempts is
|
|
5915
5915
|
// enough for transient flakes, anything more wastes time.
|
|
5916
|
-
|
|
5916
|
+
// No `--time` (would prefix every line with a timestamp and
|
|
5917
|
+
// break the QR rendering); no `--no-pmx` either (default off).
|
|
5918
|
+
'pm2 start codeam --name codeam-pair --cwd "$PROJECT_DIR" --max-restarts 3 -o "$LOG" -e "$LOG" --merge-logs -- pair >/dev/null 2>&1',
|
|
5917
5919
|
// Give PM2 a moment to spawn the process before we start polling
|
|
5918
5920
|
// status — otherwise the very first jlist can race the spawn.
|
|
5919
5921
|
"sleep 2",
|
|
5920
|
-
|
|
5922
|
+
// Filter the live tail: PM2 captures stdout to a file, so codeam-
|
|
5923
|
+
// cli's spinner (which uses \r to redraw a single line in a TTY)
|
|
5924
|
+
// becomes hundreds of new "Waiting for mobile app" / "Requesting
|
|
5925
|
+
// pairing code" lines per second in the file — pure noise. Drop
|
|
5926
|
+
// them so the user sees just the QR + the pairing code + the
|
|
5927
|
+
// "Paired with" / "for shortcuts" markers.
|
|
5928
|
+
// `tail -n +1` shows everything in the file from the start —
|
|
5929
|
+
// critical because pm2 has already written the QR + pairing
|
|
5930
|
+
// code by the time we get here (during the `sleep 2` above).
|
|
5931
|
+
// `-n 0` would miss all of that and only show the post-spawn
|
|
5932
|
+
// spinner spam, leaving the user staring at a blank screen.
|
|
5933
|
+
'tail -n +1 -F "$LOG" 2>/dev/null | grep --line-buffered -vE "Waiting for mobile app|Requesting pairing code" &',
|
|
5921
5934
|
"TAIL=$!",
|
|
5922
5935
|
"trap 'kill $TAIL 2>/dev/null; exit 130' INT TERM",
|
|
5923
5936
|
// Phase 1 — wait for "Paired with", or for codeam to print a
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.17",
|
|
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
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|