Quick start
Five minutes, from a cold launch to two sessions side by side with an agent driving them.
1. Launch it
Open the app you installed:
| Platform | Launch |
|---|---|
| macOS | TermHerd in Applications — Launchpad, Spotlight, or double-click it in Finder. |
| Windows | TermHerd in the Start menu, or its desktop shortcut. |
| Linux | TermHerd in your application menu (.deb), or run the .AppImage directly. |
Prefer the terminal? The bare command-line binary is on your PATH as
termherd, and from a clone it is one command:
termherd # the installed bare binary
cargo run -p termherd-app # from a clone
If you have not installed it yet, see Installation.
The window opens on the workspace: the sidebar on the left, listing every
Claude session TermHerd found by walking ~/.claude/projects, grouped by
project — plus any repository you added by hand; the tab strip across the
top; the focused terminal filling the rest.
Nothing is scanned from your source trees and nothing under ~/.claude is
written. A first run on a large history takes a moment to walk the tree — the
scan is in-memory (a SQLite cache is roadmapped, not shipped).
About the chords below
Every shortcut is rebindable, and the defaults differ by platform. The tables give both columns; the full vocabulary is in Keyboard shortcuts.
2. Open a session
Click a project in the sidebar to expand it, then click a session to open it in a tab. TermHerd resumes it through the Claude CLI.
From the keyboard, with a terminal focused:
| Action | macOS | Windows / Linux |
|---|---|---|
| New shell in the focused session’s directory | Cmd+T | Ctrl+T |
| New Claude session in that directory | Cmd+Alt+T | Ctrl+Alt+T |
| Focus the sidebar search box | Cmd+F | Ctrl+F |
Search matches session titles and indexed transcript content; a content hit shows the matched line under the row so you can tell why it matched. See The sidebar.
3. Arrange it
| Action | macOS | Windows / Linux |
|---|---|---|
| Split vertically (side by side) | Cmd+D | Ctrl+D |
| Split horizontally (stacked) | Cmd+Shift+D | Ctrl+Shift+D |
| Move focus between panes | Cmd+Shift+←↑↓→ | Ctrl+Shift+←↑↓→ |
| Next / previous tab | Ctrl+Tab / Ctrl+Shift+Tab | same |
| Jump straight to tab 1–9 | Cmd+1…9 | Ctrl+1…9 |
| Close the focused pane (a lone pane closes its tab) | Cmd+W | Ctrl+W |
| Reopen the tab you just closed | Cmd+Shift+T | Ctrl+Shift+T |
Tabs also reorder by drag-and-drop. Split panes always share their space
evenly — resizing them, by keyboard or by drag, is the remaining piece of
F-terminal-split.
4. Watch what needs you
Each tab carries an activity dot: busy while a session is working, attention when it is waiting on you (a permission prompt, a question), idle when it is done. That is also what arms the close confirmation — closing a tab whose session is mid-command asks first, closing an idle one does not. Status and attention.
5. Let a session drive the workspace
A Claude session launched from TermHerd already has the MCP control surface wired in. Ask it, inside that session:
Split this pane, run
cargo testin the new one, wait for it to finish, and tell me what failed.
It will call split_pane → run_in_session → wait_for_status →
read_terminal. That act → wait → observe loop, and everything else the
session can reach, is in Driving termherd over MCP.
6. Make it yours
There is no settings panel yet: edit ~/.termherd/settings.json
(%USERPROFILE%\.termherd\settings.json on Windows) and restart. Shell, theme,
terminal colours and font size, close-confirmation policy, sidebar density, GIF
recording budget, the editor a clicked file path opens in, and every key
binding live there — full reference.
Where to go next
- The sidebar — browsing, search, stars, plans and memory
- The terminal — selection, clickable links and paths, scrollback, zoom
- Capture and record — hand an AI assistant the app’s exact state