Quickstart
L80 is a single binary that runs the Launch80 toolset on your machine and turns a benchmark into a shareable launch80 page. Publishing needs a token. Everything else is free. Version 1.0.0.
What L80 is
What. A command-line tool and full-screen console for BetterBench, rented Vast.ai GPUs, the Poisoned Weights Detector and a GPU telemetry dashboard.
Why. Every number on a launch80 page comes from the same pinned harness, private details never leave your machine, and community verifiers can reproduce a run and stamp it verified.
How. A Go binary with no third-party code. It pins each Python tool to a git commit and fetches it with uvx the first time you use it. Source: launch80/L80-CLI.
Free and gated
You need a launch80 token only to publish. Running benchmarks, renting GPUs, scanning weights and watching the dashboard are free. Vast.ai bills you directly for rented GPUs; L80 itself charges nothing.
| free, no token | needs a token |
|---|---|
| Running BetterBench, including --dry-run pages | Publishing a BetterBench run |
| L80 vast: rent, serve, benchmark, tear down | L80 publish |
| L80 pwdet scans and reports | L80 pwdet scan --publish |
| L80 dashboard, L80 tui, L80 tools | L80 verify request, status, queue, reproduce |
| L80 verify check, doctor, update | L80 verify approve, reject (verifier keys) |
Quickstart
About five minutes from nothing to a published page.
Install L80
$ curl -fsSL https://launch80.com/install.sh | shmacOS and Linux, amd64 and arm64. The script verifies a checksum and puts one binary in
~/.local/bin. Read it first if you like; run it again any time to update.Install uv
$ curl -LsSf https://astral.sh/uv/install.sh | shThe only prerequisite. L80 uses it to fetch the pinned Python tools.
Check your setup
$ L80 doctorShows the server it will talk to, whether a token is set, and how each tool resolves.
Run a dry benchmark
$ L80 betterbench --endpoint http://localhost:8080/v1 --model Qwen3-8B --quick --dry-runA 5-pass smoke run against any OpenAI-compatible endpoint. Nothing is published.
Publish a full run
# needs a token; see below$ L80 betterbench --endpoint http://localhost:8080/v1 --model Qwen3-8B --note engine="vLLM 0.9.3" --note hardware="1x RTX 4090"Without
--quickand--dry-run, L80 runs the full benchmark and prints the share URL on its last line. The engine and hardware notes are what a reviewer needs if you later ask for it to be verified.Explore the console
$ L80 tuiEvery capability in one full-screen view. The console covers its screens.
Get a publish token
A token comes with the Supporter role: $60 for a year, which goes toward server maintenance and also includes the Daily Digest. Checkout asks for your Discord username, for the role. The token is emailed to the address you pay with within a few minutes. Save it to disk:
$ mkdir -p ~/.config/L80 && umask 077 && printf '{"token":"%s"}' '<TOKEN>' > ~/.config/L80/credentials.jsonUse an environment variable instead of the file
L80_TOKEN takes precedence over the credentials file. Useful in CI or a container. It is still a secret: set it in the environment, not in a script you commit.
Hand it to your agent
Everything above except the token is a shell command, so a coding agent can do it. Pick the variant that matches what you have and paste it into Claude Code, Cursor, or whatever runs your terminal. The prompt tells the agent to stop and ask you if the token is missing.
Set up the L80 CLI so you can publish results to launch80, then publish a report. 1. Install it: curl -fsSL https://launch80.com/install.sh | sh If ~/.local/bin is not on PATH, add it, then confirm `L80 version` works. 2. Make sure uv is installed (`uv --version`); if not: curl -LsSf https://astral.sh/uv/install.sh | sh 3. If you are Claude Code, install the skill: L80 skills link --target claude-code Any other agent: run `L80 skills print` and follow that file instead. 4. Run `L80 auth status`. If it reports no token, STOP and tell me: I will save one to ~/.config/L80/credentials.json myself. Never ask me to paste a token into this chat, and never write one to a file for me. 5. Run `L80 doctor` and fix anything it flags. 6. Benchmark my server and publish the run: L80 betterbench --endpoint <URL> --model <MODEL> --note engine="<stack and version>" --note hardware="<GPUs>" Ask me for the endpoint URL, model name, engine and hardware if I have not given them. Use --quick only if I ask for a smoke test. 7. Give me the URL from the `published:` line and repeat every caveat and warning the tool printed, especially under-sampled percentiles and prefix-cache hits. Then run `L80 verify check <results.json>` and tell me whether the run could be verified by Launch80.
Where to next
- Free, no token commands run without a token; Needs a token commands need one.
- Questions, replacement tokens and template proposals go through Discord.