Observed since 21 Oct, 10:16 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Find and resume Claude Code conversations using smart hybrid extraction and JIT indexing
Find and resume past AI coding conversations using smart hybrid extraction and JIT indexing. Supports Claude Code, OpenCode, and Codex CLI — search across all your AI conversations from a single tool.
ai-conversation-search command with intuitive subcommands--date yesterday, --since, --until parametersInstall the complete plugin (skill + CLI tool instructions) directly in Claude Code:
# Add this repo's marketplace
/plugin marketplace add yoshi47/ai-conversation-search
# Install the plugin
/plugin install conversation-search
Then follow the installation instructions shown by Claude to:
uv tool install ai-conversation-searchai-conversation-search init# Using uv (recommended)
uv tool install ai-conversation-search
# Or using pip
pip install ai-conversation-search
ai-conversation-search init
This creates the database and indexes your last 7 days of conversations from all supported sources (Claude Code, OpenCode, Codex CLI).
mkdir -p ~/.claude/skills/conversation-search
cp skills/conversation-search/* ~/.claude/skills/conversation-search/
# Search for conversations (shows session ID and resume commands)
ai-conversation-search search "authentication bug"
# Search with calendar date filters
ai-conversation-search search "react hooks" --date yesterday
ai-conversation-search search "auth" --since 2025-11-10 --until 2025-11-13
# List conversations by date
ai-conversation-search list --date yesterday
ai-conversation-search list --since "2025-11-01"
# Traditional relative time filters still work
ai-conversation-search search "query" --days 30
# Filter by source
ai-conversation-search search "query" --source opencode
ai-conversation-search list --source codex --days 7
# Get resume commands for a specific message
ai-conversation-search resume <MESSAGE_UUID>
# Use with uvx (no install needed)
uvx ai-conversation-search search "query"
Once installed, ask Claude:
Topic-based queries:
Temporal queries (NEW in v0.4.8):
Hybrid queries:
Auto-Installation: If the CLI tool isn't installed, the skill will automatically attempt to install it via uv or pip, then initialize the database. In most cases, everything "just works" after installing the plugin!
Claude will show you the session ID, project path, and exact commands to resume the conversation.
ai-conversation-search initInitialize database and perform initial indexing
ai-conversation-search init [--days 7] [--no-extract] [--force]
ai-conversation-search indexJIT index conversations (instant, no AI calls)
ai-conversation-search index [--days N] [--all] [--no-extract]
IMPORTANT: The skill always runs index before search for fresh data.
ai-conversation-search searchSearch conversations with flexible date filtering
# Traditional relative time
ai-conversation-search search "query" [--days N] [--project PATH] [--source SOURCE] [--content] [--json]
# Calendar date filtering (v0.4.8+)
ai-conversation-search search "query" --date yesterday [--json]
ai-conversation-search search "query" --date 2025-11-13 [--json]
ai-conversation-search search "query" --since 2025-11-10 --until 2025-11-13 [--json]
# Date formats: YYYY-MM-DD, "yesterday", "today"
# Note: --days cannot be combined with --date/--since/--until
# Filter by source (claude_code, opencode, codex)
ai-conversation-search search "query" --source opencode --json
ai-conversation-search contextGet context around a specific message
ai-conversation-search context MESSAGE_UUID [--depth 5] [--content] [--json]
ai-conversation-search listList recent conversations with calendar date support
# Traditional relative time
ai-conversation-search list [--days 7] [--limit 20] [--source SOURCE] [--json]
# Calendar date filtering (v0.4.8+)
ai-conversation-search list --date yesterday [--json]
ai-conversation-search list --since 2025-11-10 --until today [--json]
ai-conversation-search treeView conversation tree structure
ai-conversation-search tree SESSION_ID [--json]
| Source | Data Location | Session Prefix |
|---|---|---|
| Claude Code | ~/.claude/projects/{project}/{session}.jsonl | (none) |
| OpenCode | ~/.local/share/opencode/opencode.db (SQLite) | oc: |
| Codex CLI | ~/.codex/sessions/{year}/{month}/{day}/*.jsonl | codex: |
OPENCODE_HOME environment variable[CC] (Claude Code), [OC] (OpenCode), [CX] (Codex CLI)~/.claude/
├── projects/ # Claude Code conversation files (JSONL)
│ └── {project}/
│ └── {session}.jsonl
└── skills/
└── conversation-search/ # Optional Skill
~/.local/share/opencode/
└── opencode.db # OpenCode conversations (SQLite)
~/.codex/sessions/
└── {year}/{month}/{day}/
└── *.jsonl # Codex CLI session files
~/.conversation-search/
└── index.db # Unified search database (all sources)
Key Purpose: Find session IDs and project paths to resume past conversations across all AI coding tools.
--date yesterday) using SQLite date functionsindex before search for fresh data (instant, no AI calls)The included Skill allows Claude to search your conversation history automatically.
Example usage:
Topic-based query:
User: "Find that conversation where we started implementing the API"
Claude: [Activates conversation-search Skill]
[Classifies as Topic query]
[Runs: ai-conversation-search search "implementing API" --days 14 --json]
[Finds match]
[Displays session ID, project path, and resume commands]
Output:
Session: abc-123-session-id
Project: /home/user/projects/myproject
Time: 2025-11-13 22:50 (local time)
To resume:
cd /home/user/projects/myproject
claude --resume abc-123-session-id
Temporal query (NEW in v0.4.8):
User: "What did we work on yesterday?"
Claude: [Activates conversation-search Skill]
[Classifies as Temporal query]
[Runs: ai-conversation-search list --date yesterday --json]
[Analyzes conversations by project]
Output:
Yesterday's work summary:
Project: /home/user/projects/api-service
- Implemented Redis caching layer
- Fixed authentication timeout bug
Session: def-456-session-id
Project: /home/user/projects/frontend
- Updated React components for new API
Session: ghi-789-session-id
See skills/conversation-search/SKILL.md for progressive search workflow and complete documentation.
All commands support --json flag:
# Export search results
ai-conversation-search search "authentication" --json > auth_convs.json
# Programmatic processing
ai-conversation-search list --days 30 --json | jq '.[] | .conversation_summary'
from conversation_search.core.search import ConversationSearch
from conversation_search.core.indexer import ConversationIndexer
# Search for messages with calendar date filtering
search = ConversationSearch()
# Traditional relative time
results = search.search_conversations("authentication", days_back=7)
# New calendar date filtering (v0.4.8+)
results = search.search_conversations("authentication", date="yesterday")
results = search.search_conversations("auth", since="2025-11-10", until="2025-11-13")
for r in results:
print(f"{r['message_uuid']}: {r['summary']}")
# List conversations by date
convs = search.list_recent_conversations(date="yesterday")
convs = search.list_recent_conversations(since="2025-11-10", until="today")
# Index conversations
indexer = ConversationIndexer()
indexer.index_all(days_back=7)
indexer.close()
Database location: ~/.conversation-search/index.db
No configuration file needed - all settings via command-line flags.
git clone https://github.com/yoshi47/ai-conversation-search
cd ai-conversation-search
uv tool install -e .
pytest tests/
conversation-search/
├── src/
│ └── conversation_search/
│ ├── __init__.py
│ ├── cli.py # Unified CLI
│ ├── core/
│ │ ├── indexer.py # Claude Code indexing + meta-filtering
│ │ ├── opencode_indexer.py # OpenCode conversation indexing
│ │ ├── codex_indexer.py # Codex CLI conversation indexing
│ │ ├── search.py # Search functionality + date filtering
│ │ ├── date_utils.py # Calendar date parsing (v0.4.8+)
│ │ └── summarization.py # Smart hybrid extraction
│ └── data/
│ └── schema.sql # Database schema
├── skills/
│ └── conversation-search/
│ ├── SKILL.md # Claude Code Skill with query classification
│ └── REFERENCE.md # Complete command reference
├── tests/
│ ├── test_date_utils.py # Date parsing tests
│ ├── test_date_filtering.py # Date filter integration tests
│ └── test_search_pair_detection.py # Meta-filtering tests
├── pyproject.toml
└── README.md
"Database not found" error:
ai-conversation-search init
"No conversations found":
~/.claude/projects/ contains JSONL files~/.local/share/opencode/opencode.db exists~/.codex/sessions/ contains JSONL filesWant to skip extraction and use raw content only:
# Store only raw content (even faster, but less optimized for search)
ai-conversation-search init --no-extract
Skill not activating:
ls ~/.claude/skills/conversation-search/SKILL.mdImport errors:
uv tool uninstall ai-conversation-search
uv tool install ai-conversation-search
PRs welcome! This is an experimental tool to improve Claude Code workflow.
MIT
Built for the Claude Code ecosystem. Uses smart hybrid extraction for instant, cost-free indexing.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.6.0 | 8 Mar 2026 | 0 |
This describes our collected data; it is not a security assessment.
Shared repository data · GitHub
Public sponsor counts have not been collected. These signals belong to the repository owner.
github · 1 observations shown. Missing days are unknown.
| Date / source period | Value | Observed at |
|---|---|---|
| 2026-10-22 | 0 | 2026-10-22T14:56:05.9686245Z |
Observed since 21 Oct, 10:16 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:c516c5762807975638c5e939ae1e8543356fb14805affffec9aa159e9fcf63f3