对于长期使用微信的个人与团队而言,聊天记录往往散落在本地数据库中,难以统一管理和高效检索。Chatlog 提供了一种开源解决方案,将本地微信数据转化为可搜索、可调用的结构化信息。平台支持 Windows 与 macOS,无需 root 或越狱即可解密消息文件,并通过 Terminal UI、命令行和 HTTP API 提供多种交互方式,使个人知识管理、团队审计和 AI 对话扩展变得高效便捷。
Chatlog是什么?
Chatlog 是由 sjzar 基于 Go 语言开发的跨平台开源项目,核心功能是将本地微信聊天记录解析为可搜索、结构化的数据。它兼容微信 3.x 与 4.0 版本,能够处理文本、图片、语音和视频等多媒体内容,支持命令行操作、终端 UI 浏览以及 HTTP API 调用,为用户提供统一、高效的数据访问和管理方式。
开源地址:https://github.com/sjzar/chatlog
核心功能
Chatlog 面向希望高效管理微信记录和扩展 AI 应用的用户,提供以下功能:
- 本地数据自动发现——扫描系统默认路径识别多账号数据目录,轻松绑定与切换。
- 全流程解密与多媒体处理——内置 key 提取与数据库解密逻辑,实时解码图片、语音、视频文件流。
- HTTP API 与 SSE 双栈输出——REST API 查询消息、联系人、群聊及会话信息;SSE 输出可与 MCP 协议 AI 助手对接,实现即时上下文调用。
- 双界面交互——Terminal UI 提供类邮箱阅读体验;命令行模式适配自动化脚本与 DevOps 场景。
- 多账号与安全模式——支持同时登录多个微信 ID,一键切换;macOS 用户可临时关闭 SIP 确保数据完整;Windows 用户可使用 Windows Terminal 解决排版问题。
- 数据迁移支持——可通过微信电脑版「从手机迁移聊天记录」补全数据库,保证记录完整性。
使用场景
Chatlog 适用于个人管理、团队审计及 AI 拓展应用:
| 人群/角色 | 场景描述 | 推荐指数 |
|---|---|---|
| 个人用户 | 将多年微信聊天记录导入本地搜索或 Obsidian、Logseq,实现语义检索 | ★★★★★ |
| 企业团队 | 合规情况下快速提取业务群谈判、售后纠纷记录,生成归档报表 | ★★★★☆ |
| AI 开发者 | 利用 SSE 与 MCP 协议,把实时聊天流接入 ChatGPT、Claude 等 LLM,实现自动纪要与情绪分析 | ★★★★★ |
| 自动化运维 | 通过命令行批量处理和脚本化查询,提高数据访问效率 | ★★★★☆ |
操作指南
新用户可在几分钟内上手 Chatlog:
- 安装:访问 GitHub 发行页下载预编译包,或执行
go install github.com/sjzar/chatlog@latest。 - 启动:在终端执行
chatlog,默认进入 Terminal UI 界面。 - 解密数据:菜单选择 “解密数据”,系统自动解析
key.sqlite并解码多媒体。 - 开启 HTTP 服务:菜单选择 “开启 HTTP 服务”,默认监听 127.0.0.1:8080。
- 数据访问:REST 接口
GET /message?id=...;SSE 接口GET /sse;多媒体接口GET /image/{id},/voice/{id},/file/{id}。 - 数据补全:如桌面端记录不全,可在微信电脑版执行「从手机迁移聊天记录」更新数据库。
(注意:macOS 用户需在提取密钥前确认 SIP 设置,Windows 用户推荐使用 Windows Terminal 保持界面排版)
支持平台
Chatlog 支持 Windows 与 macOS 平台,兼容微信 3.x 与 4.0 版本。操作界面包括 Terminal UI 与命令行模式,同时提供 HTTP API 与 SSE 输出,可适配多种脚本和第三方应用。
产品定价
Chatlog 免费开源,用户可在 GitHub 上下载并部署,支持 Fork、贡献和自定义开发,无需付费。
常见问题
Q1:是否需要 root 或越狱才能读取微信记录?
A1:无需 root 或越狱,软件可直接读取并解密本地消息文件。
Q2:能否同时管理多个微信账号?
A2:支持多账号绑定与一键切换,方便同时管理不同账号数据。
Q3:如何与 AI 系统对接?
A3:通过 SSE 接口输出增量数据,符合 MCP 协议的 LLM 可直接接入,实现实时语境调用。
跳跳兔小结
Chatlog 是一款面向个人和团队的微信聊天记录管理工具,支持结构化数据解析、终端 UI 浏览、命令行操作及 AI 集成。适合希望高效检索、管理和分析微信历史记录的用户,以及希望将聊天流接入 AI 系统的开发者。对于仅希望单纯浏览聊天记录而无需 API 调用或自动化扩展的用户,功能可能偏多,但其开源和多接口特性提供了灵活、高效的数据管理方案。
