{"id":51535165,"url":"https://github.com/testy-cool/agentconvos","last_synced_at":"2026-07-09T07:30:48.284Z","repository":{"id":349992004,"uuid":"1203642548","full_name":"testy-cool/agentconvos","owner":"testy-cool","description":"TUI for browsing, searching, exporting, and analyzing Claude Code conversation history","archived":false,"fork":false,"pushed_at":"2026-05-31T09:48:19.000Z","size":360,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-31T11:13:54.029Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/testy-cool.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-07T08:24:10.000Z","updated_at":"2026-05-31T09:48:22.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/testy-cool/agentconvos","commit_stats":null,"previous_names":["testy-cool/convo-explorer","testy-cool/cc-convo-explorer","testy-cool/agentconvos"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/testy-cool/agentconvos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/testy-cool%2Fagentconvos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/testy-cool%2Fagentconvos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/testy-cool%2Fagentconvos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/testy-cool%2Fagentconvos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/testy-cool","download_url":"https://codeload.github.com/testy-cool/agentconvos/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/testy-cool%2Fagentconvos/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35291639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-09T02:00:07.329Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-07-09T07:30:48.199Z","updated_at":"2026-07-09T07:30:48.277Z","avatar_url":"https://github.com/testy-cool.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# agentconvos\n\nDiscover, query, and browse AI coding agent conversations. Works with Claude Code, Codex, and Pi.\n\nUse as a **CLI** (`agentconvos --context --json`), a **Python library** (`from agentconvos import scan_projects`), or an **interactive TUI** (`agentconvos`).\n\n\u003cimg src=\"assets/demo.svg\" alt=\"agentconvos demo\"\u003e\n\n## Install\n\n```bash\nuv tool install \"agentconvos[ai] @ git+https://github.com/testy-cool/agentconvos.git\"\n```\n\nWithout Gemini analysis: drop `[ai]`. Requires Python 3.12+.\n\n## CLI\n\n### Project context (the fast path)\n\n```bash\nagentconvos --last              # most recent conversation for cwd\nagentconvos --last 3            # last 3\nagentconvos --context           # last 5 with summaries\nagentconvos --context --json    # structured, for piping to other tools\n```\n\n### Search\n\n```bash\nagentconvos --search \"auth middleware\"\nagentconvos --search \"auth\" --source claude --json\n```\n\n### List and filter\n\n```bash\nagentconvos --list\nagentconvos --list --source codex --after 2026-05-01 --json\nagentconvos --list --json | jq '.projects[].conversations[].summary'\n```\n\n### Resume and handoff\n\n```bash\nagentconvos --resume \u003cid\u003e              # resume in native CLI\nagentconvos --handoff                  # export context, start new session\nagentconvos --handoff select           # pick from list\nagentconvos --handoff codex            # latest Codex conversation\nagentconvos --handoff --handoff-agent codex   # hand off latest conversation into Codex\nagentconvos --handoff --yolo           # hand off into Codex with codex --yolo\n```\n\n### Export\n\n```bash\nagentconvos --concat \u003cid\u003e              # markdown export\nagentconvos --concat \u003cid\u003e --detail tools    # include tool call summaries\nagentconvos --concat \u003cid\u003e --detail full     # include everything\n```\n\n### Analyze with Gemini\n\nRequires `GEMINI_API_KEY` env var or `.env` file. Get a key at [aistudio.google.com](https://aistudio.google.com/apikey).\n\n```bash\nagentconvos --analyze \u003cid\u003e\nagentconvos --analyze \u003cid1\u003e \u003cid2\u003e --model gemini-3.1-pro-preview\nagentconvos --analyze \u003cid\u003e --prompt \"What tools were used most?\"\n```\n\n### JSON output\n\n`--json` works with `--list`, `--search`, `--last`, and `--context`. Output includes session summaries, token estimates, file paths, and UUIDs.\n\n## Library API\n\n```python\nfrom agentconvos import scan_projects, parse_jsonl, search, get_meta, get_stats\n\n# Discover and filter\nprojects = scan_projects(source=\"claude\", after=\"2026-05-01\")\n\n# Parse into normalized turns\nturns = parse_jsonl(projects[0].conversations[0].path)\n\n# Search across all sessions\nhits = search([c.path for p in projects for c in p.conversations], \"auth\")\n\n# Token and cost stats\nstats = get_stats(projects[0].conversations[0].path)\n```\n\n## TUI\n\n```bash\nagentconvos\n```\n\nInteractive tree grouped by agent (Claude Code, Codex, Pi) with search, multi-select, preview, export, and Gemini analysis.\n\n| Key | Action |\n|-----|--------|\n| `/` | Search/filter |\n| `S` | Toggle select |\n| `R` | Resume session |\n| `H` | Handoff to new session |\n| `E` | Export markdown |\n| `A` | Analyze with Gemini |\n| `Tab` | Switch panels |\n| `Q` | Quit |\n\n## File locations\n\n| What | Where |\n|------|-------|\n| Claude Code logs | `~/.claude/projects/{project}/*.jsonl` |\n| Codex logs | `~/.codex/sessions/*.jsonl`, `~/.codex/conversations/*.json` |\n| Pi logs | `~/.pi/agent/sessions/**/*.jsonl` |\n| Summaries | `~/.claude/convo-explorer/summaries/` |\n| Analyses | `~/.claude/convo-explorer/analyses/` |\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftesty-cool%2Fagentconvos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftesty-cool%2Fagentconvos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftesty-cool%2Fagentconvos/lists"}