@mmmbuto/nexuscrew 0.8.13 → 0.8.14
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 +31 -17
- package/frontend/dist/assets/index-BR2Qfqi2.js +91 -0
- package/frontend/dist/assets/index-CopPQTMk.css +32 -0
- package/frontend/dist/index.html +2 -2
- package/frontend/dist/version.json +1 -1
- package/lib/config.js +10 -0
- package/lib/fleet/builtin.js +97 -16
- package/lib/fleet/cell-exec.js +81 -0
- package/lib/fleet/credentials.js +135 -0
- package/lib/fleet/env-key.js +12 -0
- package/lib/fleet/launch-broker.js +136 -0
- package/lib/fleet/managed.js +74 -11
- package/lib/fleet/routes.js +10 -0
- package/lib/proxy/federation.js +5 -4
- package/lib/server.js +16 -1
- package/lib/tmux/list.js +21 -3
- package/package.json +1 -1
- package/frontend/dist/assets/index-4rNd0SwZ.css +0 -32
- package/frontend/dist/assets/index-DuIR61l-.js +0 -91
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.14 "Private Launch")
|
|
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
|
|
@@ -25,13 +25,15 @@ panes, windows. tmux does the work; the browser is just a faithful client.
|
|
|
25
25
|
live terminals side by side, draggable dividers, per-tile composer, layout remembered.
|
|
26
26
|
Tiles attach with `ignore-size` so they never resize your real terminals.
|
|
27
27
|
- **Ordered Fleet roster**: desktop and mobile share the same per-location model. Local and
|
|
28
|
-
every Hydra route are independently collapsible and filterable by all, pinned, active,
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
every Hydra route are independently collapsible and filterable by all, pinned, active, off,
|
|
29
|
+
or technical. Technical tmux sessions stay out of the normal roster until explicitly shown,
|
|
30
|
+
and every location count reflects the rows actually displayed. Route-qualified pins keep
|
|
31
|
+
priority, while cells can be reordered from the dedicated handle with Pointer Events on
|
|
32
|
+
mouse, touch, or pen, or with keyboard move controls. Reorder highlights the destination,
|
|
33
|
+
scrolls at list edges, commits only on release and can be cancelled without changing the
|
|
34
|
+
saved order. The owner-qualified order survives reloads and is shared by compact and expanded
|
|
35
|
+
views. Desktop chrome and the mobile header stay fixed while their lists scroll, and the
|
|
36
|
+
compact version/endpoint/language footer remains readable on narrow screens.
|
|
35
37
|
- **Attached decks by default**: named workspaces switch as tabs inside the same PWA without
|
|
36
38
|
reloading terminals or losing a pending layout save. Use `↗` only when you want to detach a
|
|
37
39
|
deck into another browser window or monitor. Every Local or remote owner group ends with its
|
|
@@ -59,6 +61,11 @@ panes, windows. tmux does the work; the browser is just a faithful client.
|
|
|
59
61
|
engine mapping and system prompts, then select exactly what to restore. Archives contain
|
|
60
62
|
credential-variable names but never their values, provider keys or runtime session state;
|
|
61
63
|
conflicts and active cells that need a restart are reported explicitly.
|
|
64
|
+
- **Private provider credentials**: each node resolves a required key from its runtime
|
|
65
|
+
environment, compatible user-owned provider files, or an optional local write-only store.
|
|
66
|
+
The PWA can set, replace, or forget a missing key on that exact node without displaying it.
|
|
67
|
+
Values never enter Fleet definitions, backups, API responses, tmux state, process arguments,
|
|
68
|
+
temporary files, or logs.
|
|
62
69
|
- **Rich cards**: last activity, current command, a sanitized one-line preview per session.
|
|
63
70
|
- **Fleet control**: a built-in schema-driven fleet manager handles cells, engines, model
|
|
64
71
|
selection, and boot persistence; an existing external `fleet` CLI can take ownership through
|
|
@@ -120,13 +127,19 @@ The concise provider catalog is scoped per CLI:
|
|
|
120
127
|
GitHub Copilot, OpenRouter, local Ollama, DeepSeek, Z.AI, and a custom provider.
|
|
121
128
|
|
|
122
129
|
Provider credentials are resolved from the selected CLI's native login or from an environment
|
|
123
|
-
variable named in the PWA
|
|
124
|
-
|
|
125
|
-
`~/.config/ai-shell/providers.zsh`,
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
+
variable named in the PWA. A named variable is read first from the service environment, then
|
|
131
|
+
from the optional node-local NexusCrew store, then—when present—from the user-owned
|
|
132
|
+
`~/.config/ai-shell/providers.zsh`, `~/.config/keys/ai.env`, or
|
|
133
|
+
`~/.config/secure/.env`, parsed strictly as assignment data and never sourced or executed.
|
|
134
|
+
The PWA shows only whether the requested name is configured and its source category; a missing
|
|
135
|
+
value can be saved locally in `~/.nexuscrew/credentials.json` under a user-owned `0700`
|
|
136
|
+
directory and `0600` file, or removed again. The store is write-only through the API and is
|
|
137
|
+
never included in config, services, Fleet backups, federation payloads, logs, or responses.
|
|
138
|
+
At launch, secret-bearing environment data crosses a private one-shot Unix socket and reaches
|
|
139
|
+
the CLI by direct process spawn; it never enters tmux environment state, argv, or a temporary
|
|
140
|
+
file. Legacy Z.AI A/P engines remain launch-compatible for existing fleets but are not provider
|
|
141
|
+
choices for new engines. Model discovery is used where the CLI/provider documents it, with a
|
|
142
|
+
manual model field as the portable fallback.
|
|
130
143
|
|
|
131
144
|
Managed engines expose a permission selector both in their definition and in the cell launch
|
|
132
145
|
sheet. New Claude engines (native, Z.AI, Ollama, or custom) default to **Bypass permissions**
|
|
@@ -444,8 +457,9 @@ node bin/nexuscrew.js serve
|
|
|
444
457
|
|
|
445
458
|
## Status
|
|
446
459
|
|
|
447
|
-
The current release candidate is **v0.8.
|
|
448
|
-
|
|
460
|
+
The current release candidate is **v0.8.14**. npm **`latest`** is promoted from the verified
|
|
461
|
+
artifact first; the GitHub tag and release follow the operator field test from the same source
|
|
462
|
+
candidate.
|
|
449
463
|
|
|
450
464
|
## License
|
|
451
465
|
|