Reference

Settings reference

Everything with an exact name: variables, paths, service names, URLs, routes, shortcuts.

Browser data controls

Clear local dataper browser

Deletes the cached shell, stored transcript copies, browser preferences, and each chat's remembered permission mode, then reloads. It leaves the login, push subscription, unsent drafts, and each chat's prompt history in place.

Log outper browser

Signs this browser out and removes what it kept for your account: stored transcript copies, the chat list, unsent drafts, prompt history, and this browser's push subscription. Only the color theme stays. Changing your password signs out every other browser and stops their notifications.

Agent environment variables

Set these in ~/.termdeck/agent.env on macOS and Linux, and restart the agent. On Windows the equivalent file is %USERPROFILE%\.termdeck\agent.env.cmd using set NAME=value lines.

TERMDECK_AGENT_TOKENrequired

The machine token, starting with agt_. Written by the installer. Regenerate it from the machine's page in Settings if it is ever exposed.

TERMDECK_MASTER_URLrequired

Where the agent dials. Written by the installer as https://termdeck.io.

TERMDECK_HOMEdefault ~/.termdeck

Moves the agent directory, token file, and log somewhere else. Set it before installing; the installer records it in agent.env. macOS and Linux only: on Windows the agent always uses %USERPROFILE%\.termdeck.

TERMDECK_CLAUDE_EXEpath

Use this exact Claude Code binary rather than looking it up on the path.

TERMDECK_CODEX_EXEpath

Same, for Codex.

TERMDECK_GROK_EXEpath

Same, for Grok.

TERMDECK_FULL_ACCESSoff

Set to off and this machine refuses Full access on every engine, whatever the browser asks for. A chat in Full access fails to start with a message saying so; every other mode works as before. See Turning Full access off.

TERMDECK_CONFIG_READONLYoff

Set to 1 and this machine refuses every change from Extensions: its MCP servers, plugins and skills can be read and checked, but not switched, and the MCP panel in a chat cannot turn a server on or off. See When the switches are locked.

TERMDECK_AGENT_RUN_ORPHAN_MSdefault 240000

How long a Claude, Codex or Grok run keeps going with nobody attached before it is stopped. The same limit applies to a Claude process kept alive for your background shells. Raise it if you routinely disconnect for longer than four minutes mid run.

TERMDECK_AGENT_DEV_TOKEN_OK1

Lets an agent started from outside its install folder connect with the installed agent's own token. Without it that copy refuses, because only one agent per token can be connected and the installed one would be turned away while the copy runs.

TERMDECK_NO_PROMPTinstaller only

Skips the installer's read the source prompt. Used by the repair script for unattended runs.

Engine environment variables

These belong to the coding CLIs. Termdeck follows them rather than defining them, so a machine with a relocated config directory works without extra configuration.

VariableEffect
CLAUDE_CONFIG_DIRWhere Claude Code keeps its configuration, projects, and file history. Defaults to ~/.claude.
CODEX_HOMEWhere Codex keeps its configuration and session rollouts. Defaults to ~/.codex.
GROK_HOMEWhere Grok keeps its configuration and credentials. Defaults to ~/.grok.
CLAUDE_CODE_ENABLE_TODO_TOOLSWhether Claude keeps a task checklist while it works. Claude Code turns it off for current models by default; Termdeck turns it back on for the Claude chats it runs, so the checklist shows in the transcript. Set it to 0 in the agent's environment to leave it off.

File locations

PathHolds
~/.termdeck/agent/The agent and its two dependencies.
~/.termdeck/agent.envToken and master URL, mode 600.
~/.termdeck/logs/agent.logThe agent's activity log.
~/.termdeck/logs/agent-crash.logWindows only. Crashes that happen before the agent's own handler runs.
~/.termdeck/persistence.jsonHow the agent was registered, so the dashboard can warn about fragile installs.
~/.termdeck/.endpoints.jsonThe addresses the agent can connect through (termdeck.io and the fallback edge.termdeck.io) and the one in use. Rebuilt if deleted.
~/.termdeck/session-index.jsonThe machine's chat list (sizes, times, titles, folders), so a reconnect lists chats without rereading transcripts. Rebuilt if deleted.
~/.termdeck/uploads/<chat>/Files attached from the browser, mode 600, swept after a week without use.
~/.claude/projects/<slug>/<id>.jsonlClaude Code session transcripts.
~/.claude/file-history/<id>/Claude Code checkpoint snapshots, used by Restore files.
$CODEX_HOME/sessions/Codex session rollouts.
$CODEX_HOME/config.tomlCodex configuration, including MCP servers, plugins, and the skills turned off in Extensions.
~/.claude.jsonClaude configuration, including MCP servers and which ones are off in each project.
<project>/.mcp.jsonProject scoped MCP servers.
~/.claude/settings.jsonClaude settings. A skill turned off in Extensions is listed under skillOverrides.
<project>/.claude/settings.local.jsonWhich .mcp.json servers you approved or turned off in that project.
<project>/CLAUDE.md or AGENTS.mdThe project instruction file Termdeck can edit.

