Cairn
Cairn
你的 Claude Code 对话,覆盖每个账户。 在 Claude 删除它们之前保存,并分享到你登录的每个账户。
🇬🇧 English · 🇫🇷 Français · 🇹🇷 Türkçe · 🇦🇿 Azərbaycanca
🎯 为什么
你登录了另一个 Claude 账户,然后你的对话消失了。
它们并没有消失。 它们就在你的磁盘上,位置和原来一模一样。Claude 为每个账户维护一个独立的列表,当你登录到其他地方后,它读取的是错误的列表。
还有第二个问题,更隐蔽也更糟糕:Claude Code 会在 30 天后删除对话。 默认如此,而且不会通知你。大多数人是在想要的东西已经没了的时候才发现。
Cairn 解决这两个问题,然后就不再打扰你。
Related MCP server: cursor-history-mcp
🚀 安装
🪟 Windows — 无需终端
完成。你的对话就回到侧边栏了。
再运行一次并按 3 开启自动同步,这样你就不用再做任何事了。
🍎 macOS / 🐧 Linux
npx github:veax-project/claude-cairn同样的界面,同样的步骤。
⚠️ 然后退出并重新打开 Claude
Claude 在启动时只读取一次对话列表。Cairn 可以往那个列表里添加内容,但 Claude 要等到下次启动才会注意到。这是人们以为它没生效的头号原因。
📦 它需要 Node.js
大多数开发者已经安装了。如果你没有,窗口会提示你并指向那里 — 安装标记为 LTS 的版本,然后重新运行。
✨ 它的作用
💾 保存它们。 每个对话都会被复制到 Claude 不会删除的地方。那份副本属于你,没有任何东西会移除它。
🔄 分享它们。 你电脑上的每个账户都能获得所有对话 — 双向同步。在一个账户上开始的工作,切换到另一个账户,它就在那里。再切回来,中间做的工作也在那里。
👁️ 监视。 开启自动同步后,两者每十分钟发生一次,从开机开始。你再也不用操心。
🔎 让 Claude 可以搜索。 从任何账户都可以,包括五分钟前刚创建的账户。
↩️ 可以撤销。 一条命令就能精确移除它写入的内容,不多不少。
🔌 让 Claude 搜索你自己的历史
npx github:veax-project/claude-cairn install-mcp重启 Claude,然后问它类似这样的问题:
搜索我以前的对话,看看我们是怎么修复 auth bug 的
这在任何账户上都有效,包括全新的账户。这正是关键所在:这个连接属于你的电脑,而不是某个账户。
🧯 故障排查
症状 | 原因 | 修复方法 |
😐 什么都没回来 | Claude 已经打开了 | 完全退出再重新打开 — 它只在启动时读取列表 |
🪟 窗口瞬间关闭 | 缺少 Node.js | 从 nodejs.org 安装,选择 LTS,重新运行文件 |
🤷 某个对话仍然缺失 | 它属于另一个项目 | 侧边栏按项目过滤 — 打开那个项目的文件夹 |
🔢 账户显示为代码 | 磁盘上没有记录它们是谁 | 按 |
😱 它把事情搞得更糟了 | — |
|
🍎 在 Mac 上完全没反应 | 从未在 Mac 上测试过 | 告诉我们发生了什么 — 这是它被修复的唯一途径 |
🛡️ 你的数据去向
哪里都不去。 Cairn 只是把文件从你电脑上的一个文件夹复制到另一个文件夹。
🚫 零依赖。
package.json中的dependencies块是空的。🚫 零网络调用。 没有遥测、没有更新检查、没有分析。关掉 wifi,所有命令依然正常工作 — 这是最方便的验证方式。
🔌 MCP 服务器通过标准输入输出与 Claude 通信。它不打开任何套接字。
🗑️ 备份中的任何内容都不会被删除。 连 Cairn 自己也不会。
↩️
undo只移除它写入的内容,通过大小和时间戳识别 — 之后 Claude 接触过的内容会被保留。
大约 3000 行纯 JavaScript,没有构建步骤,没有打包器。src/ 中有十一个文件,你可以阅读其中任何一个。
启动器是一个 90 行的 .cmd 文件,用于检查 Node、下载发布归档并运行它。它是纯 ASCII,不做其他任何事情。
📋 命令
命令 | 作用 |
| 打开本页顶部的界面 |
| 保存所有内容,然后让每个账户获得所有内容 |
| 持续执行,每 10 分钟一次,从启动开始 |
| 查看哪些内容在这里、哪些被隐藏、哪些有风险 |
| 移除上次同步写入的确切内容 |
| 跨所有账户搜索 |
| 让 Claude 自己搜索归档 |
| 将所有对话导出为 Markdown |
| 将对话打包成一个文件,以便附加到聊天中 |
你的备份存放在 ~/ClaudeCairn。使用 --vault <folder> 或 CAIRN_VAULT 环境变量移动它。
🔬 工作原理
Claude Code 在两个不同的地方保存两个独立的东西:
~/.claude/projects/<project>/<id>.jsonl
the conversation itself
deleted once it is older than cleanupPeriodDays — 30 by default
<appData>/Claude/claude-code-sessions/<account>/<org>/local_*.json
the sidebar entry that lists it
one folder per account, which is why switching hides everythingCairn 将第一个复制到安全的地方,并将第二个写入它找到的每个账户下。对话只会被追加,所以没有增长的文件会被跳过。备份中的任何内容都不会被移除 — 即使 Claude 已经删除了某个对话,那份副本也会保留,因为它是现在唯一存在的副本。
Claude 在列出侧边栏条目之前会检查其严格格式,并静默丢弃任何不匹配的内容。Cairn 根据真实文件中观察到的格式构建它们:时间戳是数字而不是文本,没有多余字段,也没有偶尔出现在记录中的占位值。
搜索索引是 SQLite 全文搜索,使用 Node.js 内置的副本。这就是为什么没有依赖。
⚠️ Beta 版
首次发布。已在 Windows 上端到端验证:23 个已经不可见数周的对话在重启后回到了侧边栏,Cairn 写入的每个条目都被接受。
21 个自动化测试,包括一个在七种窗口尺寸下将界面重放到模拟终端上的测试,以捕捉布局问题。
✅ 已验证 | Windows |
❓ 从未运行 | macOS、Linux — 代码已编写并审查,仅此而已 |
❌ 不可能 | 在你第一次备份之前 Claude 已删除的对话。没有任何东西能找回它们。 |
❌ 超出范围 | 常规的 claude.ai 聊天。那些存在于 Anthropic 的服务器上,无法在账户之间移动 — 这是产品的限制,不是这个工具的限制。 |
打开一个问题 — 特别是如果你在 Mac 上。
GPL-3.0 · 构建它的原因:切换账户不应该让你失去工作。
This server cannot be deployed
Maintenance
Related MCP Connectors
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
Shared memory MCP server for Claude Code, Codex, Gemini CLI and Cursor. Cited, editable.
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
Persistent memory for AI assistants. Save once; recall from Claude, ChatGPT, or any MCP client.
Related MCP Servers
- AlicenseBqualityDmaintenanceMCP server that lets you search your Claude Code conversation history to find past solutions, track file changes, and learn from previous work.8142 npm179MIT
- AlicenseAqualityBmaintenanceMCP server for browsing, searching, exporting, and backing up your Cursor AI chat history directly into Claude via natural language.883 npm33MIT
- AlicenseAqualityDmaintenanceAn MCP server that lets Claude Code recall the context of past conversations from any project on demand.552 npm2MIT
- AlicenseAqualityBmaintenanceAn MCP server that indexes Claude Code conversation history into SQLite, enabling full-text search across past sessions for context recovery and cross-agent observability.103MIT