AllSessions
Health Uyari
- License — License: Apache-2.0
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Gecti
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
A local-first desktop workspace for browsing, searching, and managing Codex, Claude Code, and Gemini CLI sessions.
AllSessions
A local-first desktop workspace for AI coding-agent sessions
Browse, search, organize, and manage local sessions from multiple AI coding agents in one place.
简体中文 · Features · Supported sources · Install · Development
AllSessions brings local sessions from Codex, Claude Code, Claude Cowork, Gemini CLI, Grok Build, Pi, Oh My Pi, Kimi Code CLI, OpenCode, Kilo, ZCode, Cursor, Devin, GitHub Copilot, Hermes Agent, VS Code Copilot Chat, and DeepSeek Harness into a single desktop app.
Instead of hunting through different tools and directories for past history, you can browse sessions, run full-text search, inspect tool calls, organize favorites and tags, review usage statistics, and export sessions — all in one interface.
AllSessions is built on Tauri 2. Session discovery, parsing, search, caching, file watching, and maintenance are implemented in Rust; the WebView frontend only renders the UI. The app opens no local HTTP server and bundles no Node.js runtime.
[!NOTE]
AllSessions is an independent community project. It is not affiliated with, sponsored by, or endorsed by the maintainers or vendors of the supported agents. Product and company names are used only to identify compatible local data sources.
Features
Unified multi-agent sessions
- Browse local sessions from multiple AI coding agents in one interface
- Filter by source, provider, date, project, and working directory
- Inspect normalized conversations, thinking, tool calls, and raw events
- Hide sessions marked as subagents or sidechains by default, with a filter to show them; injected context is shown by default in session details and can be toggled, while thinking appears within normalized messages
- Watch source files and refresh automatically
Full-text search
- Search titles, paths, tags, notes, and message text together
- Whitespace-separated multi-term matching; every term must hit
- One- and two-character terms use substring matching; longer terms use a local trigram index
- Order results by relevance or recent activity
- Filter hits by message role (user / assistant / tool) and tool name
- Narrow results to a session activity date range
- Regex mode: match the whole query as a regular expression
- Click a match snippet to jump to the surrounding messages
- In-session highlighting with previous/next navigation
Full-text search uses a per-message SQLite index. The index lives entirely on your machine — no cloud services or models — though the first scan takes extra time and disk space.
Long sessions keep bounded head/tail detail windows and a 64 MB LRU cache; matched messages load on demand beyond the overview window.
Exports contain the loaded session overview, not a complete backup of the original session. Long sessions may omit middle messages or truncate text and raw events. JSON includes export_info with the scope, message count, and partial status; Markdown also labels partial exports. Bulk exports follow the same rules. Return from a search context to the session overview before exporting.
Organize and statistics
- Favorite sessions and attach tags and notes
- Select a project and open Project review to revisit recent sessions, favorites, tags and notes. Each group shows up to 8 sessions within the current filters.
- Statistics share an activity date range. Switch the heatmap between sessions and tokens, select a day to filter, and browse related sessions by recent activity or in-range usage with pagination and detail links.
- Save reusable filters
- Manage local archive/removal state
- Compare session, message, tool, activity, provider, and working-directory statistics by agent
- Token usage statistics (input / output / cached); only sources that record usage are covered (Codex, Claude Code, ZCode, Pi, DeepSeek Harness, and Gemini CLI chats sessions)
- Batch-select loaded sessions and export as JSON or Markdown
- Optional export redaction, off by default
Desktop integration
- Reveal a session source file or project directory in the system file manager
- Open a system terminal in the session's working directory
- Resume the session in the corresponding agent (Cursor and VS Code Copilot Chat are read-only sources and do not support resume)
- Jump to recent sessions from the system tray menu
- Pick a terminal app or configure a custom executable
- Five visual themes
- Light, dark, and system color schemes
- Keyboard shortcuts for primary views, settings sections, and conversations
Local-first
- Parsing, search, and caching all happen locally
- Incremental SQLite index cache
- Imports the legacy
session-index.jsonon first upgrade - Starts with safe defaults when the configuration is damaged and guides you to repair source settings
- Per-source scan health status
- Copyable sanitized diagnostics without session content or local paths
- Local backup before permanently deleting original records
Supported sources
| Source | Default path | Coverage |
|---|---|---|
| Codex | ~/.codex/sessions |
Metadata, messages, tools, raw events, search, live refresh |
| Codex Archived | ~/.codex/archived_sessions |
Browse, search, permanently delete archived sessions; files are not moved and archive state is not restored |
| Claude Code | ~/.claude/{projects,sessions} |
projects/**/*.jsonl and legacy sessions/*.json; conversations, thinking, tools/results, search, live refresh, with history.jsonl enrichment for legacy details when available |
| Claude Cowork | ~/Library/Application Support/Claude{,-3p}/local-agent-mode-sessions (macOS) |
Local task transcripts, thinking, tools, titles, host folders, search, refresh; read-only; support boundaries |
| Gemini CLI | ~/.gemini/tmp/* |
logs.json plus v0.61+ chats/session-*.json[l] full sessions (JSONL replay with $set/$rewindTo/message updates, chats-wins dedup); messages, thinking, tools, token usage (chats), raw events, search, live refresh; boundary notes |
| Grok Build | ~/.grok/sessions |
updates.jsonl and summary.json; streamed text, thinking, tools, rewind filtering, raw events, search, refresh, resume; read-only source; support boundaries |
| Pi | ~/.pi/agent/sessions |
Rebuilds the current branch from v1-v3 JSONL trees; messages, thinking, tools, summaries, raw events, search, live refresh |
| Oh My Pi | ~/.omp/agent/sessions |
Oh My Pi (Pi fork) JSONL sessions, parsed via the Pi adapter; messages, thinking, tools, raw events, search, live refresh, resume; read-only source; support boundaries |
| Kimi Code CLI | ~/.kimi/sessions |
wire.jsonl, working directories, custom titles, streamed content, subagents, tools, raw events, search, live refresh |
| OpenCode | ~/.local/share/opencode/opencode.db |
SQLite; messages, thinking, tools, subagents, raw events, search, WAL live refresh; read-only source |
| Kilo | ~/.local/share/kilo/kilo.db |
SQLite; messages, thinking, tools, subagents, raw events, search, WAL live refresh; read-only source |
| ZCode | ~/.zcode/cli/db/db.sqlite |
SQLite; messages, thinking, tools, compaction markers, raw events, search, WAL live refresh; subagent sessions excluded; read-only source |
| Cursor | Cursor/User under the OS config dir |
IDE conversation records and agent transcripts; browsing, search, statistics, export, local removal; read-only source |
| Devin | Devin/User under the OS config dir and ~/.local/share/devin/cli |
Desktop acp-messages/state.vscdb and CLI sessions.db; browsing, search, statistics, export, local removal, resume; read-only source; support boundaries |
| GitHub Copilot | ~/.copilot/session-state |
Per-session events.jsonl plus workspace.yaml metadata; messages, thinking, tools, raw events, search, live refresh, resume; read-only source |
| Hermes Agent | ~/.hermes (macOS/Linux) or %LOCALAPPDATA%\hermes (Windows) |
SQLite state.db including profiles/<name> databases; messages, thinking, tools, compaction-archive filtering, subagent exclusion, raw events, search, WAL live refresh, resume; read-only source |
| VS Code Copilot Chat | Code/User and Code - Insiders/User under the OS config dir |
Panel chat sessions (workspaceStorage/globalStorage, flat .json and 1.109+ .jsonl append logs); messages, thinking, tools, file edits, custom titles, search, live refresh; empty placeholder sessions excluded; read-only source |
| DeepSeek Harness | ~/.dsh/sessions |
Per-session session[.vN].jsonl[.zstd] multi-frame event logs, newest generation per directory; messages, thinking, tools, titles, token usage, raw events, search, live refresh; empty placeholder sessions excluded; read-only source; support boundaries |
For read-only sources, AllSessions never modifies the agent's original data. You can still remove records locally inside AllSessions; deleting the original records must be done in the corresponding agent.
Install and run
Download the installer for your platform from GitHub Releases.
End users do not need Node.js, pnpm, or Rust.
| Platform | Release file |
|---|---|
| Windows x64 | *-windows-x64-setup.exe |
| macOS ARM64 / x64 | *-mac-<arch>.dmg |
| Debian / Ubuntu Linux x64 | *-linux-x64.deb |
Windows, macOS, and Linux share the same Tauri 2 app shell, system tray, and signed update flow.
[!NOTE]
Some GNOME desktops require an AppIndicator/KStatusNotifierItem extension.macOS builds are not notarized yet; you may need to allow the app in system security settings on first launch.
Configuration
Click Settings in the toolbar to:
- Switch language and appearance
- Edit per-source session paths
- Inspect source health status
- Copy sanitized diagnostics
- View and clear the index cache
- Review the permanent-deletion backup location
Source paths support ~ expansion.
Configuration is stored at the following location under the user config directory:
AllSessions/config.json
You can also point ALLSESSIONS_CONFIG_PATH elsewhere.
Saved configuration takes effect immediately. Once a source has an explicit configured path, it no longer reads its environment variable; choosing "Restore default" falls back to the environment variable or the system default path.
If the configuration file is damaged, AllSessions starts with safe defaults and opens Source Settings automatically — no manual file editing required.
Environment variables
Set environment variables before starting the desktop app; they are read once at startup.
| Variable | Purpose | Default |
|---|---|---|
CODEX_HOME |
Codex data root (single path) | ~/.codex |
CODEX_SESSIONS_DIR |
Codex session roots (path list) | $CODEX_HOME/sessions |
CODEX_ARCHIVED_SESSIONS_DIR |
Archived Codex session roots (path list) | $CODEX_HOME/archived_sessions |
CLAUDE_SESSIONS_DIR |
Claude Code roots (path list) | ~/.claude |
GEMINI_SESSIONS_DIR |
Gemini CLI roots (path list) | ~/.gemini |
CLAUDE_COWORK_SESSIONS_DIR |
Claude Cowork local task roots (path list) | local-agent-mode-sessions under Claude Desktop data directories |
GROK_SESSIONS_DIR |
Grok Build session roots (path list) | $GROK_HOME/sessions |
GROK_HOME |
Grok official data root (single path) | ~/.grok |
PI_SESSIONS_DIR |
Pi session roots (path list) | ~/.pi/agent/sessions |
PI_CODING_AGENT_SESSION_DIR |
Pi's official session directory | — |
PI_CODING_AGENT_DIR |
Pi's official data directory | ~/.pi/agent |
OMP_SESSIONS_DIR |
Oh My Pi session roots (path list) | ~/.omp/agent/sessions |
OMP_AGENT_DIR |
Oh My Pi data directory (single path) | ~/.omp/agent |
KIMI_SESSIONS_DIR |
Kimi Code CLI data roots (path list) | ~/.kimi |
KIMI_SHARE_DIR |
Kimi Code CLI's official data directory | ~/.kimi |
OPENCODE_DB |
OpenCode's official SQLite database path | ~/.local/share/opencode/opencode.db |
KILO_DB |
Kilo's SQLite database path | ~/.local/share/kilo/kilo.db |
ZCODE_DB |
ZCode's official SQLite database path | ~/.zcode/cli/db/db.sqlite |
DEVIN_SESSIONS_DIR |
Devin data roots (path list) | Devin/User and ~/.local/share/devin/cli |
COPILOT_SESSIONS_DIR |
GitHub Copilot session roots (path list) | ~/.copilot/session-state |
HERMES_SESSIONS_DIR |
Hermes Agent data roots (path list) | %LOCALAPPDATA%\hermes (Windows) or ~/.hermes |
HERMES_HOME |
Hermes' official data root (single path) | same as above |
VSCODE_COPILOT_SESSIONS_DIR |
VS Code Copilot Chat data roots (path list) | Code/User and Code - Insiders/User under the OS config dir |
DSH_SESSIONS_DIR |
DeepSeek Harness data roots (path list) | $DSH_HOME or ~/.dsh |
DSH_HOME |
DeepSeek Harness' official data root (single path) | ~/.dsh |
SESSION_VIEWER_CACHE_DIR |
Rust SQLite index directory | Platform cache directory under AllSessions |
SESSION_VIEWER_DISABLE_CACHE |
Set to 1 to disable persistent caching |
unset |
ALLSESSIONS_WORKSPACE_DB |
AllSessions user-data SQLite path | Platform app-data directory |
The *_SESSIONS_DIR variables accept multiple paths separated by the OS path separator:
- macOS / Linux:
: - Windows:
;
For example:
CODEX_SESSIONS_DIR=~/.codex/sessions:~/backups/codex/sessions
A leading ~ expands to the home directory, which also works when the app is launched from Finder/Dock without a shell to expand it.
When the AllSessions-specific variable is unset, Pi and Kimi keep using their official variables.
OPENCODE_DB follows OpenCode's own path rules: an absolute path is used directly, while a relative path resolves under OpenCode's data directory.
KILO_DB accepts absolute paths and resolves relative paths under Kilo's data directory. By default, the stable-channel kilo.db is scanned.
Non-existent source roots are skipped automatically. If the same session ID appears in several roots of one kind, only the first-listed root is kept, so a backup copy is shown once.
[!NOTE]
The Codex provider visibility repair tool only covers session directories under the primaryCODEX_HOME, not additionally listed roots.
Privacy and security
AllSessions works with local AI session data, which may contain:
- Prompts and responses
- Tool output
- Source code
- Working directories
- Provider identifiers
- Other session context
Normal browsing, search, and export never modify agent source data.
After explicit confirmation of permanent deletion, AllSessions creates a local backup before modifying the original Codex, Claude Code, or Gemini CLI records.
The Codex provider maintenance tool likewise only modifies Codex data after you enable maintenance mode and confirm execution.
Claude Cowork, Grok Build, Pi, Oh My Pi, Kimi Code CLI, OpenCode, Kilo, ZCode, Cursor, Devin, GitHub Copilot, Hermes Agent, VS Code Copilot Chat, and DeepSeek Harness are currently read-only. Their sessions can be removed locally from AllSessions, but deleting the original records must be done in the corresponding agent.
Favorites, tags, notes, saved filters, and local archive/removal state are AllSessions user data stored separately in workspace.sqlite. They never modify agent source records and are not cleared along with the rebuildable index cache.
Export and local data
Export redaction is off by default.
When enabled, AllSessions removes known session identifiers and common local-path patterns — but automatic redaction cannot cover every kind of sensitive information.
[!WARNING]
- Review and sanitize export files, logs, screenshots, and issues before sharing.
- Treat
workspace.sqlite, index caches, deletion backups, and maintenance backups as sensitive local data.- Backups contain original records and are not encrypted.
- Never publish real sessions, databases, caches, backups, credentials, or unsanitized local paths.
AllSessions opens no local HTTP port; the frontend and backend communicate only through Tauri IPC and events.
See SECURITY.md for vulnerability reporting.
See THIRD_PARTY_NOTICES.md for Rust dependency licenses.
Codex provider maintenance
AllSessions ships an off-by-default Codex provider maintenance tool for previewing a third-party provider rebucket plan.
Open Tools and enable maintenance mode to preview the plan before deciding whether to apply it.
On apply and rollback:
- Verify Codex App has exited
- Invalidate stale plans after data changes
- Create a backup before writing
- Restore only
model_providerfields, preserving newer data
The tool modifies neither config.toml nor other agents' data.
See Codex provider visibility repair (Chinese) for the full boundary.
Development
Requirements
- Node.js 24
- pnpm 12
- Rust stable
- Tauri 2 prerequisites for your platform
Node.js is used only for frontend builds and release scripts; it is not part of the packaged runtime.
Start development
pnpm install
pnpm desktop:dev
Desktop development (pnpm dev / pnpm desktop:dev) loads the UI through the Vite dev server. Frontend changes hot-reload without restarting the app.
To preview the UI in a browser only:
pnpm web:dev
Desktop APIs and local session loading remain available only inside the Tauri app.
Verify and build
pnpm test
pnpm lint
pnpm build
cargo test --manifest-path src-tauri/Cargo.toml
pnpm licenses:check
pnpm release:build
Project structure
Session store and normalized contract:
src-tauri/src/sessions.rs
Per-source format adapters:
src-tauri/src/sessions/
Other core modules:
cache.rs # caching
backend.rs # Tauri boundary
maintenance.rs # maintenance operations
Read the source architecture before adding a new source.
License
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi