Portaldocs

Overview

Portal runs your Python scripts on the machines you choose across the providers you connect, and keeps them going through spot notices and out-of-memory failures.

Warnings and limits

  • Portal is open to anyone with an active Clusy account and a verified email address.
  • Portal runs Python scripts: Python 3.12 by default, 3.13 or 3.14 when your project asks for it. Python 3.11 and free-threaded builds are refused.
  • Your compute runs in your own provider accounts, and each provider bills you for it. A quote is an estimate: it leaves out disks, data transfer and taxes.
  • On a spot notice, a recoverable out-of-memory failure or a provider's time limit, Portal checkpoints the job and suspends it. It does not resume it on its own: you choose when and where.
  • A checkpoint cannot carry open files, sockets, running threads or other processes. See Spot interruptions and checkpoints.
  • Open issues affect Azure Container Apps and stored secrets today: see Known issues.

What Portal does

  1. Quotes. Portal asks every provider you connected for offers that fit your job (GPU model, GPUs, CPUs, memory, spot or not) and lists them by price. Nothing is uploaded and nothing starts.
  2. Runs. You pick an offer. Portal uploads your project directory, starts the machine in your account, installs your requirements and runs your script.
  3. Watches. Each job reports its progress, CPU, memory and GPU use. portal logs, portal ps, portal explain and the console show them.
  4. Keeps the job going. When a spot machine gets its notice, a job runs out of memory in a way it can recover from, or a provider's time limit comes close, Portal pauses the program at a safe point, saves its state (a checkpoint) to storage and suspends the job. You resume it on a machine you choose, and it continues from where it paused.
  5. Moves it when that pays. While a job runs, Portal looks for a cheaper offer every 10 minutes and moves the running program there when the saving is worth the move. See What Portal does on its own.
  6. Ends cleanly. Every machine Portal starts has a hard stop, and portal audit lists everything Portal runs across your providers, so nothing is left running by mistake.

Three ways to use it

WayWhat you use it for
The CLI (portal)Quotes, runs, logs, moves and connections from a terminal. See Install the CLI.
A coding toolClaude Code, Codex, Cursor, VS Code and others call Portal's tools through MCP. See Set up your coding tool.
The consoleRuns, usage, machines, connections and settings in the browser at portal.clusy.io/app. See The console.

Where your jobs can run

ProviderWhat Portal starts
AWSEC2 instances (spot or on-demand, CPU or GPU) in your account
Google CloudCompute Engine VMs (spot or standard, CPU or GPU) in your project
AzureAzure VMs and Azure Container Apps in your subscription
ModalModal sandboxes in your workspace
LambdaLambda Cloud GPU instances in your account
Your own machinesComputers you enroll, running Portal's agent

Where to next

On this page