Sign in

Moving from Ona (Gitpod)

Use a Prized box as an Ona or Gitpod alternative before Ona Cloud closes on October 31, 2026: save your work, turn .gitpod.yml, devcontainer.json, and .ona/config.yaml into a setup script, and run it on a box.

On this page8

Ona Cloud, formerly Gitpod, closes on October 31, 2026, and its environments do not move anywhere by themselves (Ona's notice). A Prized box is a cloud Linux machine that keeps its disk, with Docker, Claude Code, and Codex installed, reached from your terminal, your editor, or the browser. The worked example is spring-petclinic, which has a .gitpod.yml and a devcontainer.json.

1. Save what lives only in Ona

Do this before October 31:

  • Code: commit and push from each environment.
  • Files outside git: start the environment (ona environment start <id>; ona environment list shows the ids), run ona environment ssh-config to add it to your SSH config, then scp -O -r <id>.ona.environment:/workspaces/<repo>/<folder> . copies a folder out.
  • Secrets: in a running environment, an environment variable secret is a plain env var (printenv NAME) and a file secret is a file at its path.
  • Dotfiles: ona user dotfiles get prints your dotfiles repository.

2. Get a box

Sign up at prized.dev: the tour starts a box on $30 of free credit with no card, then shows one command that installs the CLI and signs this machine in (Quickstart).

3. Turn your config into a setup script

Prized does not read .gitpod.yml, devcontainer.json, or .ona/config.yaml (or .gitpod/automations.yaml). Each part becomes a line in one setup script, a command, or nothing:

In Ona or GitpodOn Prized
devcontainer image and featuresapt-get install lines in the script. The box is Ubuntu 24.04 with Docker, git, gh, and Python already on it (Machines)
.gitpod.yml before and init, devcontainer onCreateCommand and postCreateCommand, tasksLines in the script, which runs once
.gitpod.yml command, servicesprized exec --detach (step 5); a systemctl --user service to start it at every boot
ports, forwardPorts, port sharingNothing to declare: ports 3000 to 9999 on the box open on your machine's localhost; prized ports share 8080 makes a link for your workspace's members (Ports)
SecretsAPI keys your code sends to an HTTPS API as Secrets, where the box sees a placeholder; other values as a file, such as prized cp .env :spring-petclinic/.env
DotfilesA line in the script: git clone https://github.com/you/dotfiles ~/dotfiles && ~/dotfiles/install.sh
PrebuildsA box keeps its disk, so setup runs once; prized fork copies a box that is set up (Fork a box)
VS Code, Cursor, JetBrains, VS Code in the browserAny editor that opens an SSH host (Cursor or VS Code); the box's browser terminal and desktop

petclinic's devcontainer.json asks for Java 21, and its .gitpod.yml runs ./mvnw install once. As a setup script, with the tests skipped so it finishes sooner:

setup.sh
sudo apt-get -o DPkg::Lock::Timeout=300 update -q
sudo apt-get -o DPkg::Lock::Timeout=300 install -y -q openjdk-21-jdk-headless
cd ~/spring-petclinic && ./mvnw -B -q -DskipTests install
echo setup.sh done

4. Run it on your box

Clone the repo into the box's home folder, copy the script over, and run it there; it takes a few minutes.

prized exec -- git clone https://github.com/spring-projects/spring-petclinic
prized cp setup.sh :setup.sh
prized exec -- bash setup.sh

For a private repo, run prized ssh, then gh auth login and gh repo clone owner/name on the box.

5. Start the app

prized exec --detach --cwd spring-petclinic -- ./mvnw spring-boot:run

Open localhost:8080 on your machine: the port opens there by itself. prized exec --status ID, with the id the command printed, shows whether it is running and the end of its output (Exec).

6. Work on it

  • Editor: in VS Code or Cursor, run Remote-SSH: Connect to Host and pick your box (Cursor or VS Code). In a terminal, prized ssh.
  • Agents: prized agents handoff claude copies your machine's Claude Code sign-in to the box (or codex), then prized agents run claude --dir spring-petclinic --attach starts it there. Detach with Ctrl-b d: it keeps working with your laptop closed (Agents).

Every new box, set up the same way

An environment is the closest thing to an Ona project: each new box made from it clones the repos and runs the setup script at its first boot. On the free credit a workspace has one box at a time, so a second box needs a plan.

prized environments new petclinic --setup-script setup.sh
prized environments add-repo petclinic spring-projects/spring-petclinic
prized box new petclinic --environment petclinic --size nano --wait

The script runs once the box is up, with its output in /var/log/doppel-setup.log; prized exec petclinic -- tail -1 /var/log/doppel-setup.log prints setup.sh done when it has finished. Then start the app on that box and serve it on your machine at localhost:8081, since your first box may already hold 8080 there:

prized exec petclinic --detach --cwd spring-petclinic -- ./mvnw spring-boot:run
prized proxy petclinic 8080:8081

Getting help moving

Email with what your Ona environment ran, and we will help you map it.