Wechat local vault
Skill bg-szy/TOP-SKILLS/skills/marketplace/wechat-local-vault
全球最大的 Claude Code 技能聚合库 · 收录 3900+ 来自 12+ 来源的技能,提供在线搜索与趋势分析看板 / The world's largest Claude Code skill aggregation hub — 3900+ skills from 12+ sources with online search and trend dashboard
npx -y skills add bg-szy/TOP-SKILLS --skill wechat-local-vaultAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
微信 Mac 4.x 本地数据库全量/增量解析与数字资产库。用于本机微信聊天记录、联系人、群聊、朋友圈、收藏夹、语音/附件索引的密钥提取、全量解密、增量刷新、指定联系人/群聊导出、关系复盘、客户跟进和内容沉淀。触发词:微信解析、微信全量、微信增量、聊天记录、导出聊天、朋友圈解析、收藏夹解析、客户跟进、wechat-local-vault。
SKILL.md
9.9 KB, as published. Nobody here has run it
微信本地解析 Vault
这个 skill 的定位是“微信本地数字资产库 + 本地查询分析台”。默认只读取本机数据库和本地进程,不点击微信界面;除非用户明确允许,不操作微信 UI。默认只处理官方第一个微信容器 com.tencent.xinWeChat,不要处理双开/第二微信容器。
本版本吸收了两类外部工具的优点:
- WeChat CLI 风格:统一命令入口、JSON 默认输出、最近会话、历史记录、全局搜索、联系人详情、群成员、统计、导出、收藏夹、未读和增量新消息。
- 宝玉群聊摘要工作流:按群归档、从上次摘要继续、摘要素材包、群友画像目录、历史索引、图片说明扩展点,以及“大批量先落文件再分析”的安全习惯。
隐私边界
- 不在回复或日志里输出 key、完整 salt、wxid、原始聊天库内容,除非用户明确要求展示。
- 密钥、配置、明文库、manifest、增量状态和导出目录都由本机配置文件管理;skill 文档不要写入任何个人机器的真实绝对路径、wxid、联系人或聊天内容。
- 建议把密钥和明文库放在本机私有应用数据目录,把可读报告放在用户自选的导出目录;路径以占位符或配置字段说明即可。
- 不要把明文数据库复制到项目工作区、桌面、网盘目录或聊天回复里;工作区只放用户明确要求的导出报告。
自动选择模式
根据用户指令选最小必要动作:
- 用户说“第一次用、解不开、key 没了、全部解密、全量重建”:走全量路线。
- 用户说“继续、更新一下、增量、最近、今天、新消息”:走增量路线。
- 用户点名联系人/群聊/会话 ID:只导出这一条会话;必要时先增量解密消息库。
- 用户给时间范围:只按该时间范围导出或分析。
- 用户问朋友圈/收藏夹:只读取对应已解密库;缺 key 再补抓。
- 用户明确说“群聊摘要、群聊精华、日报、复盘、从上次继续”时,优先用
vault_cli.py digest-source生成素材包,再基于素材写简报;不要把整个 skill 解释成摘要工具。 - 用户要求不操作微信界面时,只能使用
--match-only、已保存 key、已解密库或本地数据库文件;不要启动 Computer Use。
统一查询入口
日常查询优先使用 scripts/vault_cli.py。它只读已解密 vault,不抓 key、不碰微信 UI。
python3 {{SKILL_DIR}}/scripts/vault_cli.py status --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py sessions --limit 20 --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py unread --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py new-messages --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py contacts --query "关键词" --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py members "群名" --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py history "联系人或群名" --start-time "2026-05-01" --end-time "2026-05-14" --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py search "关键词" --chat "群名" --type link --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py stats "群名" --start-time "2026-05-01" --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py export "群名" --format markdown --output ./chat.md
python3 {{SKILL_DIR}}/scripts/vault_cli.py favorites --type article --query "关键词" --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py moments --name "联系人" --start "2026-05-01" --format text
消息类型过滤支持:text、image、voice、video、sticker、location、link、file、call、system。
群聊摘要素材包
用户要“群聊精华、日报、总结群聊、看看这个群最近聊了什么、从上次继续”时:
python3 {{SKILL_DIR}}/scripts/vault_cli.py digest-source "群名" --start "2026-05-01" --end "2026-05-14" --format text
python3 {{SKILL_DIR}}/scripts/vault_cli.py digest-source "群名" --since-last --data-root ~/Documents/wechat-digests --format text
输出会落到 {data_root}/{group_id}-{group_name}/sources/,并创建:
profiles/:普通版群友画像。profiles-roast/:毒舌版画像,必须和普通版分开。imgs/:图片说明扩展点,格式为{message_id}.txt,一行描述一张图。sources/*.json:可机器读取的消息素材、发言统计和路径信息。sources/*.md:便于人工阅读和写作的素材稿。
素材包不自动更新 history.json。只有最终摘要写完并确认后,才更新摘要历史,避免半成品污染“从上次继续”的锚点。
常用命令
查看本机有哪些库,不启动微信:
python3 {{SKILL_DIR}}/scripts/extract_keys.py --list-dbs
用已有抓取日志匹配 key,不启动微信:
python3 {{SKILL_DIR}}/scripts/extract_keys.py --match-only --targets all --reuse-log
首次全量抓 key。只在需要抓新 key 时使用;不要碰第二微信:
python3 {{SKILL_DIR}}/scripts/extract_keys.py --targets all --duration 240
全量解密到私密 vault:
python3 {{SKILL_DIR}}/scripts/decrypt_all_dbs.py --mode full
日常增量刷新。只跳过未变化的库,不重新处理全部内容:
python3 {{SKILL_DIR}}/scripts/decrypt_all_dbs.py --mode incremental
导出某个联系人完整聊天:
python3 {{SKILL_DIR}}/scripts/export_chat.py --contact "联系人备注" --mode full
导出某个联系人新增聊天:
python3 {{SKILL_DIR}}/scripts/export_chat.py --contact "联系人备注" --mode incremental
按精确会话 ID 和时间范围导出:
python3 {{SKILL_DIR}}/scripts/export_chat.py --chat-id "contact_username" --since "2025-01-01"
旧脚本仍可用于窄任务;如果用户没有特别指定,优先使用 vault_cli.py。
工作流
全量路线
用于首次配置、换设备、微信升级后 key 变化、用户明确要求全量重建。
- 先运行
extract_keys.py --list-dbs看本地库,不展示敏感 salt。 - 如果
~/.config/wechat-keys.json已有 key,先用--match-only --targets all --reuse-log尝试复用。 - 只有复用失败或缺关键库时,才运行抓 key。
- 运行
decrypt_all_dbs.py --mode full,明文库写入私密 vault。 - 读取 manifest 确认解密数量和失败项。
增量路线
用于日常更新、继续上次工作、只分析近期新增内容。
- 运行
decrypt_all_dbs.py --mode incremental。 - 如果目标是联系人/群聊,运行
export_chat.py --mode incremental。 - 如果没有新增消息,直接告诉用户没有新增内容。
- 增量状态只写入 vault 的
state目录,不写进 skill 文档。
指定会话分析
用于“分析我和某某的聊天”“导出这个会话 ID”“帮我写下一条怎么回”。
- 若用户给的是备注/昵称,使用
export_chat.py --contact。 - 若用户给的是微信 userName 或会话 ID,使用
export_chat.py --chat-id。 - 导出后读取报告,按用户目标分析关系、语气、风险、下一步话术。
- 不要默认展示全部原文;用户要“仔细解析”时再给完整时间线或报告路径。
朋友圈/收藏夹解析
优先使用已解密的 sns/sns.db、favorite/favorite.db、message_resource.db。缺 key 时只补相关库,不全量抓取。输出到用户配置的导出目录。
群聊精华/日报路线
- 先运行增量解密,确保明文 vault 是最新的。
- 用
vault_cli.py contacts或sessions解析群名,确认唯一群聊。 - 用
digest-source按时间范围生成素材包;大群或长时间范围先落文件,不要把几百上千条原始消息直接塞进对话。 - 读取
sources/*.md和必要的sources/*.json,先列话题骨架,再写正文。 - 输出结构优先采用:标题、消息统计、发言排行、开篇概览、群友画像、分类正文、待解决问题、固定结尾。
- 需要毒舌版时,可以基于同一素材另写,但不得做人身攻击、健康/家庭/身份属性推断,也不得用时间戳推断作息或所在地。
- 图片内容默认不可见;如果
imgs/{message_id}.txt存在,才把其中描述用于摘要。否则只能写“图片内容不可见,根据上下文推断到这里围绕一张图片讨论”,不要编造画面。 - 摘要确认完成后,再更新群目录下的
history.json和history-digests.jsonl;用户要求“从上次继续”依赖这些文件。
输出原则
- 回复里优先给结论、文件路径、下一步建议;完整原文放 Markdown 文件。
- 涉及私聊时,少量引用必要原文即可,避免把整库内容贴到聊天里。
- 明确区分“已解密明文库”“可读导出报告”“密钥配置”。
- 每次涉及解密完成,说明保存位置和是否包含明文隐私。
现有脚本
scripts/vault_cli.py:统一本地查询入口;吸收 WeChat CLI 的常用命令形态,并增加朋友圈与摘要素材包。scripts/extract_keys.py:本机 key 捕获、复用和匹配。scripts/decrypt_all_dbs.py:全量/增量解密,写入私密 vault,并生成 manifest。scripts/export_chat.py:按联系人、群聊或会话 ID 导出完整/增量聊天记录。scripts/list_contacts.py:列出联系人和群聊。scripts/wechat_digest.py:按天摘要脚本,仅在用户明确要摘要时使用。scripts/search_sns.py:朋友圈搜索辅助。