Skip to content

Commands Cheat Sheet

Fresh

Condensed from the CLI Reference. Most commands print JSON.

Launch and status

CommandDoes
herdrLaunch or attach to the default session
herdr --session workLaunch or attach to a named session
herdr --remote workboxAttach through SSH with local keybindings
herdr --remote workbox --remote-keybindings serverUse the remote server's keybindings
herdr --remote workbox --handoffOpt into experimental live handoff
herdr --no-sessionSingle-process escape hatch
herdr --default-configPrint the default config
herdr --versionPrint version
herdr status / status server / status clientStatus info

Update and channels

CommandDoes
herdr updateInstall from the configured channel
herdr update --handoffLive handoff for supported running servers
herdr channel showPrint stable or preview
herdr channel set preview / set stableSwitch channels (direct installs only)

Server

CommandDoes
herdr serverRun the headless server explicitly
herdr server stopStop the default server (exits pane processes)
herdr server reload-configApply reloadable settings without restarting panes
herdr server agent-manifests [--json]Show active detection manifest sources
herdr server update-agent-manifests [--json]Fetch + reload remote manifests now
herdr server reload-agent-manifestsReload after local override edits

Sessions

CommandDoes
herdr session list [--json]List sessions
herdr session attach <name>Attach (creates if needed)
herdr session stop <name> [--json]Stop a session's server
herdr session delete <name> [--json]Delete a session

Use default as the name to stop the default session explicitly.

Workspaces and worktrees

CommandDoes
herdr workspace list / get / focus / rename / closeWorkspace CRUD
herdr workspace create [--cwd PATH] [--label TEXT] [--no-focus]New workspace
herdr worktree list [--workspace ID | --cwd PATH]List Git worktree checkouts
herdr worktree create [--branch NAME] [--base REF] [--path PATH]Create checkout + workspace
herdr worktree open (--path PATH | --branch NAME)Open existing checkout
herdr worktree remove --workspace ID [--force]git worktree remove (never deletes the branch)

Tabs

CommandDoes
herdr tab list / get / focus / rename / closeTab CRUD
herdr tab create [--workspace ID] [--cwd PATH] [--label TEXT]New tab

Panes

CommandDoes
herdr pane list / get / rename / closePane CRUD
herdr pane split <id> --direction right|down [--ratio FLOAT] [--cwd PATH]Split
herdr pane layout / neighbor / edges [--current]Layout inspection
herdr pane focus --direction left|right|up|downDirectional focus
herdr pane resize --direction DIR [--amount FLOAT]Resize
herdr pane zoom [--toggle|--on|--off]Zoom
herdr pane swap --direction DIR or --source-pane ID --target-pane IDSwap (same tab only)
herdr pane read <id> [--source visible|recent|recent-unwrapped|detection] [--lines N] [--ansi]Read output
herdr pane send-text <id> <text>Literal text
herdr pane send-keys <id> <key> ...Key presses
herdr pane run <id> <command>Text + Enter atomically (prefer this)
herdr pane report-agent <id> --source ID --agent LABEL --state STATEReport agent state from hooks
herdr pane report-metadata <id> --source ID [--title ...] [--display-agent ...]Display-only metadata

Agents

CommandDoes
herdr agent list / get <target>Inspect agents
herdr agent read <target> [--source ...] [--lines N]Read agent terminal
herdr agent send <target> <text>Send text
herdr agent rename <target> <name>|--clearName an agent target
herdr agent focus <target>Focus its pane
herdr agent wait <target> --status idle|working|blocked|unknown [--timeout MS]Wait for state
herdr agent attach <target> [--takeover]Direct attach to one agent
herdr agent start <name> [--cwd PATH] [--workspace ID] [--tab ID] [--split right|down] -- <argv...>Spawn an agent
herdr agent explain <target> [--json|--verbose]Why is the state what it is

Targets accept terminal IDs, unique agent names, detected/reported labels, and legacy pane IDs.

Waits

CommandDoes
herdr wait output <pane_id> --match <text> [--regex] [--timeout MS]Wait for pane output
herdr wait agent-status <pane_id> --status done [--timeout MS]Wait for agent state

Integrations

CommandDoes
herdr integration install <agent>pi, omp, claude, codex, copilot, droid, kimi, opencode, kilo, hermes, qodercli, cursor
herdr integration uninstall <agent>Remove Herdr's entries only
herdr integration status [--outdated-only]Installed versions

Notifications

CommandDoes
herdr notification show <title> [--body TEXT] [--position POS] [--sound none|done|request]Show a toast via configured delivery

Environment variables

VariablePurpose
HERDR_CONFIG_PATHOverride the config file path
HERDR_SESSIONSelect a named session for CLI commands
HERDR_SOCKET_PATHLow-level socket path override
HERDR_LOGLog filtering, e.g. HERDR_LOG=herdr=debug
HERDR_DISABLE_SOUNDDisable sound playback
HERDR_REMOTE_BINARYLocal binary path for remote attach
HERDR_ENVSet to 1 inside Herdr-managed panes (agent skill guard)