Skip to content

subinium/agf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

agf

CI Release License: MIT

A fast TUI to find, resume, and manage your AI coding agent sessions. Supports Claude Code, Codex, OpenCode, pi, Kiro, Cursor CLI, and Gemini — all in one place.

Built with SuperLightTUI (SLT) — an immediate-mode terminal UI library for Rust.

agf demo

Quick Start

brew install subinium/tap/agf
agf setup

Restart your shell. Then just type agf.

Quick Resume (no TUI)

agf resume project-name   # fuzzy-matches and resumes the best match directly

Why agf?

If you use AI coding agents, you've probably done this:

  1. Forget which project you were working on
  2. cd into the wrong directory
  3. Try to remember the session ID
  4. Give up and start a new session

agf fixes that. It scans all your agent sessions, shows them in a searchable list, and lets you resume with one keystroke.

Features

  • Unified view — Claude Code, Codex, OpenCode, pi, Kiro, Cursor CLI, and Gemini sessions in one list
  • Fuzzy search — find any session by project name or summary
  • One-key resume — select a session and hit Enter
  • Agent filter — Tab to cycle through agents
  • Smart cd — jump to any project directory
  • Bulk deleteCtrl+D to multi-select and batch-delete sessions
  • New session — launch a new agent session with optional permission mode
  • Quick resumeagf resume <query> to skip the TUI and resume directly
  • Auto-detection — only shows agents installed on your system
  • Git branch — shows the current branch of each project's working directory
  • Worktree support — detects Claude Code --worktree sessions; shows worktree name in the list and parent branch in the detail view

Keybindings

Browse

Key Action
Type anything Fuzzy search
/ Ctrl+K Ctrl+J Navigate
[ ] Cycle session summary
Enter Open action menu
/ Ctrl+L Preview session details
Tab / Shift+Tab Cycle agent filter
Ctrl+S Cycle sort (time / name / agent)
Ctrl+D Enter bulk delete mode
? Help / settings
Esc Quit

Bulk Delete (Ctrl+D)

Key Action
Space Toggle selection + move down
/ Ctrl+K Ctrl+J Navigate
Enter Confirm deletion (when items selected)
Esc Cancel and return to browse

New Session (Agent Select)

Key Action
1-9 Quick select agent
Tab Open permission/approval mode picker
Enter Launch with default mode
Esc Back

Config

Optional. Create ~/.config/agf/config.toml:

sort_by = "time"            # "time" | "name" | "agent"
max_sessions = 200
search_scope = "name_path"  # "name_path" (default) | "all" (include summaries)
summary_search_count = 5    # number of summaries included when search_scope = "all"

You can also edit search_scope and summary_search_count interactively by pressing ? in the TUI.

Supported Agents

Agent Resume Command Data Source
Claude Code claude --resume <id> ~/.claude/history.jsonl + ~/.claude/projects/
Codex codex resume <id> ~/.codex/sessions/**/*.jsonl
OpenCode opencode -s <id> ~/.local/share/opencode/opencode.db
pi pi --resume ~/.pi/agent/sessions/<cwd>/*.jsonl
Kiro kiro-cli chat --resume ~/Library/Application Support/kiro-cli/data.sqlite3
Cursor CLI cursor-agent --resume <id> ~/.cursor/projects/*/agent-transcripts/*.txt
Gemini gemini --resume <id> ~/.gemini/tmp/<project>/chats/session-*.json

Session Storage Paths

Agent Format Default Path
Claude Code JSONL ~/.claude/history.jsonl (sessions)
~/.claude/projects/*/ (worktree detection)
Codex JSONL ~/.codex/sessions/YYYY/MM/DD/rollout-*.jsonl
OpenCode SQLite ~/.local/share/opencode/opencode.db
pi JSONL ~/.pi/agent/sessions/--<encoded-cwd>--/<ts>_<id>.jsonl
Kiro SQLite macOS: ~/Library/Application Support/kiro-cli/data.sqlite3
Linux: ~/.local/share/kiro-cli/data.sqlite3
Cursor CLI SQLite + TXT ~/.cursor/chats/*/<id>/store.db
~/.cursor/projects/*/agent-transcripts/<id>.txt
Gemini JSON ~/.gemini/tmp/<project>/chats/session-<date>-<id>.json
<project> is a named dir or SHA-256 hash of the project path
Project paths resolved via ~/.gemini/projects.json

Install (other methods)

From source
git clone https://github.com/subinium/agf.git
cd agf
cargo install --path .
agf setup

Upgrading to v0.6

v0.6 changes the shell integration method. After upgrading, run agf setup again (or restart your shell) to apply the new wrapper.

See CHANGELOG.md for full details.

Requirements

  • macOS or Linux
  • One or more of: claude, codex, opencode, pi, kiro-cli, cursor-agent, gemini

Contributing

Issues and PRs are welcome.

Contributors

Contributors

License

MIT


Agent Support Roadmap

Amp is not yet supported. Amp stores sessions on a remote server, making it difficult to reliably resolve project paths from session metadata. We are monitoring upstream changes and will add support when feasible.

About

Agent Finder — One TUI to find, resume, and manage AI coding agent sessions (Claude Code, Codex, Opencode, Gemini)

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors