@mmmbuto/nexuscrew 0.8.44 → 0.8.46
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/CHANGELOG.md +51 -0
- package/README.md +7 -1
- package/frontend/dist/assets/{index-CNI9gSN5.js → index-DMG-rioF.js} +3 -3
- package/frontend/dist/index.html +1 -1
- package/frontend/dist/version.json +1 -1
- package/lib/cells/routes.js +3 -2
- package/lib/cli/commands.js +5 -2
- package/lib/cli/pidfile.js +45 -2
- package/lib/fleet/builtin.js +21 -4
- package/lib/fleet/managed.js +89 -23
- package/lib/fleet/runtime.js +24 -11
- package/lib/mcp/cells.js +27 -4
- package/lib/mcp/server.js +16 -3
- package/lib/nodes/commands.js +17 -0
- package/lib/nodes/health.js +23 -2
- package/lib/nodes/reverse-pool.js +221 -0
- package/lib/nodes/reverse-rotation.js +78 -0
- package/lib/nodes/reverse-slot-listeners.js +80 -0
- package/lib/nodes/reverse-slot-proof.js +108 -0
- package/lib/nodes/store.js +169 -11
- package/lib/nodes/tunnel-supervisor.js +8 -1
- package/lib/nodes/tunnel.js +96 -11
- package/lib/proxy/federation.js +337 -9
- package/lib/server.js +247 -1
- package/lib/settings/pairing-coordinator.js +18 -0
- package/lib/settings/public-peering-routes.js +58 -4
- package/lib/settings/routes.js +31 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,57 @@ All notable changes to NexusCrew are tracked here.
|
|
|
4
4
|
|
|
5
5
|
## Unreleased
|
|
6
6
|
|
|
7
|
+
## 0.8.46 — 2026-07-31 — "Native Kimi"
|
|
8
|
+
|
|
9
|
+
- The Fleet gains a native Kimi Code CLI engine (`kimi.native`) that launches
|
|
10
|
+
the official `@moonshot-ai/kimi-code` binary directly in the cell's working
|
|
11
|
+
directory. Authentication and providers stay with the CLI (device-code
|
|
12
|
+
login, `config.toml`); NexusCrew never reads, stores or injects Kimi
|
|
13
|
+
credentials, and existing installations receive the engine through an
|
|
14
|
+
idempotent, collision-safe backfill.
|
|
15
|
+
- The engine defaults to interactive (standard) permissions. The unsafe
|
|
16
|
+
policy maps to `--yolo`, which auto-approves regular tool calls while the
|
|
17
|
+
agent may still ask questions; the fully autonomous `--auto` mode is
|
|
18
|
+
deliberately not exposed.
|
|
19
|
+
- Because the CLI documents no interactive prompt flag (`kimi -p` is
|
|
20
|
+
non-interactive and skips the TUI), the cell prompt is never placed on the
|
|
21
|
+
command line: it is delivered with bracketed paste once the session is
|
|
22
|
+
ready, including on supervised restarts.
|
|
23
|
+
- The Claude Code "Kimi Code" provider (`claude.kimi-code`) is unchanged and
|
|
24
|
+
remains the managed K3 path with the 1M-context profile. The PWA presents
|
|
25
|
+
the two paths under distinct names ("Kimi Code CLI" vs "Kimi Code") with an
|
|
26
|
+
explanatory notice, and login-delegated engines no longer show a misleading
|
|
27
|
+
credential KEY section.
|
|
28
|
+
|
|
29
|
+
## 0.8.45 — 2026-07-30 — "Resilient Directory"
|
|
30
|
+
|
|
31
|
+
- Fleet cell-directory reads no longer wait for external model catalog discovery.
|
|
32
|
+
A stalled optional engine binary therefore cannot make the MCP bridge present
|
|
33
|
+
a reachable local Fleet as unavailable.
|
|
34
|
+
- External model discovery has a bounded five-second budget and caches failures
|
|
35
|
+
as well as successful results, preventing repeated hung subprocess calls.
|
|
36
|
+
- The MCP cell directory now marks a local timeout explicitly, so a degraded
|
|
37
|
+
bridge can be distinguished from an unreachable remote node.
|
|
38
|
+
- Share activation now performs an authenticated, non-scanning preflight on
|
|
39
|
+
the hub-assigned reverse port. A listener owned by the same verified peer is
|
|
40
|
+
accepted; an unverified occupied port returns an actionable conflict without
|
|
41
|
+
restarting or publishing the private tunnel.
|
|
42
|
+
- Peer health reports a reverse listener that remains active while Share is
|
|
43
|
+
disabled, while `nexuscrew status` now states Share enabled or disabled for
|
|
44
|
+
inbound peers. These diagnostics never terminate a peer tunnel automatically.
|
|
45
|
+
- Shared peers can use an operator-preauthorized three-port reverse pool. The
|
|
46
|
+
product never writes `authorized_keys`; legacy or incompletely granted peers
|
|
47
|
+
remain private/usable and are diagnosed as not rotatable instead of guessing
|
|
48
|
+
another SSH port.
|
|
49
|
+
- A peer proposes a pool slot over its existing private channel and the hub
|
|
50
|
+
assigns a bounded lease and generation. Rotation runs only after all slots
|
|
51
|
+
have been independently verified, tries one candidate per ten-minute window,
|
|
52
|
+
and quarantines failures rather than killing unknown listeners.
|
|
53
|
+
- Slot ownership now uses a per-slot HMAC proof with a fresh challenge. The
|
|
54
|
+
hub never sends a peer bearer credential to a listener it is investigating;
|
|
55
|
+
a relayed proof from a different slot is rejected. Retired pool bases are
|
|
56
|
+
never reused automatically, protecting against stale `permitlisten` grants.
|
|
57
|
+
|
|
7
58
|
## 0.8.44 — 2026-07-28 — "Deliberate Switch"
|
|
8
59
|
|
|
9
60
|
- The mobile cell quick rail now separates selection from switching: choose a
|
package/README.md
CHANGED
|
@@ -66,7 +66,7 @@ install-script approval.
|
|
|
66
66
|
| **Live terminals** | Attach to real tmux sessions through a real PTY, WebSocket and xterm.js. |
|
|
67
67
|
| **Persistent workspaces** | Arrange sessions into decks with saved layouts, ordering, pins and per-cell drafts. |
|
|
68
68
|
| **Multi-node Fleet** | See and control authorized cells across Linux, macOS and Android nodes. |
|
|
69
|
-
| **AI-ready cells** | Launch Claude Code, Codex, Codex-VL, Pi, Agy or a trusted shell with explicit providers and policies. |
|
|
69
|
+
| **AI-ready cells** | Launch Claude Code, Codex, Codex-VL, Pi, Agy, Kimi Code CLI or a trusted shell with explicit providers and policies. |
|
|
70
70
|
| **Mobile-native control** | Scroll tmux history, use terminal keys, dictate prompts and move files from a phone. |
|
|
71
71
|
| **Operator alerts** | Receive visual, push, browser speech and opt-in node-native Audio Share TTS. |
|
|
72
72
|
|
|
@@ -101,6 +101,12 @@ Remote access is intentionally carried through SSH or a VPN you control:
|
|
|
101
101
|
ssh -L 41820:127.0.0.1:41820 user@your-host
|
|
102
102
|
```
|
|
103
103
|
|
|
104
|
+
Shared mobile peers can use a small, pre-authorized reverse-port pool for
|
|
105
|
+
recovery from a real reverse-forward collision. NexusCrew never edits SSH
|
|
106
|
+
policy: the hub operator keeps `authorized_keys` authoritative, while the
|
|
107
|
+
product verifies a configured pool before it can rotate within it. See
|
|
108
|
+
[Connect nodes](docs/NODES.md#rotatable-reverse-port-pools).
|
|
109
|
+
|
|
104
110
|
[Security model →](docs/SECURITY.md)
|
|
105
111
|
|
|
106
112
|
## Documentation
|