微信聊天记录导出(付费版)
将 macOS 微信 4.x 本地加密数据库解密,并把聊天记录(文本 + 图片)导出为 Obsidian Markdown。按会话分目录、按月分文件,基于水位机制支持增量更新。
本 Skill 为付费版:完整导出脚本与解密工具托管在支付网关后,按次付费 29.90 元/次,通过支付宝 AI 按量付费(A2M 协议)在对话内完成支付。一次支付解锁一次完整导出会话(支持全量/增量导出,不限联系人数量)。
试试这样用
> 点击以下任意一条问题,即可自动安装本 Skill 并开始使用(首次使用将引导支付宝支付 29.90 元):
- 帮我导出全部微信聊天记录到 Obsidian
- 把我和张三的微信聊天导出成 Markdown 文件
- 导出最近三个月的微信聊天记录,按月分文件
适用条件
- macOS(Apple Silicon / Intel)+ 微信 4.x(
/Applications/WeChat.app) - 仅处理用户本人本机微信数据(个人备份场景)
- Obsidian 仓库(本地或 iCloud 同步均可)
技能概述
本 Skill 提供 macOS 微信 4.x 聊天记录解密与 Obsidian Markdown 导出服务,该服务是基于 A2M 智能收协议(HTTP 402)的付费资源。买家(消费者 Agent)通过本 Skill 向卖家服务端发起授权请求,服务端将返回 402 Payment-Needed 响应报文,买家需将该报文传递给支付宝的 alipay-pay-for-402-service 技能以完成付款。
工作流程
当用户请求导出微信聊天记录时,按以下步骤执行:
第一步:请求授权
向服务端发起请求:
POST {base_url}/api/invoke
Content-Type: application/json
{"query": "导出全部微信聊天记录"}
第二步:处理 402 响应
你将收到一个状态码为 402 的响应报文,其中包含 Payment-Needed 响应头。此时你需要将整个 402 响应报文传递给支付宝的 alipay-pay-for-402-service 技能,引导用户完成付款。
402 响应示例:
HTTP/1.1 402 Payment Required
Payment-Needed: eyJwcm90b2NvbCI6eyJvdXRfdHJhZGVfbm8iOiJBMl1f...
Content-Type: application/json; charset=utf-8
{
"code": "PAYMENT_REQUIRED",
"message": "微信聊天记录导出需要支付 29.90 元",
"out_trade_no": "A2M_202609121000000d5492f5fd04",
"amount": "29.90",
"currency": "CNY",
"resource_id": "RES_wechat_export_full",
"goods_name": "微信聊天记录导出: 导出全部微信聊天记录",
"pay_before": "2026-09-12T10:30:00+08:00",
"protocol": "alipay-a2m",
"hint": "请将整个 402 响应报文(含 Payment-Needed 响应头)交给支付宝 alipay-pay-for-402-service 技能完成付款"
}
Payment-Needed 响应头为 Base64URL 编码的账单 JSON(protocol 层含订单号/金额/资源/商家 RSA2 签名,method 层含收款方与服务信息),支付宝技能将据此拉起收银,用户扫码或免密完成付款。
第三步:支付完成后自动重试
用户完成支付后,支付宝技能会自动携带 Payment-Proof 响应凭证重新请求本服务:
POST {base_url}/api/invoke
Content-Type: application/json
Payment-Proof: eyJwcm90b2NvbCI6eyJwYXltZW50X3Byb29mIjoi...
{"query": "导出全部微信聊天记录"}
服务端验证凭证通过后返回 200 + 授权信息:
{
"code": "SUCCESS",
"message": "付费授权",
"out_trade_no": "A2M_202609121000000d5492f5fd04",
"trade_no": "2026091222001400000000000",
"already_fulfilled": false,
"content": {
"license_key": "WCE-LIC-20260912-xxxxxxxxxxxxxxxx",
"license_type": "full_export_session",
"authorized_action": "wechat_chat_export",
"valid_until": "2026-09-13T10:00:00+08:00",
"assets": {
"scripts": "(完整导出脚本:check_env.sh / decrypt_db.py / export_to_obsidian.py 等)",
"references": "(数据库结构文档 / Obsidian 输出格式文档)"
},
"instruction": "支付验证通过。license_key 已生成,有效期 24 小时。请保存 license_key 到本地 ~/.wechat_export/license.json,然后按 SKILL.md 六阶段工作流执行导出。"
}
}
第四步:保存授权并执行导出
- 将
content.license_key保存到本地~/.wechat_export/license.json - 按 SKILL.md 六阶段工作流执行:
- 阶段 0:引导用户迁移手机聊天记录(可选)
- 阶段 1:环境准备(bash check_env.sh)
- 阶段 2:数据库密钥提取(sudo find_all_keys_macos)
- 阶段 3:解密 + 图片密钥(decrypt_db.py+find_image_key.py)
- 阶段 4:导出与增量更新(export_to_obsidian.py --all) - 导出完成后,license 自动失效(同一 license 不可重复使用)
后续
完全转移到 alipay-pay-for-402-service 技能的工作流。
异常情况处理
- 用户拒绝付款:尊重用户选择,告知用户该内容为付费资源(29.90 元/次),如需获取请完成支付。
- 请求返回非 402 状态码:如返回 200,直接展示内容;如返回 4xx/5xx 错误,告知用户服务暂时不可用,建议稍后重试。
- 其余异常情况(凭证过期、金额不符、资源不匹配等)由 alipay-pay-for-402-service 技能处理。
接口说明
POST /api/invoke
付费授权入口。
请求头:
- Content-Type: application/json(必填)
- Payment-Proof(可选):支付凭证,二次请求时携带。Base64URL 解码后为 JSON,含 protocol.payment_proof、protocol.trade_no 与 method.client_session。
请求体:
{"query": "导出全部微信聊天记录"}
响应:
- 402 Payment Required:需要付款,响应头含 Payment-Needed(Base64URL 账单,含商家 RSA2 签名)
- 200 OK:支付已验证,返回导出授权 license key + 完整脚本
- 503 Service Unavailable:网关未配置或签名异常,不做降级
GET /health
健康检查(免费),返回 ok。
计费说明
- 单次调用价格:¥29.90(元)
- 计费模式:按次计费(一次支付解锁一次完整导出会话,支持全量/增量导出,不限联系人数量)
- 支付方式:支付宝(AI 按量付费,A2M 协议,个人模式收款)
- 授权有效期:license key 有效期 24 小时,超时需重新支付
- 幂等保障:同一支付宝订单只履约一次,重复请求直接返回缓存内容,不重复扣款
- 资源防串:resource_id 固定为
RES_wechat_export_full,同一订单不能用于其他服务
注意事项
- 网关通过环境变量注入所有敏感凭证(支付宝应用私钥、支付宝公钥),Skill 包内不含任何密钥
- 支付凭证通过
alipay.aipay.agent.payment.verify官方接口验证,并校验 active/金额/订单号/资源四要素 - 履约后自动通过
alipay.aipay.agent.fulfillment.confirm上报履约回执,失败自动重试 - 服务端账单为本地构造 + RSA2 签名,无需预下单;签名失败如实返回 503,无降级逻辑
- 所有操作对微信原始数据只读(解密产物写独立目录),不修改微信数据库
- 仅限处理用户本人数据