@supernala/cli 0.0.0-stage → 0.4.0

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/README.md CHANGED
@@ -1,3 +1,57 @@
1
- # Temporary Holding Version
1
+ # @supernala/cli
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ Connect your own computer to a Supernala workspace as a **Machine**, so your Agents can read files,
4
+ run commands and work with your coding agents (Claude Code, Codex, OpenCode, pi) there, and so you
5
+ can run coding agent Sessions from Supernala.
6
+
7
+ Requires Node.js 22.4 or later.
8
+
9
+ ## Connect
10
+
11
+ ```sh
12
+ supernala connect # pairs this computer; approve the code in Supernala
13
+ supernala daemon # keeps the connection open while you want Agents to reach it
14
+ ```
15
+
16
+ The Machine starts **Read-only** for all Agents. Change its Agent access and mode in Supernala under
17
+ Machines → Computers. Full access lets the chosen Agents run any command as you on this computer.
18
+
19
+ ## Commands
20
+
21
+ | Command | What it does |
22
+ | -------------------------------------- | -------------------------------------------------------------- |
23
+ | `supernala connect` | Pair this computer with a workspace |
24
+ | `supernala daemon` | Keep the connection open; runs commands and Sessions |
25
+ | `supernala daemon --background` | As `daemon`, but also runs unpaired or paused (the app's mode) |
26
+ | `supernala status [--json]` | Show the connection; `--json` asks the running daemon |
27
+ | `supernala stop` | Stop a running daemon |
28
+ | `supernala disconnect` | Forget this computer's credential |
29
+ | `supernala doctor` | Check the setup and installed coding agents |
30
+ | `supernala files ls / pull / push` | Move files between this computer and Workspace Files |
31
+ | `supernala send <paths…> [-m note]` | Hand files back to the Agent that started this command or turn |
32
+ | `supernala skills install [--agent …]` | Teach your coding agents to work with Supernala |
33
+
34
+ ## Security
35
+
36
+ - The Machine holds an Ed25519 key in `~/.supernala` (mode 0600); your Supernala sign-in never
37
+ leaves the browser.
38
+ - The connection is outbound only. The daemon's only listener is its local control socket,
39
+ `~/.supernala/control.sock` (a named pipe on Windows), which the Supernala menu bar app and
40
+ `supernala status --json` use. It is a Unix socket in the owner-only config directory with mode
41
+ 0600, so only your user can reach it; it never accepts network connections.
42
+ - Workspace Secrets are never sent to a Machine.
43
+ - Session transcripts are stored in your workspace and count toward its storage; delete them in
44
+ Machines, or turn on auto-delete. From version 0.2.0 they include the thinking a coding agent
45
+ shows (encrypted or redacted thinking is never sent), and imported sessions bring theirs along.
46
+ OpenCode turns run with `--thinking` so OpenCode reports it.
47
+
48
+ ## The menu bar app and the control socket
49
+
50
+ The daemon serves JSON lines on its control socket, typed in `@supernala/protocol/machine-control`:
51
+ `status`, `pair.start` (returns the code, then `paired`, `denied` or `expired`), `connect`,
52
+ `disconnect` (pauses without unpairing, kept across restarts), `unpair`, `sessions.list`,
53
+ `agents.list` and `events` (status changes). The Supernala menu bar app
54
+ (`apps/machine-desktop`) starts `supernala daemon --background` and talks only to this socket.
55
+ Only one daemon runs per config directory: a second one exits, and `supernala connect` hands a
56
+ fresh pairing to the daemon already running. `SUPERNALA_HOME` moves the config directory and the
57
+ socket.