CLI Reference
Every command in tubo v0.13.0 (protocol 2.1). State lives under TUBO_HOME (default ~/.local/share/tubo); most commands take --json.
Exact sharing (minimal flow)
| Command | Purpose |
tubo attach <target> --name <n> [-d] | Define a Service (http://…, tcp://…, or a unix path) and its Pipe; runs the Pipe. -d detaches. |
tubo share <pipe-ref> | Provision the Exact Pipe Authority and mint a one-time exact invite (10 min TTL). Stdout is exactly the invite. |
tubo accept --token <invite> | Redeem the invite once; persist the durable accepted binding. No ingress is created. |
tubo connect (--token <invite>|--remote <pipe-id>) --local <host:port> [--name <n>] [-d] | Bootstrap or reuse a binding, then run a local ingress Pipe. Conflict checks run before the invite is consumed. |
tubo revoke invite <jti-or-token> | Fence an invite (works before redemption with the full token). |
tubo revoke pipe-access <pipe-ref|pip_…> | Fence all access; advances the authorization epoch. A fresh share re-authorizes. |
tubo revoke session <id> / tubo revoke pipe-publish <ref> | Fence a session or publish grant. |
Definitions
tubo service create <name> --target <url> | Define a Service without attaching. |
tubo pipe create <name> --ingress <tubo|local://host:port> --target <ref> | Define a Pipe targeting a Service or another Pipe. |
tubo rm <ref> [--force] · tubo rm --stale | Remove definitions; clean stale runs. |
Runtime
tubo start <pipe-ref> [-d] · tubo stop <ref> · tubo restart <pipe-ref> | Run/stop/restart Pipes. |
tubo ps · tubo top · tubo logs <ref> [--tail N] [-f] | Runs, live stats, logs. |
tubo inspect <resource> | Deep status: status, process, sessions, transport paths. |
tubo supervise install|status|uninstall | User supervisors (launchd/systemd) for runs across reboots. |
Queries
tubo get pipes · tubo get services · tubo get scopes · tubo get peers · tubo get overlays | List local state. Pipes and services are local-only; nothing is ambiently listed for exact shares. |
tubo watch pipes | Follow pipe status changes. |
tubo peers alias <peer-id> --name <n> | Name a known peer for display. |
Scope authority (optional collaboration domain)
tubo scope create <scope> · tubo scope invite <scope> --role member|viewer · tubo scope join --token <invite> · tubo scope use <scope> | Create an optional Scope, invite members, join, switch. |
tubo authority start <scope> | Run the Scope authority for a private collaborative deployment. |
Reachability
tubo relay --listen <multiaddr> --public-addr <addr> [--swarm-key <file>] | Transport-only Circuit Relay v2 (with optional AutoNAT). |
tubo join overlay --relay <multiaddr> --swarm-key <file> [--force-reachability private|public] | Configure overlay reachability. Omitted = embedded signed public bundle. |
tubo keygen swarm --out <file> | Generate a PSK swarm key. |
Misc
tubo config validate · tubo config print | Validate/inspect configuration. |
tubo doctor | Environment and health checks. |
tubo version | Print version, protocol, commit, build date. |
Environment
TUBO_HOME — state and secrets directory (default ~/.local/share/tubo).
- Exit codes: 0 success; nonzero with a
class: message error on stderr (e.g. authorization_denied, conflict, pipe_unreachable, persistence_failed).