如果你长期用 Trae 这类 AI 编辑器工作,肯定有过这种时刻:和内置对话助手来回聊了几十轮,终于把某个需求调通了,想把这些对话整理成笔记或文档,结果翻遍菜单也找不到一个导出入口。这个需求我忍了很久,最后决定用 Trae 编辑器自己写一个 Trae 的 AI 对话记录导出脚本(Windows 版),一次性解决。
这篇文章不是讲某个通用工具怎么一键扒数据,而是把我从“没有出口”到“自己造出口”的完整过程写出来。你会看到我怎么在磁盘里定位 Trae 的对话记录,怎么反推数据结构,怎么向 Trae 自己的 AI 助手描述需求、让它生成可运行脚本,最后又是怎么在 Windows 下落地的。适合两类人:一类是真正想把 AI 对话沉淀成私人文档的 Trae 用户;另一类是刚接触“用 AI 写脚本”这条工作流,想看看真实迭代过程的人。
1. 没有导出按钮的时候,你先要想清楚要导什么
很多人的第一反应是:Trae 是字节做的 AI IDE,界面做得挺现代,为什么偏偏没有对话导出?这个问题我先不回答。更现实的问题是,我在找遍设置菜单后确认了一件事:短期别等官方,自己动手是唯一选择。
1.1 我要解决的不仅是“备份”,而是让对话能重新被人读到
聊天窗口里的对话,滚动翻一翻就能找到,所以单纯做“备份”没有意义。我需要的是三样东西:
- 可检索的文本格式,方便以后用编辑器打开后直接搜索关键词;
- 保留代码块和 Markdown 结构,因为 AI 对话里有大量代码片段,丢了格式根本没法看;
- 能区分轮次和角色,知道哪句话是用户说的,哪段是 AI 生成的,最好带上模型名称和时间。
想清楚这些之后,导出格式基本就定下来了:Markdown 最合适。它既能被 Obsidian、Notion、语雀这些工具直接导入,又能用 Typora 或 VS Code 阅读,用 git 管起来也方便。
1.2 为什么这个需求在 Windows 上更值得做
你可能觉得,把对话记录导出来,用脚本读数据库就行,跟操作系统有什么关系?
其实关系很大。Windows 上很多细节和 macOS 完全不一样,比如:
- 用户数据目录一般在
C:\Users\<用户名>\AppData\Roaming\下,而不是~/Library/Application Support/; - 进程占用文件后不会自动释放锁,直接读数据库可能被锁挡住;
- 控制台默认代码页可能是 GBK,读到 UTF-8 中文很容易乱码;
- 有的电脑没装 Python,脚本不能假设所有人都用过
python3这个命令。
如果只写一个“能在我电脑上跑通”的脚本,不算真正解决问题。我希望它复制到任何一台 Windows 电脑上都能跑,这要求我在设计脚本时把这些坑全部考虑进去。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 先在磁盘上把 Trae 的对话记录翻出来:定位与剖析
写脚本的难点不是代码本身,而是弄清楚“数据到底长什么样”。我一开始不知道 Trae 的对话记录存在哪个文件、是什么格式,所以第一步不是写代码,是找数据。
2.1 寻找数据文件的三步排查法
我建议你也按照这个顺序来找,不要上来就在磁盘里到处搜。
第一步,先看应用目录。在 Windows 的资源管理器地址栏输入:
text复制%APPDATA%
回车后会跳到当前用户的 Roaming 目录。在这里找 Trae 或类似名字的文件夹。多数 Electron 框架应用会把用户数据放在这里。
第二步,如果第一步没找到明显的目录,打开 Trae 的命令面板(Ctrl+Shift+P),搜索“开发人员工具”或“Developer: Open Developer Tools”,在控制台里执行一条命令查看工作目录的完整路径。这个方法能看到应用运行时真实的文件位置,比我盲猜要可靠得多。
第三步,如果不想开开发者工具,就用文件搜索工具在 Trae 的整个数据目录里过滤数据库文件。以我的环境为例,大概率会找到几个体积不小的 .db、.sqlite 或 .sqlite3 文件。对话记录不会以零散文本文档的形式单独躺在一
