1. Download
Grab the latest binary from GitHub Releases for your platform.
tubo keeps the path simple: install it, start one relay, publish a service, connect by name, and test it with a real curl.
Grab the latest binary from GitHub Releases for your platform.
Unpack it, make it executable, and move it somewhere like /usr/local/bin.
Run tubo version and make sure it starts cleanly.
Use the release asset that matches your system, then verify the binary.
# download the latest release asset from GitHub Releases chmod +x tubo sudo mv tubo /usr/local/bin/ tubo version
If you prefer to build locally, tubo is a single Go binary.
git clone https://github.com/origama/tubo.git cd tubo go build ./cmd/tubo ./tubo version
Pick one reachable machine and make it the relay for the swarm.
tubo relay -d
On each service or client host, point tubo at the relay and the shared swarm key.
tubo join \ --relay /ip4/<relay-ip>/tcp/4001/p2p/<relay-peer-id> \ --swarm-key ./swarm.key
Publish a local HTTP service into the swarm under a stable name.
tubo attach \ --target http://127.0.0.1:1234 \ --name myapi \ -d
Resolve the service by name and open a local listener for it.
tubo connect myapi --local 127.0.0.1:51234
Once connect is up, send a real request through the tunnel.
curl -X POST \ -H 'Content-Type: text/plain' \ -d 'hello tubo' \ 'http://127.0.0.1:51234/v1/dummy?from=website'
tubo is designed to be installed quickly, run on a few hosts, and verified with an actual curl.
relay → attach → connect → curl No big dashboard required. Just enough tooling to get traffic flowing.