@mmmbuto/nexuscrew 0.8.5 → 0.8.6
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 +33 -16
- package/frontend/dist/assets/index-CEFh0hI4.js +90 -0
- package/frontend/dist/assets/{index-U_e8auCM.css → index-kX5IUxt4.css} +1 -1
- package/frontend/dist/index.html +2 -2
- package/frontend/dist/version.json +1 -1
- package/lib/cli/fleet-service.js +8 -3
- package/lib/fleet/builtin.js +139 -22
- package/lib/fleet/definitions.js +20 -0
- package/lib/fleet/index.js +42 -1
- package/lib/fleet/managed.js +15 -2
- package/lib/fleet/provider.js +12 -11
- package/lib/fleet/routes.js +11 -2
- package/lib/nodes/peering.js +59 -7
- package/lib/settings/routes.js +22 -2
- package/package.json +1 -1
- package/frontend/dist/assets/index-UAVxf6SE.js +0 -90
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ panes, windows. tmux does the work; the browser is just a faithful client.
|
|
|
16
16
|
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
-
## What it is (v0.8.
|
|
19
|
+
## What it is (v0.8.6 "Connected Fleet")
|
|
20
20
|
|
|
21
21
|
- Runs a small server on the host where your tmux sessions live.
|
|
22
22
|
- Each attach spawns a real PTY running `tmux attach` and bridges its bytes over a WebSocket
|
|
@@ -34,8 +34,11 @@ panes, windows. tmux does the work; the browser is just a faithful client.
|
|
|
34
34
|
- **Settings and wizard**: manage roles, nodes, token rotation, and service regeneration
|
|
35
35
|
from the UI; a skippable first-run wizard guides initial setup.
|
|
36
36
|
- **Cell lifecycle from the UI**: the primary `+` creates a managed Fleet cell at Local or
|
|
37
|
-
any reachable node.
|
|
38
|
-
|
|
37
|
+
any reachable node. Power opens one shared launch sheet where engine, model, permission
|
|
38
|
+
policy and boot can be reviewed before every start; deletion lives in Settings → Fleet.
|
|
39
|
+
- **Legacy session adoption**: Settings → Fleet lists managed and unmanaged tmux sessions on
|
|
40
|
+
every route. A live unmanaged session can be explicitly imported as a managed cell without
|
|
41
|
+
inventing its engine, provider or model.
|
|
39
42
|
- **Rich cards**: last activity, current command, a sanitized one-line preview per session.
|
|
40
43
|
- **Fleet control**: a built-in schema-driven fleet manager handles cells, engines, model
|
|
41
44
|
selection, and boot persistence; an existing external `fleet` CLI can take ownership through
|
|
@@ -67,9 +70,10 @@ over a real PTY. On the right, a `codex-vl` session running inside the browser c
|
|
|
67
70
|
|
|
68
71
|
A clean install includes the built-in, schema-driven fleet manager. Its safe defaults contain
|
|
69
72
|
four CLI adapters — **Claude Code**, **Codex**, **Codex-VL**, and **Pi** — and no cells,
|
|
70
|
-
prompts, API keys, or machine-specific paths.
|
|
71
|
-
|
|
72
|
-
|
|
73
|
+
prompts, API keys, or machine-specific paths. Provider, credential-variable name and reusable
|
|
74
|
+
engine definitions live in Settings → Fleet. When a cell is off, its shared launch sheet lets
|
|
75
|
+
you choose the engine, model, permission policy and boot state before starting it; the last
|
|
76
|
+
model and permission choice is remembered separately for each cell and engine.
|
|
73
77
|
|
|
74
78
|
The concise provider catalog is scoped per CLI:
|
|
75
79
|
|
|
@@ -86,11 +90,13 @@ remain launch-compatible for existing fleets but are not provider choices for ne
|
|
|
86
90
|
Model discovery is used where the CLI/provider documents it, with a manual model field as the
|
|
87
91
|
portable fallback.
|
|
88
92
|
|
|
89
|
-
Managed engines expose a permission selector
|
|
90
|
-
custom) default to **Bypass permissions**
|
|
91
|
-
`--dangerously-skip-permissions`; choose **Standard permissions** to disable
|
|
92
|
-
Codex-VL engines default to Standard and offer an explicit opt-in for
|
|
93
|
-
`--dangerously-bypass-approvals-and-sandbox`. Pi
|
|
93
|
+
Managed engines expose a permission selector both in their definition and in the cell launch
|
|
94
|
+
sheet. New Claude engines (native, Z.AI, Ollama, or custom) default to **Bypass permissions**
|
|
95
|
+
and launch with `--dangerously-skip-permissions`; choose **Standard permissions** to disable
|
|
96
|
+
it. New Codex and Codex-VL engines default to Standard and offer an explicit opt-in for
|
|
97
|
+
`--dangerously-bypass-approvals-and-sandbox`. Pi is always launched with its native Standard
|
|
98
|
+
permission behavior. Claude-compatible managed models also receive matching context and
|
|
99
|
+
auto-compaction window variables, including one-million-token profiles where declared.
|
|
94
100
|
|
|
95
101
|
Custom argv-based engines remain supported. Their command, environment, cwd, and prompt are
|
|
96
102
|
validated against a strict trust boundary and launched without a shell.
|
|
@@ -116,7 +122,11 @@ the NexusCrew power control starts or stops the cell without changing that confi
|
|
|
116
122
|
and accepts `up <Cell> [--engine E] [--boot]`, `down <Cell> [--boot]`, `engine <Cell> <E>`,
|
|
117
123
|
`boot|noboot <Cell>`. The binary is trust-checked (regular file, not a symlink, not
|
|
118
124
|
world-writable) and the schema is validated strictly — anything else and the feature stays
|
|
119
|
-
off.
|
|
125
|
+
off. Automatic discovery checks the configured path, Termux's `$PREFIX/bin/fleet`, then
|
|
126
|
+
`~/.local/bin/fleet`; startup-service ownership uses the same resolver so built-in and external
|
|
127
|
+
boot managers cannot both take ownership. An explicitly pinned external binary fails closed
|
|
128
|
+
instead of silently switching to another executable. Set `NEXUSCREW_FLEET=0` to disable Fleet
|
|
129
|
+
entirely.
|
|
120
130
|
|
|
121
131
|
## Requirements
|
|
122
132
|
|
|
@@ -148,9 +158,16 @@ token travels in the URL **fragment** (`#token=…`), so it never reaches the se
|
|
|
148
158
|
## Federated Hydra nodes (configured from the PWA)
|
|
149
159
|
|
|
150
160
|
Every installation is always the local node and can join other NexusCrew nodes. Open
|
|
151
|
-
**Settings → Nodes
|
|
152
|
-
|
|
153
|
-
|
|
161
|
+
**Settings → Nodes** and create a ten-minute pairing link/QR. The creator supplies the
|
|
162
|
+
OpenSSH target or Host alias through which that installation is reachable; the v2 link carries
|
|
163
|
+
that routing information, its display label, route slug and optional SSH port. Paste or scan the
|
|
164
|
+
single link on the other device, review the pre-filled fields, then choose **Test and connect**.
|
|
165
|
+
Older v1 links remain accepted and simply require the missing routing fields to be entered.
|
|
166
|
+
|
|
167
|
+
The link never contains an SSH key, identity file, API key or PWA token. Its only credential is
|
|
168
|
+
the random, one-time pairing invite; SSH routing fields are non-secret configuration. A
|
|
169
|
+
successful pairing creates a reciprocal loopback-only link and both sides exchange a redacted
|
|
170
|
+
topology automatically.
|
|
154
171
|
|
|
155
172
|
NexusCrew does not create SSH keys or edit `authorized_keys`. OpenSSH remains authoritative for
|
|
156
173
|
identity files, agents, host keys, ports, ProxyJump and forwarding policy. NexusCrew uses
|
|
@@ -306,7 +323,7 @@ node bin/nexuscrew.js serve
|
|
|
306
323
|
|
|
307
324
|
## Status
|
|
308
325
|
|
|
309
|
-
The current stable release is **v0.8.
|
|
326
|
+
The current stable release is **v0.8.6**, published on npm under the **`latest`** dist-tag.
|
|
310
327
|
|
|
311
328
|
## License
|
|
312
329
|
|