Agent Sessions
sivtr treats agent transcripts as local workspace memory sources. You can copy the latest useful turn, browse older sessions in a picker, search across providers, and show exact refs without opening raw transcript files. Prior agent work becomes memory for both humans and later agents.
Skills are how later agents learn to use this memory. A sivtr memory skill can instruct an agent to search local terminal records and agent conversations, expand only the smallest relevant result, and verify current code before trusting prior discussion. See Skills and Reusable Procedures.
Supported providers
Section titled “Supported providers”Providers come from the AgentProvider registry. Copy uses the same names:
| Provider | Copy command | Default discovery |
|---|---|---|
| Codex | sivtr copy codex ... |
Codex rollout JSONL under ~/.codex/sessions |
| Claude Code | sivtr copy claude ... |
Claude transcript/session env and local transcripts |
| Cursor | sivtr copy cursor ... |
Cursor agent transcript JSONL under ~/.cursor/projects |
| OpenCode | sivtr copy opencode ... |
OpenCode local database |
| OpenClaw | sivtr copy openclaw ... |
OpenClaw agent SQLite (+ legacy JSONL) |
| Hermes | sivtr copy hermes ... |
Hermes state.db (JSONL under sessions/ residual) |
| Grok | sivtr copy grok ... |
Grok sessions under ~/.grok (GROK_HOME) |
| Dsh | sivtr copy dsh ... |
Dsh agent sessions |
| Gemini | sivtr copy gemini ... |
Gemini CLI sessions |
| Goose | sivtr copy goose ... |
Goose agent sessions |
| Pi | sivtr copy pi ... |
Pi session JSONL under the Pi agent directory |
| Qoder / Qoder-CN | sivtr copy qoder ... |
Qoder and Qoder-CN sessions |
| Qwen | sivtr copy qwen ... |
Qwen Code sessions |
| Amp, Aider, iFlow, Kimi, Kimi Work | sivtr copy <provider> ... |
Provider-specific JSON, Markdown, or wire transcripts |
| Trae, TraeX, Copilot, VSCode Copilot, Windsurf | sivtr copy <provider> ... |
CLI rollouts and VS Code/Windsurf chat stores |
| OpenHands, RooCode, Kiro, Zed, Kilo, gptme, Vibe, Poolside | sivtr copy <provider> ... |
Directory, SQLite, JSONL, or NDJSON sessions |
| Claude.ai, ChatGPT | sivtr copy <provider> ... |
Sessions imported with sivtr import sessions |
Use agent in search commands when you want all registered providers:
sivtr search agent --match "panic" --format timelineCopy the latest useful text
Section titled “Copy the latest useful text”sivtr copy codex outsivtr copy claude outsivtr copy cursor outsivtr copy hermes outsivtr copy openclaw outsivtr copy opencode outsivtr copy grok outsivtr copy pi outout copies the latest assistant reply for the selected provider.
Copy input, output, tool output, or whole session
Section titled “Copy input, output, tool output, or whole session”Each provider supports the same mode shape:
sivtr copy claudesivtr copy claude insivtr copy claude outsivtr copy claude toolsivtr copy claude all| Mode | Copies |
|---|---|
| omitted | Last completed user plus assistant turn |
in |
Last user message |
out |
Last assistant reply |
tool |
Last tool output |
all |
Whole parsed session |
Replace claude with any registered provider name (codex, cursor, hermes, opencode, openclaw, grok, pi, dsh, gemini, goose, qoder, qodercn, qwen, …).
Select older items
Section titled “Select older items”Selectors are newest-first and work like command-block selectors:
sivtr copy claude 2sivtr copy claude 2..4sivtr copy codex out 3Use --session to choose a session by picker index, session id, or id prefix:
sivtr copy codex --session 2sivtr copy codex --session 019df7fbsivtr copy claude out --session 3 --printFilter copied text
Section titled “Filter copied text”sivtr copy claude tool --regex errorsivtr copy codex all --lines 1:40sivtr copy hermes out --printsivtr copy pi out --printFilters run after selected text is assembled. See Selectors and Filters.
Pick interactively
Section titled “Pick interactively”Open a provider-specific picker:
sivtr copy codex --picksivtr copy claude --picksivtr copy hermes --picksivtr copy opencode --picksivtr copy pi --pickInside the workspace picker:
| Key | Action |
|---|---|
0 / 1 / 2 / 3 |
Focus source, sessions, dialogues, or content |
h / l |
Move between panes |
j / k |
Move within the current pane |
Space |
Toggle the current source, session, or dialogue |
/ |
Search all loaded sessions |
n / N |
Next or previous search match |
i |
Copy current input/question |
o |
Copy current output/answer |
y |
Copy current input plus output |
c |
Copy bare command when available |
: |
Start a temporary line filter for the next copy |
v in Content |
Start visual text selection |
t |
Open current content in Vim-style full view |
? |
Open help |
Context-aware launchers such as the Windows hotkey and VS Code extension can open a current-workspace picker directly.
Search agent memory and terminal context
Section titled “Search agent memory and terminal context”Search current-workspace agent sessions and terminal context with target-first search:
sivtr search agent --match "panic" --format timelinesivtr search agent --match "workspace picker" --in title --format compactsivtr search codex --match "sivtr" --in session --format mdsivtr search terminal --match "build error" --format json --limit 20Use JSON refs with sivtr show. These exact refs are the unit you can hand back to yourself, another terminal workflow, or an agent prompt:
sivtr show claude/<session>/<dialogue>sivtr show pi/<session>/<dialogue>/<line>The unified archive
Section titled “The unified archive”Sessions from every registered provider are synced into one local SQLite archive (archive.db) alongside terminal captures. Queries run an automatic freshness pass, so new sessions show up without manual steps; sivtr sync forces a pass on demand.
Cross-device sharing is opt-in and handled by Remote Access (sivtr share / sivtr group), not by exporting session trees. See Remote Access.