Agent Sessions (macOS)
August 18, 2026 · View on GitHub
|
|
Live per-session quota burn for Codex and Claude — see which session is eating your 5-hour and weekly limits, priced per model. Plus searchable transcripts across Codex, Claude, OpenCode, Cursor, GitHub Copilot CLI, Pi, Kimi Code, Grok CLI, Qwen Code, Antigravity CLI, Hermes, and OpenClaw, with image browsing and one-click resume where the source supports them. macOS, local-only. Session-Bench: how ten agents' session formats score — 19 pass/fail gates, evidence behind every cell. |
If Agent Sessions hands you back something you thought you'd lost, star the repo. It is the only thing this project asks for.
- Requires: macOS 14+
- License: MIT
- Security & Privacy: Local-only. No telemetry. Details:
docs/PRIVACY.mdanddocs/security.md
Download Agent Sessions 5.0.1 (DMG) • All Releases • Install • Resume Workflows • Development
New in 5.0 — agents are now plug-in adapters, Qwen Code joins as the thirteenth source, and adding the agent you use is a documented recipe (26 shared files before, 12 now). See what's new ↓
Overview
Run three agents at once and a normal quota meter tells you "60% used" — not which one spent it. Agent Sessions attributes burn to the individual session, live, against your Codex and Claude 5-hour and weekly windows. Pick the lens you want (5-hour, weekly, tokens/hour, or dollars); the $ lens prices each model in a session at its own rate, so an Opus orchestrator driving Sonnet subagents is costed per model instead of blended into one number.
It's also a local-first Mac app for finding useful work coding agents already wrote to disk — Codex, Claude, OpenCode, Cursor Agent, Hermes, OpenClaw, Antigravity, GitHub Copilot CLI, Pi, Kimi Code, Grok CLI, and Qwen Code histories in one searchable view, with transcript inspection, image browsing, saved-session recovery, and resume commands for supported CLIs.
Session Runway — read the same burn as % of quota, tokens/hour, or cost/hour
Sessions search with transcript and image preview
Saved Sessions with restore actions
Image Browser for visual session outputs
Security & Privacy
- Local-first: session data stays on your Mac.
- No telemetry, analytics, remote logging, advertising identifiers, or session-history uploads.
- Reads local session folders you choose, plus supported default CLI locations.
- Builds local indexes/databases for search and navigation.
- Explicit actions may open Terminal/iTerm2 resume commands or run status/probe cleanup workflows.
- The only network activity is optional Sparkle update checks and an optional read-only fetch of a public model-price list (for the runway's $ estimate) — neither sends any personal or session data.
Details: docs/PRIVACY.md and docs/security.md.
What's New in 5.0
TL;DR - Agents are now plug-in adapters instead of hand wiring across every surface, which is why this release is 5.0. Qwen Code joins as the thirteenth source, and adding a fourteenth is a documented recipe: 26 shared-file edits before, 12 now, each one listed.
New in 5.0:
- Plug-in adapters for every agent — the session list, search, the filter pills, Analytics, the Settings panes and the launch state each carried their own hand-written list of agents, so an agent could appear in one and be quietly missing from another. They all derive from a single source description now. Switching an agent off reaches every surface at once, and adding an agent is a documented, tested recipe rather than fourteen scattered edits.
- Qwen Code, the thirteenth agent source — local JSONL chats in browsing, search,
filtering, Analytics and the transcript view, with reasoning and tool activity, rewound
branches reconstructed along the active parent chain, and Settings controls for binary
and storage root. Active chats offer
--resume; archived histories stay browse-only. Format verified against real 0.14.3 transcripts. - Add the agent you use — a proposal form, an implementation brief you can hand to your own coding agent, and a PR template, surfaced once from inside the app by a dismissible card. Shipped agents can pick up a steward who keeps their format verified as the CLI moves.
- The agent switches reach everywhere — disabled agents no longer surface in filter-view search results, Kimi and Grok report when their loading has finished, and OpenClaw stops marking Analytics out of date on every launch.
- OpenCode and Hermes transcripts are searchable — both store sessions in SQLite behind one shared file path, and search ingest could not tell their sessions apart, so their transcript text was never indexed.
Recent releases — 4.8: Grok CLI joins as the eleventh agent source, and Analytics counts every agent you have enabled. 4.7: Kimi Code joins as the tenth source, and active Claude cloud sessions appear in the Quota Meter. 4.6.4: Compact and Full Agent Cockpit retired, leaving the Quota Meter as the only mode. 4.6: paste-a-cookie Claude web usage, no CLI or Full Disk Access needed. Full history in the changelog.
Core Features
- Browse and search Codex CLI, Codex Desktop, and Codex VS Code sessions in one place.
- Browse Claude CLI and Claude Desktop sessions with consistent labels and project context.
- Browse Cursor Agent transcripts from Cursor's local storage, enriched with Cursor chat metadata when available.
- Hermes Agent sessions participate in browsing, search, filtering, analytics, and resume workflows, including current
~/.hermes/state.dbstorage. - OpenClaw sessions participate in browsing, search, filtering, image browsing, and deleted-session visibility while ignoring trajectory traces. OpenClaw resume is not supported.
- Pi CLI sessions now participate in browsing, search, filtering, and resume workflows.
- Qwen Code sessions (new in 5.0) participate in browsing, search, filtering, and Analytics, including active-chain tool calls and reasoning recorded in local JSONL history. Active-chat resume actions are implemented from the installed CLI's help and reader behavior, but remain end-to-end untested because authentication blocked a disposable 0.21.13 run; archived Qwen histories remain browse-only. Qwen image extraction is not yet supported.
- Unified browsing across supported agents, with strict filtering, saved sessions, and a single session list.
- Unified Search and Image Browser across sessions, plus in-session Find for fast transcript navigation.
- Readable tool calls/outputs and navigation between prompts, tools, and errors.
- Right-click Copy Resume Command or Resume for supported CLI sessions, with Terminal.app, iTerm2, and Warp launch targets.
- Quota Meter with Session Runway shows live burn rate per session against your Codex and Claude 5-hour and weekly limits — in percent, tokens/hour, or dollars priced per model.
- Local-only indexing designed for large histories.
Agent Support Status
Every agent here is read from its own local session files. Status says who keeps that reading correct as the agent's format changes.
| Agent | Status |
|---|---|
| Codex | Maintained |
| Claude Code | Maintained |
| Cursor Agent | Steward wanted |
| GitHub Copilot CLI | Steward wanted |
| OpenCode | Steward wanted |
| Antigravity CLI | Steward wanted |
| Pi | Steward wanted |
| Kimi Code | Steward wanted |
| Grok CLI | Steward wanted |
| OpenClaw | Steward wanted |
| Hermes | Steward wanted |
| Qwen Code | Steward wanted |
Maintained — the maintainer verifies it himself. Steward-verified — a named steward re-checks the format. Steward wanted — nobody has adopted it yet. Names, dates, and verified versions are in STEWARDS.md.
Help add — and keep — your agent
Missing agent? Open the new agent source form — docs/CONTRIBUTING.md explains what evidence makes a proposal usable, and you do not need to write Swift. Already using one of the agents above? Become its steward: you get pinged two or three times a year to run one command against your own sessions and say whether the format still reads correctly. It takes about ten minutes, needs no commit rights, and your name goes on the entry. Details and signup in STEWARDS.md.
Quota Meter — Session Runway
An ordinary quota meter says "60% used." It won't say which of your three running agents spent it. The Quota Meter attributes burn to the individual session, live, against your Codex and Claude 5-hour and weekly windows.
- Per-session burn bars — each active session gets its own rate against the live window, so you know which one to stop.
- Four lenses — 5-hour, weekly, tokens/hour, or dollars; chosen from the meter and remembered.
- Priced per model — the
$lens rates each model in a session at its own rate, so an Opus orchestrator driving Sonnet subagents is costed at what each actually runs at rather than blended into one number. - Honest states — a calm "no limit" when a provider drops a window, and "can't verify" rather than a wrong number if usage data changes shape.
- Stays where you put it — drag it anywhere, right-click for controls. Show or hide it from the View menu (⌘⌥⇧C).
Quota Meter Setup
Prerequisites
- Agent Sessions with live session detection enabled
- Agents running in a terminal, or in Codex or Claude Desktop
Ideal Setup
Session rows read best when your terminal names them clearly:
- Set the terminal window title to the repo name
- Run that repo's agents in that window
- Give each tab/session its own clear name
- Use the same name for the tab, session, and badge
Layout
- One repo per desktop/Space if possible
- Or keep several on one desktop if you prefer
- Keep the Quota Meter pinned in a corner so you can always see activity
Install
Option A — Download DMG
- Download AgentSessions-5.0.1.dmg
- Drag Agent Sessions.app into Applications.
Option B — Homebrew
brew tap jazzyalex/agent-sessions
brew install --cask agent-sessions
Automatic Updates (Sparkle)
Agent Sessions uses Sparkle for automatic updates (signed + notarized).
To force an update check (for testing):
defaults delete com.triada.AgentSessions SULastCheckTime
open "/Applications/Agent Sessions.app"
Documentation
- Guides:
- Release notes:
docs/CHANGELOG.md - Monthly summaries:
docs/summaries/ - Privacy:
docs/PRIVACY.md - Security:
docs/security.md - Maintainers:
docs/deployment.md
Resume Workflows
- Right-click any supported CLI session and choose Copy Resume Command to get the exact CLI command for that session.
- Open supported Resume sessions in your preferred terminal: Terminal.app, iTerm2, or Warp.
- Use Unified Search (across sessions) and Find (within a session) to jump to relevant tool calls and outputs quickly.
Privacy & Security
- Local-only. No telemetry.
- Reads agent session directories in read-only mode:
~/.codex/sessions~/.claude/projects~/.gemini/antigravity/brain~/.copilot/session-state~/.cursor/projectsand~/.cursor/chats~/.factory/sessionsand~/.factory/projects~/.hermes/state.dband~/.hermes/sessions~/.openclaw/agentsand legacy~/.clawdbot/agents~/.pi/agent/sessions~/.local/share/opencode/opencode.dband~/.local/share/opencode/storage/session
- Details:
docs/PRIVACY.mdanddocs/security.md
Development
Prerequisites:
- Xcode (macOS 14+)
Build:
xcodebuild -project AgentSessions.xcodeproj -scheme AgentSessions -configuration Debug -destination 'platform=macOS' build
Tests:
xcodebuild -project AgentSessions.xcodeproj -scheme AgentSessionsTests -destination 'platform=macOS' test
Contributing:
Don’t see your coding agent? You can propose it, contribute a sanitized format fixture, or use the AI-agent brief to prepare a draft integration PR. Every source remains ordinary reviewed code; Agent Sessions does not download provider plugins or infer support from an installed binary.
License
MIT. See LICENSE.