Orch term
Search features…Ctrl K

Core features · Session list

Session list (resume)

The 5th sidebar mode, "Sessions", gathers the AI CLI agent (claude · codex · agy · grok · opencode · hermes) conversations you ran in the active project in one place and resumes them with a single click. orchterm doesn't record them separately — it reads the conversation records each CLI leaves on disk directly (parse-don't-ask). Conversations come back automatically after an app restart, and the name you give a tab becomes the conversation's name.

Opening the session panel

Open it with the Sessions icon in the sidebar mode bar or Ctrl+Shift+S (the command palette's "Sessions" also works). The list is specific to the active project (current folder), so switching projects shows that project's sessions.

List — date groups · agent icons · meta

Sessions are sorted newest first and bucketed into date groups (Today / Yesterday / YYYY-MM-DD). Each row shows a brand icon that tells you which CLI it is, plus the title (first user message), a relative time, and (if any) the git branch. CLIs without a brand icon yet (grok · opencode · hermes) show their name as text.

Session list — claude·codex·agy sessions of 21.zendy-terminal grouped by Today/Yesterday/date, real brand icons, git branch (· main · worktree-ssh-core) shown for claude only
① Brand icons distinguish claude·codex·agy. ② 20 at a time, then More loads +20 (instantly, no re-query).

Rename — give a session your own title

List titles come from the first user message in each CLI's transcript, so they are often long or look alike. Right-click a row and pick Rename to edit the title in place — Enter saves, Esc cancels.

Tab name = conversation name

It works the other way too. Rename a terminal tab and the AI conversation running in it appears under that same name in the session list. Double-click the tab title, or right-click the tab and pick Rename.

Resume — pick up in the original folder

Click a row to resume the conversation in a new terminal tab in that session's original working folder (cwd). It runs the right command per CLI automatically.

AgentResume command
claudeclaude --resume <id>
codexcodex resume <id>
agyagy --conversation <id>
grokgrok --resume <id>
opencodeopencode --session <id>
hermeshermes --resume <id>

⚠️ Resume works only if that CLI (claude · codex · agy · grok · opencode · hermes) is on the system PATH.

Bypass permissions — resume without approvals

Turn on the Bypass permissions switch in the session panel header and resuming will automatically add each CLI's bypass-permissions flag, so the session picks up immediately without folder-trust or tool-approval prompts. The switch state is saved and persists across app restarts (off by default).

AgentResume command (bypass on)
claudeclaude --dangerously-skip-permissions --resume <id>
codexcodex --dangerously-bypass-approvals-and-sandbox resume <id>
agyagy --dangerously-skip-permissions --conversation <id>
grok · opencode · hermesNo flag is added — only CLIs with a verified bypass flag get one (guessing a flag would make the CLI fail to start)

⚠️ Bypass permissions is a risky, not-recommended option for unattended runs — when on, the agent writes files and runs commands without asking. It is off by default (safe mode), so enable it only in projects you trust. Unchecking it restores the usual one-time folder-trust approval.

Conversations survive a restart

Quit and reopen the app and the AI conversation that was running in each terminal tab comes back on its own. orchterm remembers which conversation was running in which tab and brings the same one back to the same place — for all six CLIs.

Duplicated tabs and tabs torn out into their own window do not resume the conversation — that would attach two processes to one conversation. SSH terminals are out of scope too (a remote conversation can't be picked up locally).

Incremental display · loading bar

Sessions — loading
Sessions 21.zendy-terminal
Loading sessions…
① Query starts → clear the list, show an indeterminate progress bar → replace when results arrive.

Cross-platform · how it finds them

It reads each CLI's conversation store where it already lives. It picks only sessions run in the same folder as the active project, normalizing path comparison per OS convention (lowercasing on Windows only). The backend is a read-only scanner, independent of orchterm's own DB — it never writes to another tool's files.

AgentConversation store
claude~/.claude/projects
codex~/.codex/sessions
agy~/.gemini/antigravity-cli/ (history.jsonl + conversations/*.db)
grok~/.grok/sessions/…/summary.json ($GROK_HOME wins)
opencode~/.local/share/opencode/opencode.db ($XDG_DATA_HOME wins)
hermesWindows %LOCALAPPDATA%\hermes\state.db · elsewhere ~/.hermes/state.db ($HERMES_HOME wins)

Keyboard shortcuts

KeyAction
Ctrl+Shift+SOpen sessions mode (mac Cmd+Shift+S)
Ctrl+Shift+PCommand palette → "Sessions"