Your machines. Your call.
wanctl gives an AI agent your machines across the public internet. Every command stops at the device and waits for you.
Nothing runs until you say yes.
The device decides locally. A rule you signed can let a command through; anything else waits for a person. Every answer is written down.
A rule covers a command, not a machine.
-
Signed once
python train.py --epochs 3 --resume --seed 7runs without asking -
Anything else
nvidia-smi --query-gpu=memory.used --format=csvasks you again
Your fleet, in one list.
Laptops, servers, phones and routers. One Go binary runs on all of them, over WebSocket or plain HTTP long-poll.
The relay never sees inside.
Controller and device each hold an Ed25519 key and run mutual TLS 1.3 inside the relayed pipe, pinned by fingerprint. The relay moves bytes it cannot open.
—
One line to install.
Run it on the machine you want to reach. Nothing lands on disk until a signed release manifest checks out.
curl -fsSL https://github.com/Daily-AC/wanctl/releases/latest/download/install.sh | sh
Straight from the GitHub release.
One relay in the middle. Ours, or yours.
Every device dials one relay, and it never sees inside your sessions either way. We run one. The whole thing is also a compose file.
Invite-only while it is one person's server rather than a service. No SLA, no support queue, no charge.
docker compose up
Relay, portal and Postgres in one compose file. Nothing about your fleet ever reaches a machine you do not own.
Read the self-hosting guide