net-deck — operator cyberdeck (terminal UI) for the Net mesh
Project description
net-deck
The operator cyberdeck — a terminal UI for the NET mesh.
Live, streaming, low-latency visibility into MeshOS, MeshDB, RedEX, and Dataforts, with signed admin actions on top. Built with ratatui + crossterm. Matrix palette, neon-green on pitch black.
Install
# pip
pip install net-deck
# uv
uv tool install net-deck
The wheel bundles the Rust net-deck binary directly (built with maturin's bindings = "bin" mode) — pip install / uv tool install puts it on your $PATH with no compilation step and no Python shim layer.
Wheels are published for linux (glibc + musl, x86_64 + aarch64), macOS (x86_64 + aarch64), and Windows (x86_64 + aarch64). A source distribution is also published for any platform pip can't find a wheel for — that path needs a Rust toolchain.
Run
net-deck
Tabs
| Tab | What it shows |
|---|---|
NET.MAP |
Live mesh topology — nodes, RTT, health, avoid-lists, maintenance, replica heat. |
NODES |
Per-node inventory: CPU / mem / disk, saturation trend, capability set, versions. |
DAEMONS |
Per-daemon supervision — health, saturation, restarts, crash-loops, log tail. |
DATAFORTS |
Replica & placement: desired vs actual, migrations, pulls, eviction, 5-axis score. |
BLOBS |
Object inventory across every wired adapter — heat, ancestry, shard layout. |
MIGRATIONS |
In-flight + recent migrations with byte progress and stall detection. |
REPLICAS |
Replica density by artifact, drift, placement stability. |
GROUPS |
Replica / fork / standby groupings. |
SUBNETS |
Subnet membership and gateway routing. |
GATEWAYS |
Gateway daemons — bridges into the mesh from outside transports. |
AGGREGATORS |
Aggregator-daemon attach / scale state, remote-attach RPC tail. |
NRPC |
Live nRPC call tail — request / response / failure stream across the cluster. |
LOGS |
High-speed log matrix — node → daemon → line, with filter + follow. |
AUDIT |
RedEX-committed operator audit ledger. |
FAILURES |
Recent failures across daemons, migrations, blob pulls. |
Admin surface — signed ops
Every admin action propagates as a signed event on the admin chain via RedEX:
- drain / cordon / uncordon node
- enter / exit maintenance
- drop replicas, invalidate placement
- restart daemons, clear avoid lists
- ICE: force-drain, force-evict, force-restart, force-cutover, freeze / thaw
Before an ICE action commits, Deck runs a blast-radius simulation — "This action affects 4 nodes, 12 replicas, and 2 daemons. Continue?" — then signs with the operator key loaded from the maintenance node. Multi-operator signing and lockout timers are available for the high-authority break-glass paths.
Bookmarks (multi-cluster)
Saved cluster contexts live at $XDG_CONFIG_HOME/deck/bookmarks.toml (or the platform equivalent — see dirs). First-run with no config dir yields an empty store; a malformed file is surfaced via stderr.
License
Apache-2.0.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file net_deck-0.27.1.tar.gz.
File metadata
- Download URL: net_deck-0.27.1.tar.gz
- Upload date:
- Size: 6.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b0b81ebbb90e7508424b36aabc58deac486e66d7d131801ec8ea429c604d50c3
|
|
| MD5 |
d976c7174cb15287c64df12469c05291
|
|
| BLAKE2b-256 |
39cfda343567f368976fbab18cef49d197723cf7493c16c49545a32513f5600b
|
File details
Details for the file net_deck-0.27.1-py3-none-win_arm64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-win_arm64.whl
- Upload date:
- Size: 981.2 kB
- Tags: Python 3, Windows ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ca11421cc54adde27f39086ff5fc3a48bf307a67b94cd99a6b82ecc19fcc64c
|
|
| MD5 |
00b34f559a9a8663364c927767906d4b
|
|
| BLAKE2b-256 |
37148ae39c9472f7625181d6a8bca0a3ebbc7c6544ddfa7b4fc19585b050e383
|
File details
Details for the file net_deck-0.27.1-py3-none-win_amd64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-win_amd64.whl
- Upload date:
- Size: 1.0 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a86c33ef9ffc042d71ad6361bd2dc1aa95559151d024aeaec80b44247bfcef3
|
|
| MD5 |
e224b37719e1c38a6cc3942ded57a4bd
|
|
| BLAKE2b-256 |
582bd6c21be3cde4504a8e83268eccf9a7cf771881a25461002231b19374d837
|
File details
Details for the file net_deck-0.27.1-py3-none-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: Python 3, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2b502f54bf9d01598377671bcd46717dfb79ae71bebbc7aa1c6ea046f0a0cc51
|
|
| MD5 |
c39e416d9874fd8a6582f0d268cdb583
|
|
| BLAKE2b-256 |
c9b5fcd376567074211fac8e28061eac91c1066c169800d84fad3eca62a97ce3
|
File details
Details for the file net_deck-0.27.1-py3-none-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a74c0c5b6b208532daec399d6f3acb7296483e920e1c08879a8813b410aeb560
|
|
| MD5 |
ec7ccb5781c78469e07f5f99b818e7d8
|
|
| BLAKE2b-256 |
8561d9fc6aaa4a612709b704b36739cbd4094080f32fdf9c38dd767c13e9c607
|
File details
Details for the file net_deck-0.27.1-py3-none-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17c2b6a3c6eee6b6fe7c5d770b3f4fcfb417462c8b2b671519bc3412872c9f2c
|
|
| MD5 |
2751de24452835a4ad40fa1325665929
|
|
| BLAKE2b-256 |
c9bf5a65e50b7e79b39dce340175e29fcc92f1bd8d6fe7a19bf4a606bc01507c
|
File details
Details for the file net_deck-0.27.1-py3-none-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 1.2 MB
- Tags: Python 3, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7984ceaa18c01db194e08b8509a3b45c2460aef1e8d1ff562e050fa519cba59
|
|
| MD5 |
5d34791cf412b6533543f1e2a9916c22
|
|
| BLAKE2b-256 |
9dfa726476d1928de4befde2ac650ecac411e0306ba65ffb5ee2e7c7bec4ac31
|
File details
Details for the file net_deck-0.27.1-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.1 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d6a7f162574003abdbbd7daf40e7c88f703bd8b8d6f0194036fd2971daa6b25
|
|
| MD5 |
9a6292fbd2126162fbe95f45a0c681f2
|
|
| BLAKE2b-256 |
796ba023ddc0c9b3c123ab599c81982dd0d27382a0de085fe8d0786d649fd07e
|
File details
Details for the file net_deck-0.27.1-py3-none-macosx_10_12_x86_64.whl.
File metadata
- Download URL: net_deck-0.27.1-py3-none-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.2 MB
- Tags: Python 3, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e16f08529b262a717cd49f0ef7b09e9f74c67308e43417373df75a50e0152d20
|
|
| MD5 |
15fe6bc0462d2a122fc9ab4a0ab4ffdf
|
|
| BLAKE2b-256 |
351435b4035a6692a98026dcfd63f15e9c78d65759ea49e699a20d428b40d79c
|