Service names

PlatformRegistered asManaged with
Linuxtermdeck-agent, a systemd user unitsystemctl --user status termdeck-agent
macOSio.termdeck.agent, a launch agentlaunchctl list | grep termdeck
WindowsTermdeckAgent, a scheduled taskGet-ScheduledTask -TaskName TermdeckAgent
FallbackA @reboot cron entrycrontab -l

URLs

URLPurpose
/install.sh, /install.ps1The installer. Needs TERMDECK_AGENT_TOKEN in the environment.
/uninstall.sh, /uninstall.ps1Stop the service and remove the agent.
/heal.sh, /heal.ps1Uninstall and reinstall, reusing the token on the machine.
/download/agent/manifest.jsonThe current agent file list.
/download/agent/<file>Any agent file, readable without an account.
/VERSIONA quick reachability check from a machine.
/llms.txtAn index of every page on this site for AI agents, linking each page's Markdown version.
/llms-full.txtEvery page on this site as Markdown, in one file.
Any page plus .mdThat page as Markdown, without the site header and footer. For example /docs/install.md. The home page is /index.md.

App routes

Every one of these is linkable and survives a reload.

RouteOpens
/dashboardThe app, on the fleet board.
#/newThe new chat page, remembering the machine, folder, and engine you picked.
#/<session id>One chat. An eight character prefix is enough when no other chat starts with the same characters; Codex chats use the full id, since two started in the same second share their first eight.
#/approvalsThe approval inbox.
#/terminalsTerminals: chats in tiled panes, laid out like tmux.
/settingsThe grouped settings list on a phone, and General on a wider screen.
/settings/<section>A settings section directly, for example /settings/approvals or /settings/data. The old /settings/advanced still opens Data controls. /settings/profile is your profile and activity, /settings/shortcuts the keyboard shortcuts.
/settings/securitySecurity & login: your password, and the browsers signed in to your account.
/settings/security?view=sessionsThe Active sessions list, where you log a browser out.
/settings/usageUsage, on Overview. Add ?tab=analytics for the cost and token report. The old /dashboard#/usage forwards to Analytics.
/settings/archivedArchived chats. The old /dashboard#/archive forwards here.
/settings/billingYour plan, promo codes, payment history and cancelling. ?plan=starter or ?plan=pro starts that plan's checkout for an account with no plan, and ?code= opens the promo code window with the code filled in. Older links to /settings/account with either one still arrive here.
/settings/billing?view=plansThe plans side by side, to subscribe or switch.
/settings/billing?view=transactionsEvery payment on the account, ten at a time.
?view=<name> and ?tab=<name>On a settings section, a page inside it and a tab on it. Back leaves a page inside a section; a tab is not a step in your history.

Keyboard shortcuts

KeysAction
Ctrl KOpen the command palette.
Ctrl BCollapse the sidebar, or open the drawer on a phone.
Ctrl Shift FOpen the project file explorer.
Ctrl RSearch prompt history, with the composer focused.
Alt 1 to 9Jump to a pinned tab, or go to that pane on the Terminals page.
EscClose the open menu, sheet, or dialog.
Every shortcut, including the composer and Approvals page keys, is listed under Keyboard shortcuts.

Slash commands

Typing / in the composer opens a palette. Every row carries the command's description and its arguments, read off disk, so your own commands and skills are described alongside the built ins below, including any this project defines.

CommandEffectEngines
/compactSummarise the conversation so far and continue with the shorter version.Claude, Codex, Grok
/contextReport context usage.Claude, Grok
/modelChange model from the composer.Claude, Grok
/session-infoSession details.Grok

Codex has none of its own. Its palette lists the skills installed for the chat, and picking one writes it into the composer as text for the model rather than running a command.

These are handled by Termdeck itself rather than sent to the engine, so they work on all three:

InputEffect
/clearStops and archives this chat, then starts a new one with the same settings.
# followed by textAppends that line to the project instruction file. Never destructive, so it needs no confirmation.
Recap, from a chat's menuA factual summary of what the chat did, derived from its own transcript rather than generated.

Naming rules

  • Machine names are lowercase letters, digits, and dashes, up to 32 characters. The name appears in every route addressing that machine.
  • Display names are free text and only affect what you see.
  • Machine tokens start with agt_ and are stored hashed on the server.

In Settings, switches and menus show nothing when they save, and a notice at the bottom right when they cannot, with the control back on the value that is really stored. That includes the account reasoning switch on General, whose notice names it, because the server can answer after you have moved to another section. Machine edits retain your entered values when a save fails. Extension connection checks announce their pending and completed status beside Recheck.

Settings opens with focus on the page heading. Select the search field when you want to search. Back to app returns to the workspace view you left.