session-indexer
Session-Indexer: Per-Project Semantic Search for Claude Code History
Overview
Session-Indexer is a tool built for individual developers who use Claude Code. It helps you search through your past conversations with the AI within a specific project. Instead of just looking at the last chat session, this tool creates a searchable database of all your past discussions. It uses a technique called semantic search to understand the meaning behind your questions, making it easier to find old solutions or ideas than using simple text search. The tool stores this data in a local SQLite database on your machine.
Benefits
Session-Indexer offers several advantages for developers working alone on projects. First, it provides a safety net against data loss. Unlike tools that store all data in one central place, Session-Indexer keeps each project separate. If one project database gets corrupted, it does not affect your other projects. You can easily rebuild a lost database by running a simple command on your saved chat logs. Second, it uses smart search technology. It converts your chat history into embeddings, which allows you to ask questions in your own words and get relevant results even if you do not use the exact same keywords as before. Third, it works offline. Since it runs on your local machine, you do not need an internet connection to search your past sessions. Finally, it integrates directly into your workflow. It sets up hooks that automatically save your chat history when a session ends and injects relevant past context when you start a new one.
Use Cases
This tool is designed for single developers working on their own machines. It is perfect for situations where you need to remember what you discussed weeks ago. For example, if you are working on a complex feature and need to recall a specific configuration decision you made last month, you can use Session-Indexer to find that conversation quickly. It is also useful when you are starting a new task and want to see how you solved similar problems in the past. The tool automatically triggers when you start or stop a Claude Code session. It can also be used manually if you want to search your history without waiting for a new session to begin. Developers who use Git worktrees should note that each worktree gets its own database, so they may need to manage their history separately for different branches.
Pricing
Session-Indexer is an open-source tool available on GitHub. It is free to use for individual developers. There are no subscription fees or hidden costs. You only need to have Go installed to build the tool and Ollama running on your machine to use the advanced search features. The tool relies on open models like bge-m3 for embeddings, which you can download for free.
Vibes
As an open-source utility, Session-Indexer has not yet gathered a large number of public reviews or testimonials. However, the tool is designed with a focus on reliability and privacy. The developers emphasize that it avoids the risk of a single point of failure by keeping data isolated per project. Users who value local control over their data and want to avoid sending their chat history to external servers will likely appreciate this approach. The tool is seen as a practical addition for developers who want to leverage their past AI interactions without relying on centralized memory systems.
Additional Information
Session-Indexer is built using Go and requires version 1.26.6 or higher. It works best when paired with Ollama, which provides the embedding models needed for semantic search. The tool requires the bge-m3 model for embeddings and can optionally use a different model for distilling facts. It is important to note that the database file is not committed to the Git repository to prevent merge conflicts and to keep personal data private. Users are responsible for backing up the database file if they wish to keep a permanent copy. The tool also includes a feature called the Facts Layer, which allows users to manually create durable facts from their chat history. This layer helps in tracking changes to decisions over time by marking older facts as superseded when new ones are created.
This content is either user submitted or generated using AI technology (including, but not limited to, Google Gemini API, Llama, Grok, and Mistral), based on automated research and analysis of public data sources from search engines like DuckDuckGo, Google Search, and SearXNG, and directly from the tool's own website and with minimal to no human editing/review. THEJO AI is not affiliated with or endorsed by the AI tools or services mentioned. This is provided for informational and reference purposes only, is not an endorsement or official advice, and may contain inaccuracies or biases. Please verify details with original sources.
Comments
Please log in to post a comment.