codeam-cli 2.4.3 → 2.4.4
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 +6 -0
- package/dist/index.js +19 -9
- package/package.json +1 -1
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.4.2] — 2026-05-03
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- **cli:** Codespace machine picker + auto-install gh; deploy doc (v2.4.2)
|
|
12
|
+
|
|
7
13
|
## [2.4.1] — 2026-05-03
|
|
8
14
|
|
|
9
15
|
### Added
|
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.4",
|
|
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: {
|
|
@@ -5088,6 +5088,14 @@ var import_util2 = require("util");
|
|
|
5088
5088
|
var import_picocolors7 = __toESM(require("picocolors"));
|
|
5089
5089
|
var execFileP2 = (0, import_util2.promisify)(import_child_process5.execFile);
|
|
5090
5090
|
var MAX_BUFFER = 8 * 1024 * 1024;
|
|
5091
|
+
function resetStdinForChild() {
|
|
5092
|
+
if (process.stdin.isTTY) {
|
|
5093
|
+
try {
|
|
5094
|
+
process.stdin.setRawMode(false);
|
|
5095
|
+
} catch {
|
|
5096
|
+
}
|
|
5097
|
+
}
|
|
5098
|
+
}
|
|
5091
5099
|
var GitHubCodespacesProvider = class {
|
|
5092
5100
|
id = "github-codespaces";
|
|
5093
5101
|
displayName = "GitHub Codespaces";
|
|
@@ -5120,6 +5128,7 @@ var GitHubCodespacesProvider = class {
|
|
|
5120
5128
|
} catch {
|
|
5121
5129
|
}
|
|
5122
5130
|
if (!isAuthed) {
|
|
5131
|
+
resetStdinForChild();
|
|
5123
5132
|
await new Promise((resolve2, reject) => {
|
|
5124
5133
|
const proc = (0, import_child_process5.spawn)("gh", ["auth", "login", "-s", "codespace,repo,read:user"], {
|
|
5125
5134
|
stdio: "inherit"
|
|
@@ -5142,6 +5151,7 @@ var GitHubCodespacesProvider = class {
|
|
|
5142
5151
|
].join("\n"),
|
|
5143
5152
|
"One more permission needed"
|
|
5144
5153
|
);
|
|
5154
|
+
resetStdinForChild();
|
|
5145
5155
|
await new Promise((resolve2, reject) => {
|
|
5146
5156
|
const proc = (0, import_child_process5.spawn)(
|
|
5147
5157
|
"gh",
|
|
@@ -5257,15 +5267,15 @@ var GitHubCodespacesProvider = class {
|
|
|
5257
5267
|
initialValue: true
|
|
5258
5268
|
});
|
|
5259
5269
|
if (q(proceed) || !proceed) return;
|
|
5260
|
-
|
|
5261
|
-
|
|
5270
|
+
O2.step(`Installing gh via ${installCmd.describe}\u2026`);
|
|
5271
|
+
resetStdinForChild();
|
|
5262
5272
|
const ok = await new Promise((resolve2) => {
|
|
5263
5273
|
const proc = (0, import_child_process5.spawn)(installCmd.exe, installCmd.args, { stdio: "inherit" });
|
|
5264
5274
|
proc.on("exit", (code) => resolve2(code === 0));
|
|
5265
5275
|
proc.on("error", () => resolve2(false));
|
|
5266
5276
|
});
|
|
5267
|
-
if (ok)
|
|
5268
|
-
else
|
|
5277
|
+
if (ok) O2.success("gh installed");
|
|
5278
|
+
else O2.error("gh install failed");
|
|
5269
5279
|
}
|
|
5270
5280
|
async listProjects() {
|
|
5271
5281
|
const { stdout } = await execFileP2(
|
|
@@ -5406,6 +5416,7 @@ var GitHubCodespacesProvider = class {
|
|
|
5406
5416
|
}
|
|
5407
5417
|
}
|
|
5408
5418
|
async streamCommand(workspaceId, command2) {
|
|
5419
|
+
resetStdinForChild();
|
|
5409
5420
|
return new Promise((resolve2, reject) => {
|
|
5410
5421
|
const proc = (0, import_child_process5.spawn)(
|
|
5411
5422
|
"gh",
|
|
@@ -5443,13 +5454,12 @@ async function deploy() {
|
|
|
5443
5454
|
pt("No provider selected.");
|
|
5444
5455
|
process.exit(0);
|
|
5445
5456
|
}
|
|
5446
|
-
|
|
5447
|
-
authStep.start(`Authorizing with ${provider.displayName}\u2026`);
|
|
5457
|
+
O2.step(`Authorizing with ${provider.displayName}\u2026`);
|
|
5448
5458
|
try {
|
|
5449
5459
|
await provider.authorize();
|
|
5450
|
-
|
|
5460
|
+
O2.success(`Authorized with ${provider.displayName}`);
|
|
5451
5461
|
} catch (err) {
|
|
5452
|
-
|
|
5462
|
+
O2.error("Authorization failed");
|
|
5453
5463
|
pt(err instanceof Error ? err.message : String(err));
|
|
5454
5464
|
process.exit(1);
|
|
5455
5465
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codeam-cli",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.4",
|
|
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": {
|