The same deploy, whatever you drive it from
The CLI and the dashboard are thin wrappers over the same three calls: declare your files to the portal, PUT the blobs it says are missing straight to storage, then finalize. The browser makes exactly the calls your terminal does. No SDK to learn.
$ one9x pages release ./dist --site mysite --deployuploading 248 files …publishing release v8 …✓ Live in 1.4s→ https://mysite.one9x.app Three ways in, one deploy flow
Pick the surface that fits your workflow — they all make the same calls.
Dashboard
Drop a build folder in the browser. It hashes locally, shows you the diff, and uploads only what is missing — straight to storage, not through the portal.
CLI
A single static binary. Install it, point it at a directory, and you have a live URL. No config files required to start.
MCP for agents
Our MCP server wraps a whole deploy as one tool, so agents like Claude can ship a site without shell glue.
Underneath, a deploy is three HTTP calls: declare your files to the portal, PUT the blobs it says are missing straight to storage, then finalize. All three surfaces above make exactly those calls. We don't publish them as an API yet — the portal negotiates a contract version with its clients and can refuse ones outside the supported window, so anything written against today's shapes may need updating. Drive the CLI or the MCP server instead — those we keep working across releases.
Build locally, deploy in one line
There's no framework lock-in. Build with whatever you like — the output is just static files, and static files are all we serve.
-
Drop into any CI
One command in a pipeline step deploys on every push. A deploy token is the only thing you configure.
-
Release history & rollback
Every release keeps its own number and stays reachable. Point the site at any of them instantly, from the dashboard or the CLI.
-
Fast repeat deploys
Redeploys finish in seconds — only what changed goes up — so deploying on every push never slows your pipeline.
# ONE9X_TOKEN is a CI secret — no login step$ one9x pages release ./dist --site mysite --deploy120 files, 111 blobs to consideruploading 6 blob(s) …live → https://mysite.one9x.app (v9) $ one9x pages releases list --site mysitev9 staged 2m agov8 live 1h ago prodv7 1d ago Let an AI agent ship your site
Because a deploy is a short, fixed sequence, it maps cleanly to a single agent tool call. Our MCP server lets you hand an agent a built folder and it publishes a live URL — no terminal, no copy-pasting commands.
tool: one9x.deploy dir: ./dist site: mysite✓ Deployed → https://mysite.one9x.app Get a deploy token
Create an account and start deploying on the free tier — from the dashboard, the CLI or an agent.
Deploy a site free