DocsGetting started

Terminal CLI

The desktop app and the podcode command drive the same server. The CLI is useful when you want the TUI instead of a window, a one-shot prompt in a script, or a headless server something else can talk to.

Install

From the app. Open Settings → Terminal and click Install. It adds a podcode launcher to a folder already on your PATH, so no admin rights are needed, and it runs the CLI bundled inside the app — there is no separate Node.js install. The same panel shows where the launcher went, and offers Reinstall and Remove.

Verify:

Shell
podcode --version

If the command isn't found, open a new terminal — a shell started before the install has a stale PATH.

Commands

A bare podcode launches the TUI.

CommandWhat it does
podcode tuiThe interactive terminal UI. Workspace picker, permission dialogs, streaming inspector, todo panel.
podcode webStarts the server and opens the web UI in your browser.
podcode serveStarts the server headless — no UI attached.
podcode run "<prompt>"One-shot: runs a prompt to completion and prints the result.
podcode modelsList available models and select one.
podcode authPer-provider authentication: list, login <provider>, logout <provider>, and status copilot.
podcode login / logout / whoamiYour Podcode account session — separate from provider auth above.
podcode sessionlist, show <id>, delete <id>, rename <id> <title>, fork <id>, revert <id>, plan-mode <id>.
podcode skillslist, sync, show <name>.
podcode memoryWorkspace memory team sync: sync, status, unignore, config.
podcode scheduleManage scheduled runs.
podcode benchRun the harness benchmark lanes against an endpoint.
Shell
podcode run "explain what packages/server/src/loop does"

Environment overrides

Useful when you run more than one instance, or want everything under one directory for a container.

VariableOverrides
PODCODE_CONFIG_DIRThe config directory
PODCODE_DATA_DIRThe data directory
PODCODE_AUTH_DIRWhere auth.json lives
PODCODE_DB_PATHThe SQLite database path
PODCODE_LOG_DIRWhere logs are written
LOG_LEVELLog verbosity
PODCODE_DISABLE_KEYRINGSkip the OS keyring for credential encryption
PODCODE_DISABLE_PROMPT_CACHETurn off provider prompt caching
PODCODE_SHOW_STUBSReveal the unimplemented commands above

Next

  • Permissions — a headless podcode run still asks before dangerous tool calls unless you've granted them.
  • Providers — podcode auth login covers most of them.