Skip to content

How boxes.dev works

On this page

boxes.dev runs Codex and Claude Code on Linux machines in the cloud. You work with an agent in a thread: a conversation where you describe a task, answer the agent's questions, and review its changes. The agent edits files, runs commands, and tests your app on its cloud machine. Closing your laptop doesn't stop the agent. It can keep working and wait for your reply.

How your environment gets to the cloud

A project brings together the cloud machines, threads, settings, and integrations for one codebase. You can set up a project from a local codebase, a GitHub repository, or an environment prepared by your team.

If your codebase and development environment are already set up on your laptop, boxes.dev can port that setup to a Template box in the cloud. This machine provides the base environment for new work in the project.

On this path, boxes.dev will start setup agents on your laptop to inspect your environment and prepare a setup plan. You'll review the files and data selected for upload before boxes.dev uploads them. An agent on the Template box will then install dependencies and check that your app runs there.

If you start from a GitHub repository instead, boxes.dev will clone it into the project's Template box. You'll then work with an agent to get your app running there.

Either way, when setup finishes, boxes.dev will save the Template box's prepared environment as a snapshot. You can update the Template box and take further snapshots as your development environment changes.

Your team can also prepare the starting environment once and share it as a Team Template. You can then create a project from that saved environment.

Start a thread, get a machine

With this environment prepared, you can start a thread to work on a feature, bug fix, or other task. By default, boxes.dev will create a new machine for the thread, called a devbox, from the project's prepared environment. For a project with its own Template box, that's the latest snapshot.

The devbox comes up with the saved files and dependencies in place, and the thread's agent starts there. If the project has startup commands configured, they can start your app and services as well.

Each devbox has its own filesystem, services, and ports. Agents on different devboxes can therefore edit separate copies of the codebase and run your app on the same port numbers. That separation covers each devbox's own files and services; if two devboxes use the same external service, such as a hosted database, they can affect the same data there.

You can also start a thread on an existing devbox when you want another agent to work with the same files. Threads on the same devbox share its files and running services.

Continue from any device

The desktop app, mobile app, and command-line tool open the same threads. You can start a task on your laptop and answer the agent's questions later from your phone; switching devices doesn't start a new conversation or move the agent to another machine.

Return later or finish a task

Devboxes sleep automatically when inactive to conserve resources. See Sleep and wake for timing and automatic wake settings. You can also pause a devbox manually. Open its status menu in the desktop titlebar and choose Sleep devbox. Sleeping will preserve files and memory, but commands, agents, and your app will stop running until you wake it. Choose Wake in the titlebar to resume.

Before you destroy a devbox, save any work you want to keep — push it with Git, or download the files to your laptop. Destroying the devbox will archive its conversations and delete its own filesystem.