CLI
The CLI is intentionally compact, but the docs need to explain both the commands available today and the product-facing commands that are planned next. This guide does that without pretending unfinished commands already ship.
Reference
The table below distinguishes what is available in the repository today from commands that are documented as the intended product surface.
| Command | Status | Purpose |
|---|---|---|
| `binboi login --token <token>` | Available | Validate an access token and save it to local config. |
| `binboi logout` | Planned | Will remove locally stored auth state. For now, edit or remove `~/.binboi/config.json` manually. |
| `binboi whoami` | Available | Verify the active token and print the authenticated identity. |
| `binboi http 3000` | Alias planned | Product-facing shorthand for an HTTP tunnel. Today use `binboi start 3000 my-app`. |
| `binboi tcp 5432` | Planned | Reserved for raw TCP exposure once that surface is production-ready. |
| `binboi tunnels` | Planned | Will list active or reserved tunnels from the CLI. |
| `binboi stop` | Planned | Will stop a running tunnel cleanly from the CLI. |
| `binboi logs` | Planned | Will tail structured logs or request visibility streams. |
| `binboi regions` | Planned | Will show the available regions and nodes when multi-region exists. |
| `binboi config` | Planned | Will inspect and modify local CLI config in a friendlier way. |
| `binboi version` | Available | Print the CLI version for support and packaging verification. |
Authentication
The auth path is the most important CLI surface because every tunnel depends on it.
bash
binboi login --token <dashboard-token>
binboi whoami
binboi version`binboi login` validates the token against the backend and writes it to local config.
`binboi whoami` is the fastest way to prove that your saved token still works before debugging a failing tunnel.
`binboi version` is intentionally simple because package managers and operator runbooks depend on predictable output.
Traffic
Today the working HTTP tunnel entrypoint is `binboi start`, even though the product docs also describe the future `binboi http` shape.
bash
binboi start 3000 my-app
# Intended future alias
binboi http 3000Roadmap
Some commands matter enough to document now because they describe the intended product experience.
`binboi logout` should clear local credentials safely.
`binboi tunnels` should list local and remote tunnel state without needing the dashboard.
`binboi stop` should terminate a running tunnel in a clean, operator-friendly way.
`binboi logs` should bridge the gap between raw relay events and request-specific visibility.
`binboi regions` should become meaningful once the product grows beyond a single primary node.
`binboi config` should provide a clearer interface for inspecting file-based and environment-based config.
Workflow
Most developers do not need the whole command surface every day. They need a reliable sequence that tells them whether the environment is healthy.
bash
binboi whoami
binboi start 3000 local-dashboard
curl https://local-dashboard.binboi.link/health