| Crates.io | volli-manager |
| lib.rs | volli-manager |
| version | 0.1.12 |
| created_at | 2026-01-19 02:19:42.658496+00 |
| updated_at | 2026-01-19 02:19:42.658496+00 |
| description | Manager for volli |
| homepage | |
| repository | https://github.com/wouterken/volli |
| max_upload_size | |
| id | 2053559 |
| size | 474,965 |

volli is a tactical, lightweight tool that allows you to launch fast, distributed diagnostics and system checks from a central command.
volli is a fast, lightweight Rust CLI tool for performing coordinated diagnostics across a distributed fleet of workers. Workers connect to a central manager and can be triggered to execute diagnostic and system introspection commands concurrently.
The volli executable can be launched in manager and worker modes, and used to send queries to a manager using either manager or worker profiles.
Results are aggregated and presented via JSON, text tables, or summary output.
Single static binary: Lightweight, no dependencies.
Fast: Async by default using Tokio.
Self-hosted: No SaaS, private mesh or hub-and-spoke model.
Secure: Encrypted communication (TLS/QUIC).
Flexible Execution Modes:
The project is organized as a Cargo workspace containing several crates:
volli-core – shared message types and utilities.volli – command line interface binary.volli-manager – manager daemon.volli-worker – worker daemon.serve (alias: manager)workerserve.execFor CLI execution (exec):
--format json)--format json-pretty)--format summary)ping – Check if a host is reachable.trace – Show network path to a host (traceroute).dig – Resolve domain names.scan – Check open ports.curl / http – Fetch a URL and report status/latency.dns – Resolve domain names (dig).whois – Query domain/IP registration info.check – Test TCP/UDP port (nc).grpc – Interact with gRPC endpoints (grpcurl).flood – Basic HTTP load generator.speed – Bandwidth measurement.space – Disk usage (df).
health – CPU, Mem, Disk stats.
audit – Quick security scan:
info – OS, uptime, hostname, public IP.nodes – List registered nodes in the fleet.reach – Check node availability & latency. [CLI - worker mode] [CLI - manager mode]
| |
[Worker] <-----------> [Manager]
| |
[Worker] [Worker]
~/.config/volli (XDG) with fallback to ~/.volli.--config-root or VOLLI_CONFIG_DIR.volli serve --bind 127.0.0.1
volli worker 1.2.3.4:4242
volli exec ping 8.8.8.8
volli exec trace example.com --format json
volli exec scan 10.0.0.5 --ports 22,80,443 --format table
volli exec dig example.com AAAA --format summary
volli exec curl https://example.com --method GET --format json-pretty
# increase logging
volli -v serve --bind 127.0.0.1
volli -vv worker 1.2.3.4:4242
volli --quiet exec ping 8.8.8.8
Use -v to increase verbosity, -vv for trace-level output and --quiet for warnings only.
Generate a completion script for your shell:
volli completions bash > /usr/local/share/bash-completion/volli
When you start volli serve without specifying ports it binds to TCP 4242 and QUIC 4242 on 127.0.0.1.
Launching a second instance with the same ports will fail even if you bind to a different loopback address because the first process owns the port.
Use --tcp-port and --quic-port to assign unique ports when running more than one manager on the same host.
Example:
volli serve --bind 127.0.0.2 --tcp-port 4252 --quic-port 4253 --join <TOKEN>
This spec serves as the initial foundation for implementation. Each module (network, system, TUI, transport) can be built independently and iterated on.