04 / ONLINE TERMINAL

Your shell.
In a browser tab.

Use your device's local shell without leaving Caterm. The terminal runs as the daemon user, with that user's tools and permissions.

1. Connect the device

Terminal access is enabled by default. On Mac, you can change it in the Caterm app's Permissions page; existing saved settings are preserved. With the daemon, connect using the saved credential:

caterm connect --saved

2. Open the terminal

In Caterm, open Devices, select the online device, and choose Terminal. Input and output stream through the authenticated device connection. Use the shell to inspect logs, run your own development commands, or check project state.

Windows and session lifetime

Use the + button to start another shell and select a tab to switch. Tab names follow the most recently submitted command at a standard shell prompt ending in $, #, %, or ❯. Multiline commands use the first line, limited to 80 characters; long names are shortened visually with the full saved name available on hover. Unrecognized prompts retain the existing name.

Windows keep running when you leave the page or lose your connection while Caterm remains running. Reopening the terminal restores your windows, names, screen, and recent history. Each user can have up to eight windows on a device.

The × button appears when you hover over or focus a tab and ends that shell. The last window stays open; its close button and close shortcut are disabled. With the terminal panel focused, use ⌘T to create a window and ⌘W to close the active window on Mac; on Windows and Linux, use Ctrl+Shift+T and Ctrl+Shift+W. Some browsers reserve these shortcuts and may handle them before the page receives them; the buttons are always available.

Device pause, revoked access, and disabling terminal access also close affected windows. Quitting, stopping, or restarting Caterm ends running shells and clears all windows and terminal history. A device reboot also ends the sessions.

Terminal input and output are not stored in PostgreSQL or application logs. Window names are kept in device memory.

A shell has the local user's permissions

The terminal is not restricted to the file browser's configured root. Enable it only where remote shell access is appropriate. The shell inherits the daemon account’s OS privileges, including root. This feature opens a shell on the enrolled device; connecting onward to another SSH host is outside the current product scope.

Turn it off

Disable terminal access in the Mac app, or stop and restart the daemon with CATERM_ALLOW_TERMINAL=false and without --allow-terminal.