Skip to main content

net-mesh — unified command-line interface for the Net mesh

Project description

net-mesh-cli

net-mesh — the unified command-line interface for the NET mesh.

The non-interactive counterpart to net-deck: a one-shot tool for operator scripts, CI pipelines, daemon authoring, and ad-hoc cluster inspection. Same SDK underneath, same signed admin chain, no TUI.

net-mesh

Install

# pip
pip install net-mesh-cli

# uv
uv tool install net-mesh-cli

The wheel bundles the Rust net-mesh 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-mesh --help

Subcommand surface

Subcommand What it does
version SDK version + build metadata.
identity Generate / inspect / fingerprint operator identity files.
admin Signed admin-chain commits — drain, cordon, maintenance, drop-replicas, etc.
ice Break-glass ICE — simulate then commit force-drain / evict / restart / cutover.
snapshot One-shot MeshOsSnapshot reads (and --watch for streaming).
audit Read-only queries against the RedEX-committed audit ledger.
log tail Substrate log stream (--follow, --daemon, --level).
failures tail Substrate failure stream — same shape as log tail.
cap Capability advertisement + discovery.
peer Peer + NAT-traversal helpers.
daemon Per-daemon listing from the local snapshot.
netdb NetDB local KV adapter — Cortex-backed tasks + memories.
subnet Hierarchical subnet inspection (show, ls, tree).
gateway SubnetGateway stats + export-table operator surface.
channel ChannelConfigRegistry inspection (visibility, ls).
aggregator AggregatorDaemon inspection + remote query.
completion Emit a shell-completion script (bash / zsh / fish / powershell).
man Emit the troff(1) man page on stdout.

Global flags

Applied to every subcommand; environment-variable fallbacks in brackets:

  • --config <path> [NET_MESH_CONFIG] — profile file (default $XDG_CONFIG_HOME/net-mesh/config.toml).
  • --profile <name> [NET_MESH_PROFILE] — named profile within the config file.
  • --output (json|yaml|ndjson|table|text) — auto-detects table/text on TTY and json/ndjson off-TTY.
  • --quiet / -q — suppress stderr diagnostics.
  • --verbose / -v-v info, -vv debug, -vvv trace. NET_MESH_LOG= env-filter overrides.
  • --no-color [NO_COLOR] — disable ANSI in table / text output.
  • --timeout <dur> — global per-call timeout (e.g. 500ms, 1h30m). Default 30s.

Config + identity

The profile file is optional — every flag has a sensible default. When present, it lives at $XDG_CONFIG_HOME/net-mesh/config.toml (or the platform equivalent) and looks like:

[default]
identity        = "~/.config/net-mesh/identity.toml"
endpoint        = "in-process"
default_timeout_ms = 30000

[profiles.prod]
identity   = "~/.config/net-mesh/ops-identity.toml"
node_addr  = "10.0.0.4:7700"
node_pubkey = "abcd…"      # 64 hex
psk_hex     = "1234…"      # 64 hex

Operator identity files are authored by net-mesh identity generate — ed25519 seed + public key + SHA-256 fingerprint, the same format the deck loads from the maintenance node. Every signed admin / ice command picks the identity up from the active profile (or --identity).

Exit codes

Typed via ExitCodeKind. Scripts can match on the discriminator:

  • 0 — success
  • 2 — usage / parse error
  • 3 — config / identity load failure
  • 4 — substrate refused the action (auth, ICE threshold, etc.)
  • 5 — timeout
  • 6 — transport error

License

Apache-2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

net_mesh_cli-0.27.3.tar.gz (6.4 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

net_mesh_cli-0.27.3-py3-none-win_arm64.whl (2.5 MB view details)

Uploaded Python 3Windows ARM64

net_mesh_cli-0.27.3-py3-none-win_amd64.whl (2.7 MB view details)

Uploaded Python 3Windows x86-64

net_mesh_cli-0.27.3-py3-none-musllinux_1_2_x86_64.whl (3.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

net_mesh_cli-0.27.3-py3-none-musllinux_1_2_aarch64.whl (2.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

net_mesh_cli-0.27.3-py3-none-manylinux_2_28_x86_64.whl (2.9 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ x86-64

net_mesh_cli-0.27.3-py3-none-manylinux_2_28_aarch64.whl (2.7 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

net_mesh_cli-0.27.3-py3-none-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

net_mesh_cli-0.27.3-py3-none-macosx_10_12_x86_64.whl (2.8 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file net_mesh_cli-0.27.3.tar.gz.

File metadata

  • Download URL: net_mesh_cli-0.27.3.tar.gz
  • Upload date:
  • Size: 6.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for net_mesh_cli-0.27.3.tar.gz
Algorithm Hash digest
SHA256 31ed4b917f1ae60e7c521d769001627caedec38d39a6d133b453b9da4596c697
MD5 fcacae395116ab5d8fc9bab0e7f77eee
BLAKE2b-256 2adc842b0eedaab5b60562b13966f26518d4fc36a02455d3c27a45114015e41d

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-win_arm64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 183059c917719a6c5bce321ea8d26902db4a707fb8abf34972584f64b0ee37c6
MD5 6c8ef4ca110c583be44c8e9df76fa101
BLAKE2b-256 27b990107acde0f5cc4c7efec5fdca73e06af99eb1853a0fbb275b1ae74f000d

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 ad315456447c1fe75a358006a8ea05146f8f8df1c01ef4fcb1a8b8e718ebe4e5
MD5 f2fbf4ffc59886d5be585e26954993d5
BLAKE2b-256 670b8723b0ca22b801f5e3047156f5508a2df5a14f7740930ef83451532a2992

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 80238d9bb4d819a7221d4e43982fb87ab568088a98c660c9874a21be2b0d3db9
MD5 78e6df8884770fbb6038a30021b98a21
BLAKE2b-256 6dfdff907ce883d07fcdf6de898ae8b094f790af1a78265d48b85fe95e8d0e8e

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 09dd43c498eaddb8c8c85584680b098a8531ee302fcdc2fca03e8e3a2dc57a78
MD5 88a2606051099b96a242de402b2c0f81
BLAKE2b-256 3f8e1d5952c3c8a6564ad14d88b8d58ea0f5a231be8f7508e5a8fbbdd004cd82

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 44ab60fdf161214ea5f1dce3c54334f17e4cb4ff8ea16e79974580b9dcaa25ed
MD5 b712c1ef1959f7bdcac5370480bafecd
BLAKE2b-256 619f5d43957a1c582ae6a454e9b4d601a7066767429a4fb78705ff43ea555e66

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d7ab4f59fe5687428d08b38174d506bcd3f74f9a5a06ccf8781e4c9bb046775c
MD5 f2e7479cfe70e7aa873dab5dbaee2bde
BLAKE2b-256 20a840d79b512a4809b1a1059a605f3f1b4efbe17682e64d604131f6ad618456

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 99a176857aa41fba67acd1fb1a30854575d413ce41c77a31f9e98552f0635cc0
MD5 57e779deb252e61fc58420f36ca4caa4
BLAKE2b-256 825bc1d18cbe46ef9985d124b849114b2419f02bdd4dbf2ecc0548651b4ab5bb

See more details on using hashes here.

File details

Details for the file net_mesh_cli-0.27.3-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for net_mesh_cli-0.27.3-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bf1e3b1fa5894d04076095ce71e7494a25ab60c55e6bf51d5ab866aac9130982
MD5 c4d2f6ce1fdcf9dff7fe29765293fe64
BLAKE2b-256 cbad5bb308ea9f973cc7311d49532c4d6d1f8114245dd5149a7cb0c401d8e555

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page