CodeBuddy 切换账号后对话历史“消失“解决办法。找回历史记录
CodeBuddy 切换账号后对话历史"消失"是一个已知问题,好消息是:数据其实没丢,只是 UI 按user_id做了过滤,导致新账号下看不到旧账号的对话记录。
以下是分场景的解决方案:
一、先确认版本(官方已修复部分场景)
CodeBuddy 在2026 年 8 月 4 日的更新中已明确修复了「切换账号登录后对话面板空白」的问题 。建议先:
- 将 CodeBuddy 插件/客户端更新到最新版
- 重启 IDE 或客户端后再次尝试切换账号
如果更新后问题仍存在,再往下看。
二、IDE 插件版(VS Code / JetBrains)解决方案
方案 A:切回原账号查看
对话历史是按账号隔离存储的 。如果你只是临时需要查看旧记录,直接切回原来的账号登录即可看到。
方案 B:手动迁移历史记录(推荐)
如果你需要把旧账号的对话合并到新账号,可以用社区开源的迁移工具,原理是把本地 JSON 文件中的user_id改为你当前账号:
工具地址:github.com/xiaoliuzhuan666/workbuddy-account-migrate
手动操作(不借助工具):
- 找到本地历史记录目录:
- Windows:
C:\Users\{用户名}\AppData\Roaming\CodeBuddyExtension\genie-history\ - macOS:
~/Library/Application Support/CodeBuddyExtension/genie-history/
- Windows:
- 每个 session 是一个独立 JSON 文件
- 用文本编辑器打开旧账号的 JSON,将其中的
user_id字段改为新账号的 ID - 保存后重启 CodeBuddy,历史记录就会出现在新账号下
⚠️ 操作前务必备份!
方案 C:导出/导入备份
在切换账号前,用命令导出重要对话:
- 在 Chat 模式下输入
/export导出为 Markdown/JSON - 或直接用
/history查看并复制关键内容
三、CodeBuddy CLI 版
如果你使用的是CodeBuddy CLI(命令行版),这个问题不存在。CLI 的对话记录按项目路径存储(~/.codebuddy/memories/{project-id}/),不按账号隔离,切换账号不会丢失历史 。
四、CNB 云原生环境
如果你是在 **CNB(腾讯云 CodeBuddy 云环境)**中使用,对话历史默认存在容器内,环境销毁即丢失。需要:
- 登录 CNB 后点击右上角头像 →个人设置
- 开启「漫游目录」功能
- 确保漫游路径包含
/root/.local/share/CodeBuddyExtension
五、总结建议
| 场景 | 建议操作 |
|---|---|
| 临时查看旧记录 | 直接切回原账号 |
| 永久迁移到新账号 | 用迁移工具或手动改 JSON 的user_id |
| 预防未来丢失 | 定期用/export导出重要对话 |
| CNB 云环境 | 开启「漫游目录」 |
| CLI 用户 | 无需处理,不受影响 |
如果以上方法都无效,建议通过 CodeBuddy 官方渠道反馈,或联系contact@openbmb.cn(如果是比赛相关账号问题)。
