@phnx-labs/computer-cli 0.1.4 → 0.1.7

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/CHANGELOG.md +30 -0
  2. package/README.md +279 -18
  3. package/package.json +9 -7
package/CHANGELOG.md CHANGED
@@ -1,5 +1,35 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.7
4
+
5
+ - `computer sessions` uses the shared `@phnx-labs/tui` picker, list and stdout writer (PHNX-4227), so its controls and output match standalone `sessions` and `browser sessions`. The picker still lists every run.
6
+ - Ages read `just now`, `3 min ago`, `2 hours ago`, `4 days ago`, then a calendar date (`Sep 28`), in the picker, its preview and the table, instead of `3m ago` / `2h ago` / `5d ago`.
7
+ - The table's footer moves from stdout to stderr and reads `Showing 50 of 120 runs. --limit 120 or --json to see all, --search or --since to narrow.` instead of `… (70 more; --limit 120 …)`, so piped stdout carries rows only. Table columns are as wide as their widest cell, and a long task ends in `…`.
8
+ - Typing a filter in the picker closes the preview pane, as in `sessions`; clear the filter and press space to reopen it.
9
+ - `--json` output is unchanged.
10
+
11
+ ## 0.1.6
12
+
13
+ - `computer sessions --since <when>` and `--until <when>` filter runs by last activity, with the same values as `sessions` (`2h`, `7d`, `4w`, `1mo`, `1y` or an ISO date). They apply to the picker, whose header now lists the active filters, the table and `--json`. An unreadable value exits 2.
14
+ - `computer sessions --limit <n>` now also caps `--json` when given (`--json` stays unbounded without it), and a value that is not a positive integer exits 2 instead of being ignored.
15
+ - Preserve 365-day computer run summaries independently of Agents and Sessions, with safe adoption of existing history, total action counts and saved screenshot locations.
16
+ - Browse runs and captures with consistent search, previews and Escape navigation; use `sessions --search` for scripts or `--open` to open a saved screenshot. Existing action and live desktop task commands remain available.
17
+ - Piped output is no longer cut off at 64 KiB: `computer sessions --json | …` and every other command now deliver all of their output to a pipe. The picker's prompt library loads only when a picker opens.
18
+ - `computer sessions` opens its picker in a terminal instead of failing with `Cannot find package '@inquirer/prompts'`.
19
+ - The legacy import skips runs older than the 365-day retention, and expired runs are pruned before a listing reads them. A legacy database with no computer table, or one that cannot be read, is checked once rather than on every listing; an unreadable one is reported once, and `computer sessions migrate` retries it.
20
+ - Add a generated command reference: `docs/command-reference.html` (searchable, command tree in a sidebar), `docs/command-index.md` and `docs/command-index.json`, built from the registered command tree by `bun scripts/gen-docs.ts`. `scripts/test.sh` fails when they are stale. `computer task start`, `task list` and `task stop` now have help descriptions.
21
+ - Return compact post-action screenshots in one CLI or MCP tool call, with optional local Tesseract OCR and original-desktop word coordinates. Preserve successful action results when capture fails.
22
+ - Add `computer mcp` image tool results and actual image inputs in the opt-in `computer run` model loop.
23
+ - Add Linux desktop tasks with private capability handles, reconnect, per-desktop operation serialization and owned-resource cleanup. New tasks default to isolated X displays; save `desktopMode` in `~/.agents/.computer/config.json` or override with `--desktop-mode`.
24
+ - Keep persistent VNC input responsive by consuming incremental framebuffer updates, and remove the two-second timer left behind after a closed VNC connection.
25
+ - macOS helper: coordinate clicks, drags and scrolls are gated on the app that owns the window under the point, not only on the named pid, and `screenshot --display` leaves out windows of apps outside the allow list. A coordinate paste restores the previous clipboard.
26
+ - Both helpers: element ids are never reused, so an id from an earlier `describe` returns `element_stale` instead of acting on a different element, and input from concurrent connections is serialized. The Windows helper drops an unauthenticated connection after 10 seconds or a 4 KiB first line.
27
+ - `stop --host` signals the recorded tunnel pid only while it is still that ssh tunnel, and `start --host` notices an ssh that exited during startup. Default screenshot captures are pruned to the newest 200 from the last 7 days, and VNC rejects rectangles outside the framebuffer.
28
+
29
+ ## 0.1.5
30
+
31
+ - Saved screenshots carry their actual output path, name and byte count in action history, so session viewers can open the capture. Failed writes and window listings do not claim a saved capture.
32
+
3
33
  ## 0.1.4
