ChatCrystal: notes from agent conversations
ChatCrystal
A local knowledge base: imports Claude Code, Cursor and Codex chats into notes, semantic search and MCP memory
- 62 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- The tool reads local conversation stores of all your agents, which may hold keys, paths and code
- Conversation text goes to the chosen model and embedding providers when notes are created
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add cli/chatcrystalDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The tool reads local conversation stores of all your agents, which may hold keys, paths and code
- Conversation text goes to the chosen model and embedding providers when notes are created
This is third-party code. Review the repository files before installing.
What it does
ChatCrystal turns scattered conversations with coding agents into structured notes with a title, summary, conclusions, code snippets and tags. Import covers 32 environments, among them Claude Code, Claude Desktop, Codex CLI, Cursor, GitHub Copilot, Gemini CLI, Qwen Code, OpenCode, Cline and Roo Code, and on Windows sessions inside WSL are read too. Background sync picks up new conversations by itself. Semantic search uses embeddings and expands results through relations, a knowledge graph is built from tags and their co-occurrence, and notes export to Markdown. The crystal search, crystal notes and crystal summarize commands run from the terminal, the web interface opens on port 3721 and a Windows desktop app exists. The crystal mcp command starts an MCP server over stdio through which agents recall saved experience and write back new. Models for notes and embeddings are configured separately, and a multi-device variant deploys through Docker.
Who it is for. Developers who solve tasks with coding agents and want to keep found solutions and search them by meaning.
Good fit when
- You need to quickly recall a solution found in a Claude Code conversation a month ago
- You want to gather conversations from different agents into one notes catalog
- Before a task the agent should recall past project experience through MCP
- You want to export knowledge to Markdown and see a tag graph
- A notes base is needed on several devices through Docker
Not a fit when
- No language model provider is configured: notes are not created without it
- Conversations must not go to external services: summarization and embeddings use the providers you choose
- You need to record only one project without importing other conversations: the tool gathers every source it finds
Example request
Find in my notes how we solved the stuck migration problem last month and show the conclusion and tags.Limitations
Node.js 24 or newer is required, a language model provider for notes and a separate embedding provider for search: Claude, GPT and Qwen are not embedding models. Data is stored locally, but conversation text goes to the providers you choose during summarization. Conversations often contain keys and paths, so assess what will enter the database before importing. The Docker deployment uses the ghcr.io/zengliangyi/chatcrystal image by default. The version at check time was 0.7.1 and the license is Apache-2.0.
How to disable. Stop the server with crystal serve stop, remove the package with npm uninstall -g chatcrystal and delete the MCP entry from the client. Delete the notes database along with the app data folder.
FAQ
Where are conversations imported from?
From 32 environments: Claude Code, Claude Desktop, Codex CLI, Cursor, Trae, GitHub Copilot, Gemini CLI, Qwen Code, OpenCode, Cline, Roo Code, Kilo Code, Continue and others. On Windows sessions inside WSL are read too.
How do I install it?
Windows has an installer on the releases page. For other systems use npm install -g chatcrystal, then crystal serve -d and crystal import, and the interface opens on port 3721.
What must be configured?
Two providers: a language model for notes and embeddings for search. Their settings are separate, and the README mentions OrcaRouter support for generation.
How do I connect it to an agent?
Run crystal mcp as an MCP server over stdio in the client settings. The agent searches saved experience and writes new through it. Details are in docs/MCP.md.
Can it be deployed for several devices?
Yes, through Docker Compose: the default image is ghcr.io/zengliangyi/chatcrystal and the version can be pinned with CHATCRYSTAL_IMAGE_TAG.
Discussion
No questions or reviews yet.
Related
CLI toolsMinutes
minutes
A local-first MCP server for meeting memory: on-device recording and transcription into Markdown, searchable from Claude Code, Codex, Cursor and any MCP client
Meeting notes on Mac and an MCP for agents: Markdown transcripts, search, recaps and action items, with no bot joining the call
An MCP server and Mac app that keeps one local index of repos, agent sessions and tickets, with semantic search and work threads
The MCP endpoint of a Salt workspace on your server: an agent creates pages, databases and comments with a person rights.
Cross-device clipboard sync with a built-in MCP server: the agent reads your copy history, and data never leaves for the cloud
DoodleNote MCP: meeting notes for agents
DoodleNote MCP
A read-only MCP server: Claude Code, Claude Desktop and Codex search local DoodleNote meetings, notes and transcripts
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Repository stars | Main difference |
|---|---|---|---|
| ChatCrystal: notes from agent conversations (this card) | no | 62 | |
| obsidian-second-brain | no | 5,313 | a second brain on Obsidian that does not import agent conversations itself |
| Coding Agent Session Search (cass) | no | 1,205 | fast search across agent sessions, without notes or a knowledge graph |
README in short
The README presents the product as a local knowledge base of agent conversations and gives a quick start for desktop, CLI and Docker, a feature list, commands, documentation links and articles on design and privacy.