Skip to content

Use the terminal

On this page

Use Terminal to run tests, start your app, or inspect logs on a devbox. Commands run on the selected cloud machine, so you can work with the same files and services as your coding agent.

Open and manage tabs

  1. Select a thread on the devbox you want to use, or select the Template box page to work there.
  2. Click Terminal in the desktop titlebar. Hover the pane icons to see their names.
  3. If the machine is sleeping, wake it from the machine status control in the titlebar. If an existing terminal session shows Connect, choose it to reconnect.

Each tab is a persistent session on the selected machine. Use the plus button for another tab, and drag tabs to reorder them. Closing a tab ends that tab's session and the programs running in that session. Closing the desktop app keeps sessions available when you reopen it.

While the Terminal pane is focused, Cmd+T opens a new tab, Cmd+W closes the current one, and Cmd+[ / Cmd+] move between tabs; on Windows and Linux, use Ctrl+Shift+T, Ctrl+Shift+W, and Ctrl+Shift+Tab / Ctrl+Tab.

Sleeping the machine preserves its memory, including the state of your sessions; after it wakes, reconnect any tab that shows Connect. If you open the same session in another window or device, the earlier view will disconnect from that session.

Reset and Reboot stop terminal sessions, so reconnect or start new ones after either action.

Paste an image

You can paste an image from your clipboard into a terminal, and boxes.dev will upload it to the selected machine and insert the uploaded file's path. A shell just receives the path as text, so nothing runs; if Claude Code's terminal interface is open in that tab, it will treat the path as an image attachment.

Paste with Cmd+V on macOS, Ctrl+V on Linux, or the terminal's Paste menu. Claude's own image shortcut (Ctrl+V on macOS and Linux, Alt+V on Windows) works too. PNG and JPEG images can be up to 20 MiB each and 50 MiB per paste. If an upload fails, paste again before submitting a prompt that refers to the image.

Get notified by a terminal

Configure terminal bell notifications in Desktop app settings if you want the app to alert you when a program requests attention with a terminal bell. Terminal tabs can also show unread-output and attention indicators.

Choose a connection

Open Desktop app settings → Connection to choose how Terminal connects. Managed is the default. Direct (Mosh) can reduce latency by using an encrypted UDP connection where supported. Both choices use the same persistent sessions, so a tab created in one mode can be reattached through the other, and image paste works in either mode.

If Direct can't connect because required support is missing on your laptop or the machine, it will report an error rather than switching on its own. Choose Managed to connect that way instead.

Use the managed environment

The terminal runs Bash on Linux as the boxes user. This user's home directory is /home/boxes, and sudo needs no password. Use your repository's documented commands and install project tools as needed.

dvb, the boxes.dev CLI, belongs on your laptop. Do not install or run it inside a boxes.dev machine: doing so can destabilize or permanently break the environment, and boxes.dev is not responsible for recovering an environment knowingly modified this way. Machines come with the separate dvb-onbox commands for supported operations from inside, such as creating a public link for a running app.

To run one command on the machine from your laptop's terminal, follow the CLI's advanced instructions.