零依赖的 Python 工具集,把 Claude Code、Cursor、Windsurf 等 10 种 AI 编程助手的本地聊天记录提取归一化为单一 JSONL 格式,供微调训练、数据分析与备份。核心能力围绕十种来源支持、自动跨平台发现、提取内容完整展开。"用自己的编程对话微调模型"是社区持续热点,而各家数据散落在互不相通的存储里;本项目一次覆盖十个助手、纯标准库实现、MIT 且明确许可训练用途,三卖点叠加形成转发欲。

| 项目 | 内容 |
|---|---|
| 仓库 | bawadou/ai-data-extractor |
| 语言 / 许可证 | Python / MIT(明确允许用于训练 ML 模型) |
| 总星标 | ⭐ 544(截至 2026-08-26) |
| 创建时间 | 2026-08-16 |
| 榜单 | 近30天新星榜 第45名 |
零依赖的 Python 工具集,把 Claude Code、Cursor、Windsurf 等 10 种 AI 编程助手的本地聊天记录提取归一化为单一 JSONL 格式,供微调训练、数据分析与备份。
"用自己的编程对话微调模型"是社区持续热点,而各家数据散落在互不相通的存储里;本项目一次覆盖十个助手、纯标准库实现、MIT 且明确许可训练用途,三卖点叠加形成转发欲。README 的坦诚也加分:schema 未公开的工具就用启发式并如实告知"尽力而为"。
零第三方依赖,Python 3.9+ 即可运行。SQLite 一律以只读连接打开避免被运行中的编辑器锁死;JSONL 逐行读取。Cursor 的存储至少历经三代形态,本项目把三代全部实现;Windsurf 和 Trae 用通用启发式扫描"角色+文本配对"的对象。每个读取器都有容错包裹,单个损坏或锁定文件只产生部分结果而不中断整体。扩展只需实现 find_installations 与 extract 双函数的小模块再注册进 REGISTRY。
克隆仓库即用,无需 pip install;可选安装 detect-secrets 做分享前的隐私扫描。
`python extract.py` 弹菜单选来源;加 `--all --merge` 全量提取并合并输出到 extracted_data/ 带时间戳文件;单个提取器可独立运行如 `python -m extractors.cursor`。
找不到 Aider 项目时用可重复的 `--search-path` 参数指定路径;Windsurf/Trae 零结果时用 sqlite3 查看 ItemTable 键名后补充 KEY_HINTS。隐私方面 README 给出三条纪律:分享或训练前先扫敏感信息、人工审查专有代码与 API 密钥(重点看 code_context 与 tool_use 字段)、勿把 extracted_data 提交到公开仓库。
生态内已有 cursor-export 等单一工具导出脚本,但横向聚合十个助手的项目罕见;相比写数据库抓取脚本的长教程,本仓库提供的是可持续维护的双函数扩展框架。边界同样清晰:只读本机自有数据,合规责任由使用者承担。