Log in / Sign up
← Home

Getting Started

Quick Start

The fastest way to get a dev server running for your repo. Claude installs the dependencies and starts your dev server for you, then snapshots the result so future launches are instant. You can run auto setup from the dashboard. Select what CPU/memory you want, which repo you want to use, then "Launch". It will ask you to login, then start installing everything.

You'll get a link to the Claude session so you can follow along, tell it to fix anything broken, etc. You can also take over yourself in the web terminal or via ssh. Any HTTP ports your app binds are served over HTTPS at https://<server-name>.d.typhons.dev:<port>.

You can also run auto setup from the CLI against any local repo:

npm install -g @typhons/cli
cd your-repo
typhons auto-build

Once the dev server's setup, start building! Ask Claude to implement new features as usual. You can test them via the public URL.

You can access your chats and web terminals from mobile too, so you can keep developing on the go.

Servers will automatically pause when inactive, so you only pay when they're active. Paused machines wake automatically the moment you send a message or access their web server, so it feels always-on.

Parallelize

Have a second feature you want to build in parallel? You can duplicate the chat at any time via the "Fork chat" button, which will launch an exact clone of your dev server (including all the running processes, files, etc) and send your new prompt to the clone. Your original dev server keeps going in parallel, fully isolated, so the 2 features will be fully independent and have separate URLs for testing.

This is where typhons shines. Every time you think of a new feature to add to the backlog, just type it in directly to a new fork! You can follow along for high priority features, or leave them running in the background. Then when you have time, that feature will already have an initial implementation with its own unique URL to test it, and an active Claude session where you can iterate on the feature.

CLI & SSH

Prefer the terminal? Everything above has a command-line equivalent, and every machine is a full Linux box you can SSH into.

Fork from the CLI

The terminal equivalent of the Fork chat button is fork. From inside Claude Code on a dev server, just run !fork with your new prompt — it clones the whole machine (running processes and all) and hands the fork's Claude the prompt, so it goes off on the new task while your current one keeps working:

!fork "refactor the auth module to use JWTs"

# name the fork
!fork -n auth-refactor "refactor the auth module to use JWTs"

The prompt lands in the same Claude session you ran it from, and you get a link to the fork's chat. (Outside Claude, the plain fork shell command on the server does the same thing.)

From your own computer, typhons fork does the same thing. Pass -b to pick the dev server:

typhons fork -b my-server "add rate limiting to the API"

Pass no prompt to make a plain clone — an identical, fully independent copy with nothing injected (handy for a scratch branch, or for non-Claude workflows — see Codex & custom tooling):

typhons fork -b my-server -n scratch
-n, --name NAMEName for the fork (default: auto-generated)
-b, --box NAMESource server (default: the current server, when run on one)

SSH access

Every machine is a full Linux box. SSH in as user.<server-name>:

ssh user.my-server@ssh.typhons.dev -A

-A forwards your ssh-agent so git push / gh work inside the box. You can also run typhons attach <name> to auto-ssh and attach to tmux. (Pass -s to typhons attach to a plain shell rather than tmux.)

Note: if you launched your dev server from web without passing an ssh key, you won't be able to SSH from the CLI. You can manually add your SSH key to the dev server (connect to a web terminal and add it to the ~/.ssh/authorized_keys file)

Mobile

The chat page and web terminal work great from a phone browser. If you'd rather use ssh , any SSH app works — Termius is good on iOS and Android (host ssh.typhons.dev, username user.my-server, your SSH key).

Codex & custom tooling

Web chat for Codex is coming soon. In the meantime — and for any custom agent or workflow — you can use Typhons without the chat UI. Every machine is a full Linux box with your tools pre-installed:

  1. Launch a machine (dashboard or auto-build) and get in — the web terminal, or ssh user.<server-name>@ssh.typhons.dev -A.
  2. Install your dependencies and start your app.
  3. Run your agent inside tmux so it survives disconnects. Codex is pre-installed: tmux new "codex --yolo". (Or run whatever else you like — it's your box.)

To run parallel agents, fork with no prompt spins up an independent clone — in-memory state and all — on its own domain. Nothing is injected, so you drive each agent directly from its own tmux session (one Codex per machine).

Repeatable builds

auto-build is the easiest path. For a fully scripted, reproducible build (e.g. for CI, or when you already know exactly what setup to run), use typhons build. It copies your repo into a machine, runs a setup script, and saves the result as a launchable image.

npm install -g @typhons/cli

Basic example

cd your-repo

typhons build \
  --image node:20 \
  --script "npm install" \
  --startup-script "npm run dev" \
  --cpus 2 \
  --memory 4 \
  .

This will:

  1. Start from the node:20 Docker image
  2. Copy your repo into /home/user/your-repo
  3. Run npm install during the build (one-time setup)
  4. Run npm run dev and then snapshot the machine. Any new machine launched from this image will already have npm run dev running

Important: by default, everything from your local repo is copied to the machine. Use --ignore or --ignore-file to exclude things (e.g. large, cached files)

Options

--image NAMEDocker base image (e.g. node:20, python:3.12-slim)
--script CMDSetup script — runs once during build (e.g. npm install)
--startup-script CMDStartup script — runs every boot (e.g. npm run dev)
-t, --tag TAGImage name/tag (default: timestamp)
--ssh-key PATHSSH public key for access (or set SSH_PUBLIC_KEY env)
--ignore PATTERNSComma-separated globs to exclude from the repo copy (gitignore-style)
--ignore-file PATHFile with ignore patterns, one per line (like .gitignore)
--cpu COUNTCPUs for the build (default: 1)
--memory GBMemory in GB for the build (default: 4)
--user USERUser name to use for main account on the server (default is user)

Run typhons build -h for the full help.

Devcontainer

If your repo has a .devcontainer/devcontainer.json, typhons build can use it directly:

cd your-repo
typhons build --devcontainer .

This respects your devcontainer config including the Docker image or Compose setup, postCreateCommand, postStartCommand, forwarded ports, and remote user. Use this if you already have a devcontainer defined for your repo or want a multi-container setup.