AGF Local Coding Session Finder
Search and resume locally stored AI coding sessions from one terminal interface.
- Source repo
- subinium/agf
- Stars
- ★ 156
- Last updated
- 4d ago
- License
- MIT
- Primary language
- Rust
- FA score
- 96/100 · Excellent
At a glance
- How it runs
- Works with
- Universal · cross-platformCodex · Claude Code
- Cost
- Free, no paid service needed
- Setup effort
- Low · running in minutes
- You'll need
- Typical use
- A developer using Claude Code, Codex, and Gemini CLI who wants one terminal list for finding the correct prior session.
- Not a fit if
- Teams that need cloud-based session synchronization across devices
- Developers working mainly with Amp or GitHub Copilot
- Users expecting AGF to delete sessions for every provider
- Source review
- 96/100 · Excellent
What does this agent do, and when should you use it?
AGF is a local-first Rust CLI that combines the saved sessions of 16 AI coding agents into one fuzzy-searchable TUI. It reads the JSON, JSONL, and SQLite stores those tools already maintain, without requiring an account, cloud synchronization, or another resident agent process. Users can browse project, path, branch, and optional summary data, or bypass the interface with `agf resume` and hand the selected session to its native agent command. For automation, the repository also provides versioned JSON commands, a read-only stdio MCP server, and a portable AGF skill for agent integration. Its operating boundary is the user's macOS, Linux, or Windows machine: AGF discovers and dispatches sessions, while the relevant agent CLI performs the actual resume.
AGF scans the local session directories or databases of Muse Code, Claude Code, Codex, Grok Build, Kimi Code, Qwen Code, Prime Agent, Gemini CLI, Antigravity CLI, Cursor CLI, OpenCode, Kiro, pi, Hermes, Oh My Pi, and Yolop, then normalizes the records into one searchable list. Its TUI fuzzy-matches project names, paths, and branches, with F2 optionally adding a bounded number of summaries; choosing a record constructs and runs that provider's native resume command. agf search, agf show, agf resume-plan, and agf capabilities emit versioned JSON, and resume-plan returns literal arguments, working directory, and scoped storage environment without launching anything. agf mcp exposes the same read-only API over stdio and can restrict records to an absolute project path. The interactive interface also supplies details, sorting, project grouping, permission or approval mode selection, and bulk deletion, although deletion is disabled for providers whose indexes or sidecar artifacts cannot safely be updated this way.
- A developer using Claude Code, Codex, and Gemini CLI who wants one terminal list for finding the correct prior session.
- A user who closed a terminal or forgot a session ID and needs to recover context by project, path, branch, or summary.
- An engineer moving among many repositories who wants
agf resume <query>instead of opening each agent's native picker. - A tooling team that needs versioned JSON or a read-only MCP interface for querying existing coding sessions.
- A user cleaning old work who wants to inspect sessions across projects and multi-select records that AGF can safely delete.
- A privacy-conscious team that wants to index existing local session stores without adopting a cloud synchronization service.
How do you install or deploy this agent?
The direct Cargo installation requires Rust 1.88 or newer and a C compiler for bundled SQLite:
cargo install agf --locked
agfOn macOS or Linux, Homebrew is another supported route:
brew install subinium/tap/agfPrebuilt binaries for macOS, Linux, and Windows do not require a Rust toolchain. To enable parent-shell directory changes, run the optional setup command, then restart or reload the shell as instructed:
agf setupTo install from source:
git clone https://github.com/subinium/agf.git
cd agf
cargo install --path . --locked
agf setupResuming also requires the CLI belonging to the selected session, such as codex, claude, gemini, or muse. Shell integration is not required for the TUI, JSON commands, or MCP server.
How do you use this agent?
Start the interactive session browser:
agfResume the best fuzzy match without opening the TUI:
agf resume project-nameFilter searches and resumes to Muse Code:
agf list --agent muse
agf resume --agent muse project-name
agf search parser --agent muse --include-summariesFor scripts and agent integrations, inspect search results, one session, a non-launching resume plan, and available capabilities through the JSON commands:
agf search parser --agent codex --limit 10
agf show SESSION_ID --agent codex --include-summaries
agf resume-plan SESSION_ID --agent codex
agf capabilitiesRun the stdio MCP server and scope its results to one project:
agf mcp --agent codex --project /absolute/project/pathInside the TUI, type to search, navigate with arrow keys or Ctrl+K/Ctrl+J, use Enter for the action menu, Ctrl+L for details, Tab to change the agent filter, F2 to toggle summary search, and Ctrl+D for bulk deletion.
What are this agent's strengths and limitations?
- One interface covers 16 coding agents while reading each tool's actual local JSON, JSONL, or SQLite storage.
- The local-first design requires no account, cloud sync, or additional resident agent process, and its JSON and MCP query paths are read-only.
- It supports human and automated workflows through a full TUI, quick resume, versioned JSON,
resume-plan, and stdio MCP. - Resume handling freezes the resolved executable, storage roots, working directory, and applicable environment before changing directories.
- Unicode and CJK search, dark and light palettes,
NO_COLOR, and non-color selection cues make the TUI usable across varied terminals.
- It manages locally retained, resumable sessions only and does not synchronize them between machines.
- Actual resumption depends on the provider's CLI; AGF does not replace programs such as
codex,claude, ormuse. - Direct deletion is disabled for Prime Agent, Grok Build, Kimi Code, Qwen Code, Gemini, Antigravity, and Muse Code.
- Amp and GitHub Copilot are explicitly outside the current scanner set.
- Some integrations have documented boundaries: Antigravity uses only its default storage root, while Hermes resumes in the current shell directory.
- Cargo builds require Rust 1.88+ and a C compiler, and parent-shell directory changes require separate shell-wrapper setup.
How does this agent compare with similar options?
Compared with opening each agent's native session picker or manually searching history files, AGF provides one searchable view across 16 tools plus common JSON and MCP query interfaces. It does not replace those agents, however: each native CLI still performs the resume, and some providers' sessions must be deleted through their own picker to preserve upstream state.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| AGF Local Coding Session Finder This agent | 96 · Excellent | CLIFree | ★ 156 | 4d ago | Rust | Codex · Claude Code |
| OpenCrabs Terminal Agent | 53 · Major gaps | CLIFree + model costs | ★ 971 | 1d ago | Rust | ChatGPT · Codex · OpenAI API · Claude API |
| Herdr Terminal Agent Runtime | 49 · Major gaps | CLIFree | ★ 42k | today | Rust | — |
| deja-vu | 75 · Good | CLIFree | ★ 1.1k | 1d ago | Go | Codex · Claude Code |
How does FollowAgents rate this agent?
Why each dimension lost points
The product is primarily local and read-oriented, with no account, cloud synchronization, or extra resident process. JSON, MCP, and resume-plan are expressly described as read-only or review interfaces; summary search is opt-in, and the documentation warns about private or untrusted text, CSV formula prefixes, and the fact that project scope is not an OS sandbox. Resume, deletion, configuration, and shell-profile effects are documented; bulk deletion has a distinct mode and confirmation screen, while deletion is disabled for providers where it could corrupt related state. Locked dependencies, RustSec auditing, constrained CI permissions, and release verification provide strong dependency-security evidence. Deductions apply because no recovery or trash strategy is documented for completed deletions and no automatic rollback is described for shell-profile edits. Attribution reaches the repository, MIT copyright holder, and upstream projects, but publisher identity is unverified and no clearer maintainer or security contact is supplied.
The README, Cargo metadata, CI, release workflow, and PTY tests consistently describe the version, supported platforms, capabilities, and requirements. Rust 1.88, the C compiler requirement, optional MCP feature, prebuilt packages, and required provider executables are documented. User-visible scan and settings-save failures are described, while the supplied tests explicitly cover scan-failure status and terminal cleanup. No deduction was made for absent runtime results because execution-only properties are outside this static assessment.
Interactive users, scripts, agent tools, and MCP clients receive distinct interfaces through the TUI, versioned JSON, resume-plan, and stdio MCP. The source documents 16 providers, cross-platform paths, environment overrides, no-color and limited-color terminals, shell differences, and optional features. Boundaries between reading, launching, and deletion are explicit, as are unsupported providers and unemulated configuration layers. Precise commands, agent filters, an explicit Cursor executable override, and refusal to treat a generic agent executable as Cursor make triggering well scoped. The supplied files support full marks across these criteria.
The README has strong organization covering installation, upgrades, commands, controls, configuration, storage, limitations, contribution, and licensing. Command and provider naming are stable, including a documented muse-code alias. Numerous examples are present, but there is no dedicated FAQ or systematic troubleshooting section, so examples_and_faq loses one point. The complete MIT text matches package metadata. Version metadata, semantic tag checks, release gates, and a CHANGELOG reference exist, but the CHANGELOG contents were not supplied, preventing full credit for versioning_changelog. Issues, PRs, and a contribution path are identified, but no explicit maintainer, security-reporting contact, or maintenance commitment is shown, so maintenance_responsibility also loses one point.
The tool consolidates discovery of local sessions from many agents and constructs native resume actions, directly addressing the stated cross-tool retrieval problem. Its TUI, quick resume, versioned JSON, MCP interface, project filtering, and reviewable resume plans produce outputs suitable for both people and automation. Reusing existing local stores, requiring no account or cloud service, offering prebuilt binaries, and allowing MCP to be omitted support strong marginal value and favorable cost-benefit. Unexecuted performance and correctness claims were not used as positive evidence.
Core claims can be traced across the README, Cargo.toml, CI, release workflow, and test fixtures. Platform coverage, version requirements, locked dependencies, provider count, read-only behavior, failure presentation, and terminal compatibility receive cross-file corroboration. The documentation clearly labels unverified upstream overrides, unemulated configuration layers, bounded previews, non-sandbox scope, and unsupported providers, separating supported facts from limitations and inference. Because this was a static review without independent execution, confidence remains low.
- AGF reads local session stores that may contain private prompts, responses, project paths, and branch information; treat JSON and MCP output as sensitive data.
- Project filtering is not an operating-system sandbox. Add process and filesystem isolation before exposing AGF to an untrusted MCP client or script.
- Bulk deletion has confirmation, but the supplied material describes no trash, backup, or undo mechanism; back up relevant session stores first.
- agf setup edits a shell profile and may leave an existing marker unchanged; inspect the target profile and retain its original contents for manual recovery.
- The release workflow generates checksums, but the supplied evidence shows no artifact signatures, reproducible-build attestation, or dependency provenance attestation; verify binaries according to organizational policy.
- The publisher is not verified by the FollowAgents enterprise registry. This means the identity is unknown, not that the project is malicious.
FAQ
Does AGF upload session data to a cloud service?
Can AGF resume every session by itself?
Do the JSON and MCP interfaces modify agent storage?
search, show, resume-plan, capabilities, and the stdio MCP server use the read-only API. resume-plan reports the proposed invocation without launching the agent.Will AGF repair an unreadable or incompatible session store?
Can AGF delete sessions from every supported provider?
agy's /resume picker.