4
34
 
5
35
  - `computer apps` now surfaces menu-bar / status-item apps. The macOS helper listed only `.regular` (Dock) apps, so an accessory app such as AGI Menu was invisible in discovery and could not be targeted by `--bundle`/`--name` (pid resolution matches against the listing) even though the pid gate would drive it once its bundle id was in the allow list. Listing now includes `.regular` and `.accessory` and omits only background-only (`.prohibited`) processes; the hard floor, exact allow list and peer gates are unchanged. The macOS helper floor is 1.0.2, carrying this discovery fix.
package/README.md CHANGED
@@ -1,34 +1,295 @@
1
- # Computer CLI
1
+ # computer-cli
2
2
 
3
- Desktop automation through macOS Accessibility, Windows UI Automation and VNC.
3
+ [![macOS: arm64 and x64](https://img.shields.io/badge/macOS-arm64%20%7C%20x64-24292f?logo=apple&logoColor=white)](#platform-support)
4
+ [![Linux: arm64 and x64](https://img.shields.io/badge/Linux-arm64%20%7C%20x64-24292f?logo=linux&logoColor=white)](#platform-support)
5
+ [![Windows: x64](https://img.shields.io/badge/Windows-x64-0078D4?logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI%2BPHBhdGggZmlsbD0id2hpdGUiIGQ9Ik0wIDBoN3Y3SDB6bTkgMGg3djdIOXptLTkgOWg3djdIMHptOSAwaDd2N0g5eiIvPjwvc3ZnPg%3D%3D)](#platform-support)
6
+
7
+ `computer` drives desktop applications from the command line — macOS apps
8
+ through Accessibility, Windows apps through UI Automation over SSH, and any GUI
9
+ desktop over VNC. It reads the accessibility tree, clicks elements by id or
10
+ coordinate, types text, sends key chords, takes screenshots, and can run an
11
+ autonomous task with an embedded model loop. It talks to a local native helper
12
+ daemon on macOS, an SSH tunnel to the Windows driver, or the RFB protocol for
13
+ VNC targets.
14
+
15
+ ## Install
4
16
 
5
17
  ```sh
6
18
  npm install -g @phnx-labs/computer-cli
7
- computer --help
8
- computer apps
19
+ computer --version
20
+ ```
21
+
22
+ npm installs a small Node launcher plus one compiled binary for your platform
23
+ (macOS arm64/x64, Linux arm64/x64, or Windows x64). No TypeScript sources or
24
+ source maps ship in the package.
25
+
26
+ ## First run (macOS)
27
+
28
+ ```sh
29
+ computer setup # download and verify the signed native helper
30
+ computer start # activate the helper daemon via launchd
31
+ computer apps # list apps the daemon may drive
32
+ computer screenshot -o desktop.png # capture the display
33
+ computer describe # dump the accessibility tree of the front app
34
+ computer click --id <element> # click an element from the tree
35
+ computer type --id <field> "hello" # set a field value
36
+ computer key "cmd+shift+s" # send a key chord
37
+ computer stop # deactivate the daemon
9
38
  ```
10
39
 
11
- The executable is `computer`. Agents CLI consumes it through `agents computer`, adding fleet device discovery and agent-session history.
40
+ `setup` downloads the signed native helper to `/Applications/`. macOS requires
41
+ the user to grant Accessibility and Screen Recording access; setup cannot do
42
+ that automatically. `start` activates the helper daemon via launchd; `stop`
43
+ deactivates it. `computer status` reports installation, connection and trust
44
+ state.
45
+
46
+ ## Remote targets
47
+
48
+ `--host` selects a remote desktop using the address grammar shared by every
49
+ Phoenix CLI:
50
+
51
+ ```sh
52
+ # Windows: native UI Automation driver over SSH
53
+ computer screenshot --host ssh://user@winbox
54
+ computer click --host ssh://user@winbox --id <element>
55
+
56
+ # VNC: any GUI desktop (Linux, macOS, Windows) over RFB
57
+ computer screenshot --host vnc://host:5900
58
+ computer click --host vnc://host:5900 --x 512 --y 384
59
+ computer type-text --host vnc://host:5900 --text "hello"
60
+ computer key --host vnc://host:5900 --keys enter
61
+ ```
62
+
63
+ VNC provides screenshot and coordinate input (`click --x --y`, `type-text`,
64
+ `key`). Accessibility verbs (`describe`, `get-text`, `click --id`, `type --id`)
65
+ require a native driver and are not available over VNC.
66
+
67
+ `computer run` drives an app from a natural-language task using an embedded model
68
+ loop over the computer verbs.
12
69
 
13
- On first use, macOS downloads and verifies the signed native helper. macOS still requires the user to grant Accessibility and Screen Recording access. Setup cannot grant those permissions automatically. An existing helper is reused; its application identity and policy files are preserved. `computer start` also installs a missing helper. Use `computer setup` to explicitly replace it.
70
+ ## Agent tools and isolated Linux desktops
14
71
 
15
- Windows automation uses the native Windows driver in the interactive desktop session, reached through SSH. VNC provides screenshot and coordinate input for desktops without native Accessibility support. See [command reference](https://github.com/phnx-labs/computer-cli/blob/main/docs/computer.md) and [integration contract](https://github.com/phnx-labs/computer-cli/blob/main/docs/integration.md).
72
+ `computer mcp` serves tools over stdio to your existing agent. It does not make
73
+ model API calls. Input tools return a compact screenshot as an actual MCP image
74
+ alongside action metadata. `computer run` remains the opt-in embedded model loop;
75
+ it sends the latest screenshot as an image to its configured provider.
16
76
 
17
- Source lives in the private `phnx-labs/computer-cli` repository. npm ships a small Node launcher and an optional compiled package for your platform: macOS arm64/x64, Linux arm64/x64, or Windows x64. TypeScript, source maps and intermediate bundles are excluded. Before compilation, our application code is obfuscated offline with a pinned tool and fixed seed: identifiers, string lookups and selected control flow are transformed. Dependencies are bundled without that transformation to limit runtime overhead.
77
+ On Linux, each new MCP task gets its own desktop by default. Install `Xvfb`,
78
+ `x11vnc` (with Unix-socket support), `xauth`, and util-linux (`flock`, `setpriv`).
79
+ These displays start empty; launch an application with `launch --path`.
18
80
 
19
- Bun executables retain JavaScript alongside bytecode. The transformed code can still be extracted, analyzed and deobfuscated; this build raises inspection effort and does not provide secrecy or an authorization boundary. Bytecode alone is a startup optimization, not source protection. No source is sent to an obfuscation service, and the build adds no debugger interference or runtime network checks. Keep credentials out of binaries.
81
+ ```sh
82
+ computer mcp # create an isolated Linux task
83
+ computer task start # create a task for CLI use; prints its ID
84
+ computer launch --path /path/to/app --desktop-task TASK_ID
85
+ computer click --x 400 --y 300 --screenshot --desktop-task TASK_ID
86
+ computer mcp --desktop-task TASK_ID # reconnect another agent to that task
87
+ computer task list
88
+ computer task stop TASK_ID
89
+ ```
90
+
91
+ Save the default in `~/.agents/.computer/config.json`, or override it when creating
92
+ a task. An override never changes the saved setting or an existing task's mode.
93
+
94
+ ```sh
95
+ computer config desktopMode shared
96
+ computer task start --desktop-mode isolated
97
+ computer mcp --desktop-mode shared --host vnc://localhost:5901
98
+ ```
20
99
 
21
- Native helpers retain their separate, immutable `computer-mac/v*` and `computer-win/v*` release channels. An ordinary CLI release does not rebuild them. This JavaScript hardening does not transform the helpers; the Windows helper is a managed .NET single-file application and remains decompilable.
100
+ One private local service coordinates Linux tasks. Clients sharing a task hold
101
+ its desktop lock through target selection, input and capture. Separate isolated
102
+ desktops run independently; shared-mode tasks are serialized. Direct commands
103
+ without `--desktop-task` do not participate in that coordination. Disconnecting
104
+ one client does not stop another client's task. Idle tasks expire after 15 minutes.
22
105
 
23
- Development:
106
+ Isolation covers the X display, windows, focus and pointer, not the host user,
107
+ filesystem, application profiles or credentials. Applications that reuse a
108
+ global profile may require their own separate-profile launch configuration.
109
+ Private task handles prevent accidental cross-task access; they are not a
110
+ security boundary against hostile code running as the same OS user. No TCP port
111
+ is opened for an isolated desktop. Native macOS shared-mode MCP uses the existing
112
+ helper; managed task provisioning currently requires Linux.
113
+
114
+ ## Action observations and local OCR
24
115
 
25
116
  ```sh
26
- bash scripts/install.sh
27
- bash scripts/test.sh
28
- bash scripts/build.sh
29
- # Run dist/<platform>-<arch>/computer directly for development.
30
- bash scripts/release.sh # print the release plan
31
- bash scripts/release.sh --confirm # publish the reviewed commit
117
+ computer click --host vnc://localhost:5901 --x 400 --y 300 --screenshot result.png --max-dimension 1280 --json
118
+ computer screenshot --host vnc://localhost:5901 --ocr --out screen.png --json
32
119
  ```
33
120
 
34
- Run publishing through an existing npm credential bundle, for example `secrets exec npmjs.com -- bash scripts/release.sh --confirm`. Release requires a clean linked worktree at the reviewed remote main commit. It verifies packed file lists, checks immutable package integrity on retries, and checks a registry installation. Live desktop verification remains part of delivery.
121
+ `--ocr` uses local Tesseract and includes text, word bounds and confidence, without
122
+ a model call. For input commands it implies a post-action capture. OCR coordinates
123
+ refer to the original desktop; screenshot `scale` and `scale_y` map that desktop
124
+ into the resized image. Images preserve aspect ratio and default to a maximum
125
+ edge of 1280 pixels for action/MCP observations. A screenshot is an observation,
126
+ not a guarantee that an application's asynchronous work has finished.
127
+
128
+ If capture fails after a successful action, the action remains successful and
129
+ the capture error is returned separately. Retry observation, not the action.
130
+ Native compact capture requires a helper supporting `max_dimension`; an older
131
+ helper that ignores the requested bound reports `helper_update_required`.
132
+
133
+ ## How fast are action observations?
134
+
135
+ In a September 15, 2026 Linux arm64 benchmark, the installed **0.1.5** CLI was
136
+ compared with the **0.1.6 candidate** at `60ca877`. The candidate was not released
137
+ or installed at measurement time. Gedit displayed the real 729-line
138
+ `src/commands/actions.ts`; each sample sent Page Down and captured the result on
139
+ the same owned, isolated 1600 × 1000 desktop.
140
+
141
+ | Workflow | Median | Observed range | Samples |
142
+ | --- | ---: | ---: | ---: |
143
+ | 0.1.5: separate action and screenshot | 4,494 ms | 4,453–4,552 ms | 8 |
144
+ | Candidate: separate action and screenshot | 515 ms | 454–691 ms | 8 |
145
+ | Candidate: combined action and screenshot | 712 ms | 693–947 ms | 8 |
146
+ | Candidate: MCP image response | 533 ms | 496–578 ms | 8 |
147
+ | Candidate: MCP image + local OCR | 1,205 ms | 1,111–1,364 ms | 8 |
148
+
149
+ The candidate MCP workflow had **88.1% lower median latency (8.4× speedup)** than the released
150
+ separate-call workflow. Most of that improvement also exists in the candidate's
151
+ separate CLI calls, following the connection-close timer fix; it is not an
152
+ MCP-only speedup. Combined capture was **38% slower** than candidate separate
153
+ calls here, and MCP was not demonstrably faster than candidate separate calls.
154
+ OCR added **672 ms** to the MCP median.
155
+
156
+ Separate screenshots were full-size; combined/MCP observations used the default
157
+ 1280 × 800 image and a 150 ms post-input receive window. MCP PNGs were **21.3%
158
+ smaller** (93,406 versus 118,695 bytes), excluding protocol/base64 overhead.
159
+ These compare default workflows, not identical capture settings.
160
+
161
+ Each mode had one warmup; measured order rotated between rounds. Timings include
162
+ CLI process start/exit or a tool request on an already-connected MCP client.
163
+ Desktop/app startup, the initial 67 ms MCP connection and harness verification
164
+ are excluded. All 40 captures matched the expected source section using
165
+ case-insensitive OCR anchors; original case-sensitive misses were retained in
166
+ the raw results. The busy host and eight samples per mode make this a directional
167
+ comparison, not a production tail-latency estimate. No model calls, token savings,
168
+ concurrent-task throughput, macOS latency or Windows latency were measured.
169
+
170
+ See the [benchmark evidence on PR #14](https://github.com/phnx-labs/computer-cli/pull/14#issuecomment-5683895205)
171
+ for the recorded run and delivery limits. Source links require repository access.
172
+
173
+ ## Command reference
174
+
175
+ [docs/command-reference.html](docs/command-reference.html) lists every command
176
+ with its arguments and options, searchable, with the command tree in a sidebar.
177
+ [docs/command-index.md](docs/command-index.md) is the one-line-per-command index,
178
+ and [docs/command-index.json](docs/command-index.json) the structured form.
179
+ `bun scripts/gen-docs.ts` regenerates all three from the registered command
180
+ tree; `scripts/test.sh` fails when they are stale.
181
+
182
+ ## Using it through agents-cli
183
+
184
+ Agents CLI ships `agents computer` as a thin consumer of this binary. It
185
+ forwards every verb unchanged and adds fleet device discovery (`--device` becomes
186
+ a resolved `--host`), agent-session identity, and cross-machine session history.
187
+ The seam between the two is documented in
188
+ [docs/integration.md](docs/integration.md). Transports, addresses and verbs are
189
+ explained in [docs/computer.md](docs/computer.md).
190
+
191
+ ## Platform support
192
+
193
+ | Platform | CLI architectures | Desktop driver |
194
+ | --- | --- | --- |
195
+ | macOS | arm64, x64 | Native Accessibility helper (local) |
196
+ | Windows | x64 | UI Automation driver over SSH |
197
+ | Linux | arm64, x64 | VNC; isolated task desktops via Xvfb (no native Accessibility) |
198
+
199
+ These badges describe platform support, not feature parity. Managed isolated
200
+ task provisioning is Linux-only. The measurements above cover Linux/VNC, not
201
+ the native macOS or Windows paths.
202
+
203
+ ### Do macOS and Windows need native helpers?
204
+
205
+ Yes, for native element-level automation, and **both helpers already live in
206
+ this repository**, extracted from Agents CLI. Installing Agents CLI is not
207
+ required.
208
+
209
+ - **macOS:** the [Swift helper](native/computer-mac) supplies Accessibility,
210
+ ScreenCaptureKit capture and CoreGraphics input. Its signed app bundle keeps a
211
+ stable identity for the user's Accessibility and Screen Recording grants.
212
+ The CLI downloads/verifies it during setup and manages it through launchd.
213
+ - **Windows:** the [C#/.NET helper](native/computer-win) supplies UI Automation,
214
+ screen capture and `SendInput`. Setup provisions a scheduled task in the
215
+ logged-in interactive desktop session. The CLI reaches its loopback service
216
+ over an authenticated SSH tunnel; an SSH login alone is not a GUI session.
217
+ - **Linux/VNC:** no macOS or Windows helper is needed. A VNC server supplies
218
+ screenshot and coordinate input; isolated Linux tasks additionally need the
219
+ dependencies listed [above](#agent-tools-and-isolated-linux-desktops).
220
+
221
+ Native helpers retain their separate, immutable `computer-mac/v*` and
222
+ `computer-win/v*` release channels. An ordinary CLI release does not rebuild
223
+ them.
224
+
225
+ ## Troubleshooting
226
+
227
+ - **Accessibility not trusted (macOS).** `computer status` shows whether the
228
+ helper has Accessibility and Screen Recording access. Grant both in System
229
+ Settings > Privacy & Security. The helper binary path must match the grant;
230
+ `computer setup` after a helper upgrade may require re-granting.
231
+ - **VNC password.** Pass `--vnc-password <pw>` or set
232
+ `COMPUTER_HELPER_VNC_PASSWORD`. A VNC server with no authentication needs
233
+ neither.
234
+ - **`unsupported_over_vnc`.** Accessibility verbs (`describe`, `get-text`,
235
+ `click --id`, `type --id`) require a native driver. Over VNC, use coordinate
236
+ input (`click --x --y`, `type-text --text`, `key --keys`).
237
+ - **Windows SSH tunnel.** `computer start --host ssh://user@winbox` opens the
238
+ tunnel. The Windows driver runs in the interactive desktop session, so the SSH
239
+ user must have an active logon session.
240
+
241
+ ## Development
242
+
243
+ ```sh
244
+ bash scripts/install.sh # install dependencies
245
+ bash scripts/test.sh # typecheck + tests
246
+ bash scripts/build.sh # compile this platform's binary into dist/
247
+ ```
248
+
249
+ `scripts/build.sh` bundles and minifies `src/`, obfuscates the bundle offline
250
+ with a pinned tool and fixed seed, then compiles a bytecode binary per target.
251
+ Run `dist/<platform>-<arch>/computer` directly during development.
252
+
253
+ Release with the repository's own script:
254
+
255
+ ```sh
256
+ bash scripts/release.sh # print the release plan (dry run)
257
+ secrets exec npmjs.com -- bash scripts/release.sh --confirm
258
+ ```
259
+
260
+ Release requires a clean linked worktree at the reviewed `origin/main` commit. It
261
+ builds every platform, verifies packed file lists and immutable package
262
+ integrity, publishes the launcher and per-platform packages, and checks a
263
+ registry install. Live desktop verification remains part of delivery.
264
+
265
+ Minification, obfuscation and bytecode compilation raise the bar for casual
266
+ inspection; they are not a guarantee against reverse engineering. Keep
267
+ credentials out of the binary.
268
+
269
+ ## License
270
+
271
+ Functional Source License 1.1 with an Apache 2.0 future grant
272
+ ([FSL-1.1-Apache-2.0](LICENSE)).
273
+
274
+ ## Browse run history
275
+
276
+ `computer sessions` opens a searchable picker: arrows move, Enter shows run
277
+ details and saved screenshots, and Escape goes back. `--search <text>` also
278
+ filters scripted output, `--json` remains a row array, and `--no-interactive`
279
+ prints the table. `--since <when>` and `--until <when>` keep runs whose last
280
+ activity falls in that window and accept the same values as `sessions`: `2h`,
281
+ `7d`, `4w`, `1mo`, `1y` or an ISO date. An unreadable value exits 2. `--limit
282
+ <n>` caps the table (default 50) and, when given, `--json`; when rows are left
283
+ out, the count and the `--limit` that shows them go to stderr, so piped stdout
284
+ carries rows only. The picker header
285
+ lists the active filters. `--open latest` (or a screenshot filename) opens a recorded
286
+ capture. Live Linux desktops remain under `computer task start/list/stop`.
287
+
288
+ Computer owns 365-day run summaries under `.history/computer/history.db`.
289
+ Counts survive the 30-day action ledger; summaries retain the latest 120
290
+ actions and 120 screenshot locations per run. Typed text is never stored.
291
+ Existing ledger entries and legacy Agents summaries are adopted without
292
+ modifying their source. Legacy runs older than 365 days are skipped. The
293
+ automatic import runs once; if the legacy database cannot be read it is reported
294
+ once, and `computer sessions migrate [--from /path/to/sessions.db]` retries.
295
+ The command safely repeats the summary import. Sessions need not be installed.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phnx-labs/computer-cli",
3
- "version": "0.1.4",
3
+ "version": "0.1.7",
4
4
  "description": "Native desktop automation over Accessibility, UI Automation and VNC",
5
5
  "type": "module",
6
6
  "bin": {
@@ -25,14 +25,16 @@
25
25
  "test": "bash scripts/test.sh"
26
26
  },
27
27
  "optionalDependencies": {
28
- "@phnx-labs/computer-cli-darwin-arm64": "0.1.4",
29
- "@phnx-labs/computer-cli-darwin-x64": "0.1.4",
30
- "@phnx-labs/computer-cli-linux-arm64": "0.1.4",
31
- "@phnx-labs/computer-cli-linux-x64": "0.1.4",
32
- "@phnx-labs/computer-cli-win32-x64": "0.1.4"
28
+ "@phnx-labs/computer-cli-darwin-arm64": "0.1.7",
29
+ "@phnx-labs/computer-cli-darwin-x64": "0.1.7",
30
+ "@phnx-labs/computer-cli-linux-arm64": "0.1.7",
31
+ "@phnx-labs/computer-cli-linux-x64": "0.1.7",
32
+ "@phnx-labs/computer-cli-win32-x64": "0.1.7"
33
33
  },
34
34
  "devDependencies": {
35
- "@inquirer/prompts": "8.5.2",
35
+ "@modelcontextprotocol/sdk": "1.30.0",
36
+ "@phnx-labs/cli-docs": "0.1.1",
37
+ "@phnx-labs/tui": "file:vendor/phnx-labs-tui-0.1.0.tgz",
36
38
  "@types/bun": "1.3.10",
37
39
  "@types/node": "26.1.0",
38
40
  "bun": "1.4.1",