codeam-cli 1.4.54 → 1.4.56

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.
Files changed (3) hide show
  1. package/README.md +69 -13
  2. package/dist/index.js +29 -3
  3. package/package.json +25 -3
package/README.md CHANGED
@@ -1,25 +1,81 @@
1
1
  # codeam-cli
2
2
 
3
- Remote control [Claude Code](https://claude.ai/code) from your mobile device using [CodeAgent Mobile](https://www.codeagent-mobile.com).
3
+ [![npm version](https://img.shields.io/npm/v/codeam-cli.svg?color=34d399&style=flat-square)](https://www.npmjs.com/package/codeam-cli)
4
+ [![npm downloads](https://img.shields.io/npm/dm/codeam-cli.svg?color=34d399&style=flat-square)](https://www.npmjs.com/package/codeam-cli)
5
+ [![license](https://img.shields.io/npm/l/codeam-cli.svg?color=34d399&style=flat-square)](https://github.com/edgardurand/codeagent-mobile/blob/main/LICENSE)
6
+ [![node](https://img.shields.io/node/v/codeam-cli.svg?color=34d399&style=flat-square)](https://nodejs.org/)
4
7
 
5
- ## Install
8
+ > **Remote control [Claude Code](https://claude.ai/code) from your phone.**
9
+ > Send prompts, stream responses, and approve commands in real-time — from the subway, the couch, or anywhere away from your desk.
10
+
11
+ `codeam-cli` is the companion CLI for [**CodeAgent Mobile**](https://codeagent-mobile.com). It wraps Claude Code inside a pseudo-terminal, relays your mobile prompts to the agent, and streams the output back to your phone in real-time.
12
+
13
+ ---
14
+
15
+ ## Why does this exist?
16
+
17
+ Because sometimes your best ideas happen away from the keyboard. Maybe you're on a walk, on the train, in a meeting, or just want to keep a long-running task going while you step away. `codeam-cli` lets your AI agent keep working — and lets **you** keep shipping — without needing to be at your machine.
18
+
19
+ It works exactly like Claude Code (same terminal, same project, same files), but every prompt and every response is mirrored on your phone. You can even approve interactive selectors and confirmations from mobile.
20
+
21
+ ---
22
+
23
+ ## Quick Start
6
24
 
7
25
  ```bash
26
+ # 1. Install once
8
27
  npm install -g codeam-cli
9
- ```
10
28
 
11
- ## Usage
29
+ # 2. Pair your phone (generates a 6-character code)
30
+ codeam pair
12
31
 
13
- ```bash
14
- codeam pair # Pair with your mobile device
15
- codeam # Start Claude Code with mobile control
16
- codeam sessions # List paired sessions
17
- codeam status # Show connection status
18
- codeam logout # Remove all sessions
32
+ # 3. Run Claude Code with mobile control (every time after that)
33
+ codeam
19
34
  ```
20
35
 
36
+ That's it. Open the [CodeAgent Mobile app](https://codeagent-mobile.com), enter the code, and you're controlling Claude Code from your phone.
37
+
38
+ ---
39
+
40
+ ## Commands
41
+
42
+ | Command | What it does |
43
+ |---|---|
44
+ | `codeam` | Start Claude Code in the current directory, with mobile control |
45
+ | `codeam pair` | Pair a new mobile device (6-digit code or QR) |
46
+ | `codeam sessions` | List all paired devices |
47
+ | `codeam status` | Show connection status |
48
+ | `codeam logout` | Remove all paired sessions |
49
+
50
+ ---
51
+
21
52
  ## Requirements
22
53
 
23
- - Node.js 18+
24
- - Claude Code installed (`npm install -g @anthropic-ai/claude-code`)
25
- - [CodeAgent Mobile](https://www.codeagent-mobile.com) app on your phone
54
+ - **Node.js 18+**
55
+ - **Claude Code** see the [official quickstart](https://code.claude.com/docs/en/quickstart)
56
+ - **[CodeAgent Mobile](https://codeagent-mobile.com)** app on your phone ([iOS](https://apps.apple.com/) / [Android](https://play.google.com/store/apps/details?id=com.codeagent.mobile))
57
+
58
+ ---
59
+
60
+ ## How it works
61
+
62
+ 1. `codeam-cli` spawns Claude Code inside a Python PTY helper so Claude sees a real TTY.
63
+ 2. Raw PTY output runs through a virtual terminal renderer, interactive selectors are detected, and TUI chrome is filtered out.
64
+ 3. Clean output chunks are pushed to CodeAgent's backend relay.
65
+ 4. Your phone connects to the same relay via WebSocket. Every prompt you type on mobile is sent back to the PTY as if typed on your keyboard.
66
+ 5. Everything happens on **your machine** — your code never leaves it. The relay only forwards prompts and sanitized output.
67
+
68
+ ---
69
+
70
+ ## Related
71
+
72
+ - **[CodeAgent Mobile app](https://codeagent-mobile.com)** — the phone app this CLI talks to
73
+ - **[VS Code / Cursor / Windsurf extension](https://marketplace.visualstudio.com/items?itemName=CodeAgentMobile.codeagent-mobile)** — use inside your editor instead of the terminal
74
+ - **[JetBrains plugin](https://plugins.jetbrains.com/plugin/30697-codeagent-mobile)** — IntelliJ, WebStorm, PyCharm, Rider, etc.
75
+ - **[FAQ & Docs](https://codeagent-mobile.com/faq)**
76
+
77
+ ---
78
+
79
+ ## License
80
+
81
+ MIT © [Edgar Durand](https://github.com/edgardurand)
package/dist/index.js CHANGED
@@ -116,8 +116,8 @@ var import_qrcode_terminal = __toESM(require("qrcode-terminal"));
116
116
  // package.json
117
117
  var package_default = {
118
118
  name: "codeam-cli",
119
- version: "1.4.54",
120
- description: "Remote control Claude Code from your mobile device",
119
+ version: "1.4.56",
120
+ 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.",
121
121
  main: "dist/index.js",
122
122
  bin: {
123
123
  codeam: "dist/index.js"
@@ -137,12 +137,34 @@ var package_default = {
137
137
  keywords: [
138
138
  "claude",
139
139
  "claude-code",
140
+ "claude-code-mobile",
140
141
  "ai",
142
+ "ai-agent",
143
+ "ai-coding",
144
+ "ai-pair-programming",
141
145
  "cli",
142
146
  "remote-control",
147
+ "remote-development",
148
+ "mobile-ide",
149
+ "mobile-coding",
150
+ "pair-programming",
143
151
  "codeagent",
144
- "codeam"
152
+ "codeam",
153
+ "anthropic",
154
+ "cursor",
155
+ "copilot",
156
+ "jetbrains",
157
+ "vscode",
158
+ "mcp",
159
+ "code-from-phone",
160
+ "afk-coding",
161
+ "remote-pair-programming",
162
+ "agent-control"
145
163
  ],
164
+ homepage: "https://codeagent-mobile.com",
165
+ bugs: {
166
+ url: "https://github.com/edgardurand/codeagent-mobile/issues"
167
+ },
146
168
  author: "Edgar Durand",
147
169
  repository: {
148
170
  type: "git",
@@ -910,6 +932,8 @@ function isChromeLine(line) {
910
932
  if (BULLET_TOOL_RE.test(t)) return true;
911
933
  if (TREE_LINE_RE.test(t)) return true;
912
934
  if (STATUS_LINE_RE.test(t) && /\d+\s*s\s*[·•]|\bthought\s+for\b|\d+\s*tokens|\(thinking\)/i.test(t)) return true;
935
+ if (/^↓\s*\d+\s*tokens/i.test(t)) return true;
936
+ if (/^\bthought\s+for\s+\d+/i.test(t)) return true;
913
937
  if (/esc.{0,5}to.{0,5}interrupt/i.test(t)) return true;
914
938
  if (/high\s*[·•]\s*\/effort/i.test(t)) return true;
915
939
  if (/^[❯>]\s*$/.test(t)) return true;
@@ -1219,6 +1243,8 @@ function filterChrome(lines) {
1219
1243
  continue;
1220
1244
  if (/^└\s/.test(t)) continue;
1221
1245
  if (/^\+\s/.test(t) && /\d+\s*s\s*[·•]|\bthought\s+for\b|\d+\s*tokens|\(thinking\)/i.test(t)) continue;
1246
+ if (/^↓\s*\d+\s*tokens/i.test(t)) continue;
1247
+ if (/^\bthought\s+for\s+\d+/i.test(t)) continue;
1222
1248
  const stripped = t.replace(/^[│╭╰╮╯┌└┐┘├┤┬┴┼]\s?/, "");
1223
1249
  if (/^[❯>]\s+\S/.test(stripped) && !/^[❯>]\s*\d+\./.test(stripped)) {
1224
1250
  skipEchoContinuation = true;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "codeam-cli",
3
- "version": "1.4.54",
4
- "description": "Remote control Claude Code from your mobile device",
3
+ "version": "1.4.56",
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": {
7
7
  "codeam": "dist/index.js"
@@ -21,12 +21,34 @@
21
21
  "keywords": [
22
22
  "claude",
23
23
  "claude-code",
24
+ "claude-code-mobile",
24
25
  "ai",
26
+ "ai-agent",
27
+ "ai-coding",
28
+ "ai-pair-programming",
25
29
  "cli",
26
30
  "remote-control",
31
+ "remote-development",
32
+ "mobile-ide",
33
+ "mobile-coding",
34
+ "pair-programming",
27
35
  "codeagent",
28
- "codeam"
36
+ "codeam",
37
+ "anthropic",
38
+ "cursor",
39
+ "copilot",
40
+ "jetbrains",
41
+ "vscode",
42
+ "mcp",
43
+ "code-from-phone",
44
+ "afk-coding",
45
+ "remote-pair-programming",
46
+ "agent-control"
29
47
  ],
48
+ "homepage": "https://codeagent-mobile.com",
49
+ "bugs": {
50
+ "url": "https://github.com/edgardurand/codeagent-mobile/issues"
51
+ },
30
52
  "author": "Edgar Durand",
31
53
  "repository": {
32
54
  "type": "git",