hermes atlas
240·repos hermes·v0.20.5 ★ star this repo

jazzyalex/agent-sessions

Local-first macOS app to browse, search, analyze, and resume supported AI coding-agent session history across Codex, Claude Code, OpenCode, Cursor Agent, Hermes, OpenClaw, Copilot CLI, and more.

★ 812 langSwift licenseMIT updated2026-08-24

Agent Sessions is a local-only macOS application for tracking coding agent usage and browsing session history. It provides live quota monitoring for Codex and Claude sessions and aggregates searchable transcripts from fourteen different agent sources, including Hermes, Cursor, and Devin CLI.

  • Tracks per-session quota burn for Codex and Claude models.
  • Aggregates searchable transcripts and image previews from 14 agent sources.
  • Operates locally with no telemetry or session data uploads.
full readme from github

Agent Sessions (macOS)

Build

App Icon

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, Devin CLI, fx, 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 — 20 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.md and docs/security.md

Download Agent Sessions 5.0.2 (DMG)All ReleasesInstallResume WorkflowsDevelopment

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, Qwen Code, Devin CLI, and fx 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

Quota Meter Session Runway switching its rate unit from percent of quota per hour to tokens per hour to estimated API-equivalent cost per hour

Sessions search with transcript and image preview

Main Sessions window with local agent history and transcript preview

Saved Sessions with restore actions

Saved Sessions window listing stored sessions and restore actions

Image Browser for visual session outputs

Image Browser window with thumbnail grid and selected screenshot preview

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.1

TL;DR - Two more coding agents: Devin CLI and fx (vercel-labs). Both land in the same searchable list as the rest, each with a Settings pane and a resume command.

New in 5.1:

  • Devin CLI, the fourteenth agent source — browsing, search, filtering, Analytics and the transcript view over Devin's shared SQLite store. Devin keeps every retry and edit as a branch, so a session shows the live conversation rather than every path it took to get there. Settings adds binary and storage-root controls, and Copy Resume Command produces devin --resume <id>. Devin keeps only active sessions, so there is no archived history to browse, and image extraction is not yet supported.
  • fx (vercel-labs), the fifteenth — one directory per session under ~/.fx/sessions, with every kind of turn rendered: ordinary replies and their narrated tool steps, background commands and where their output went, the summary that replaces auto-compacted history, and interrupted turns with whatever finished before the cut. Text fx stored as raw bytes rather than UTF-8 decodes back to readable output instead of disappearing.
  • Both agents are contributed, not ported — @thedavidweng added them against the documented recipe from 5.0, which is the first real test of whether that recipe works for someone outside the project. Both stay steward wanted until someone running the CLI confirms resume end to end; the support matrix says so on every surface.

Recent releases — 5.0: agents became plug-in adapters and Qwen Code joined as the thirteenth source. 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.db storage.
  • 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.
  • Devin CLI sessions (new in 5.1) participate in browsing, search, filtering, Analytics, and resume workflows from the shared SQLite sessions.db under the CLI data directory, with working directories read from the sessions table's working_directory column. Devin keeps only active sessions in that database, so there is no archived-history surface; the records carry inline base64 images, but image extraction is not yet supported. Resume command plans are tested against probe-advertised capabilities, but remain end-to-end untested because authentication blocked a disposable run.
  • fx (vercel-labs) sessions (new in 5.1) participate in browsing, search, filtering, Analytics, and resume workflows from the per-session checkpoint.json transcripts under ~/.fx/sessions, with working directories read from each session's session.json. Resume command plans are tested against probe-advertised capabilities but remain end-to-end untested against an authenticated run; 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
Devin CLI 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 formdocs/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 showing Codex and Claude 5h/weekly limits with Session Runway per-session burn-rate bars

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

  1. Download AgentSessions-5.0.2.dmg
  2. 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

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/projects and ~/.cursor/chats
    • ~/.factory/sessions and ~/.factory/projects
    • ~/.hermes/state.db and ~/.hermes/sessions
    • ~/.openclaw/agents and legacy ~/.clawdbot/agents
    • ~/.pi/agent/sessions
    • ~/.local/share/opencode/opencode.db and ~/.local/share/opencode/storage/session
  • Details: docs/PRIVACY.md and docs/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.