Docs · Start here
Getting started.
Signup to first live URL takes about five minutes. You'll install the CLI, confirm your WorkOS identity in a browser, pick a workstation class, clone a repo, and publish a private preview.
1 · Install the CLI
Install globally via npm. The CLI is a typed Node.js client for the control-plane API, distributed under @doss-labs/remoco.
$ npm install -g @doss-labs/remoco
2 · Sign in
Run remoco login to use the official WorkOS device authorization flow. The CLI always prints a verification URL and user code, and opens the one-click confirmation page when a desktop browser is available. Remoco exchanges the confirmed WorkOS credential once for a user-bound pak_.
$ remoco login # open the printed AuthKit URL and confirm the displayed code # verifies your current Remoco Organization membership # stores only the Remoco PAK in ~/.remoco/credentials.json
3 · Clone a repo
Pass any repo you have access to. It's cloned into ~/code/<repo> on the workstation.
$ remoco clone doss-com/tetris-ui # cloned to /home/user/code/tetris-ui # ran pnpm install · 127 packages # detected vite config · suggested service name: tetris
4 · Start your dev server
remoco dev launches the main service in a named tmux session so it survives idle suspend and agent sessions. You can also start services via docker compose up directly if the repo uses docker.
$ remoco dev --service=web # tmux session: remoco-web # vite dev listening on :3333 # registered portless alias: main.web.wiley → :3333 # internal URL: http://main.web.wiley.localhost
5 · Publish your preview
Publishing a URL mints a DNS record + cloudflared ingress rule + (optional) Cloudflare Access app. Default is private, so only your SSO identity can reach it.
$ remoco expose main.web.wiley # live at https://main.web.wiley.remoco.dev # access: private · gated by WorkOS SSO
To share with someone outside your org, flip it public. DOSS Cloud snapshots the current state so the shared URL is immutable.
$ remoco expose main.web.wiley --access=public # snapshot v3 frozen · public URL now serves from snapshot # your private dev URL keeps hot-reloading
6 · Drive it from an agent
The whole happy path is also one command to an agent. Open Claude Code or Codex on your Mac and paste this prompt:
Set me up on a fresh remoco workstation for this repo. Install the remoco CLI, sign me in through WorkOS device authorization, clone the repo on the workstation, install deps, start the dev server, and expose it at main.web.<me>.remoco.dev as private. When it's live, hand me the URL.
The agent shells the commands, watches the output, and returns the URL.
Common next steps
- Command reference — every
remocosubcommand - Run parallel worktrees — spin branches side-by-side
- Public vs private URLs — the immutable snapshot model
- Write an agent skill — teach your harness to drive remoco