docs: 添加 Agent Skill、Release 下载安装方式,移除 key scan 相关描述

- 新增 SKILL.md,支持通过 npx skills add 安装到 AI 编程助手
- README 安装章节增加从 Release 下载预编译二进制的方式
- README 安装章节增加 AI 编程助手集成说明
- 移除 key scan / Mach VM 内存扫描相关描述,统一为 key extract
- 修正 Contact Hiding 描述、导出示例补 --all、命令一览补 key set-image
- 移除远程 scp 部署段落,简化单列前置条件表格为文本
This commit is contained in:
pandorafuture
2026-06-05 17:42:28 +08:00
parent 9fcf3a033b
commit b31a416f20
2 changed files with 405 additions and 19 deletions
+13 -19
View File
@@ -1,6 +1,6 @@
# wx-cli
WeChat macOS 数据库解密与查询工具。支持通过 `key scan`Mach VM 内存扫描)或 `key extract`(LLDB hook)提取密钥,解密并查询 WeChat 4.1.7.x / 4.1.8.x 的 Apple SEE 加密 SQLite 数据库。
WeChat macOS 数据库解密与查询工具。支持通过 `key extract`(LLDB hook)提取密钥,解密并查询 WeChat 4.1.7.x / 4.1.8.x 的 Apple SEE 加密 SQLite 数据库。
## 支持范围
@@ -9,13 +9,7 @@ WeChat macOS 数据库解密与查询工具。支持通过 `key scan`Mach VM
## 前置条件
密钥提取**需要 SIP 关闭**SIP enabled 时 `task_for_pid` 被内核拒绝,即使 root 也不行)。如果你已有密钥,可以跳过 SIP 要求,直接用 `key set` 手动录入。
| 条件 | key scan | key extract |
|------|----------|-------------|
| SIP disabled + sudo | **可用** | **可用,但通常不需要 sudo** |
| SIP disabled + 无 sudo | 不可用 | **可用(推荐)** |
| SIP enabled | 不可用 | 不可用 |
密钥提取**需要 SIP 关闭**SIP enabled 时 `task_for_pid` 被内核拒绝,即使 root 也不行),通常不需要 sudo。如果你已有密钥,可以跳过 SIP 要求,直接用 `key set` 手动录入。
`key extract`LLDB 方式)还需要:
@@ -66,10 +60,13 @@ source ~/.zshrc
wx-cli --version
```
如果目标机器在远程(例如 VM),本机构建后传输即可,远程不需要 Rust 工具链:
### AI 编程助手集成
本项目提供 [Agent Skill](https://skills.sh),安装后 Claude Code、Codex、Cursor 等 AI 编程助手可直接协助查询微信数据:
```bash
scp target/release/wx-cli user@remote:~/.local/bin/wx-cli
npx skills add pandorafuture/wx-cli
```
## 使用
@@ -84,17 +81,14 @@ wx-cli status # 查看 WeChat 运行状态和所有账号密钥/缓存状
### 2. 提取密钥
```bash
# 方式 A(推荐):内存扫描重启 WeChat,需要 sudo
sudo wx-cli key scan
# 方式 BLLDB hook — 会重启 WeChat,通常不需要 sudo
# LLDB hook 提取密钥重启 WeChat通常不需要 sudo
wx-cli key extract --timeout 120
# 查看已保存的密钥
wx-cli key list
```
`key scan` 从 WeChat 进程内存中提取已缓存的数据库密钥;`key extract` 通过 LLDB hook 捕获 PBKDF2 调用获取原始密钥,覆盖范围更广
`key extract` 通过 LLDB hook 捕获 PBKDF2 调用获取原始密钥,覆盖所有数据库
手动设置密钥:
@@ -122,7 +116,7 @@ wx-cli query 张三 --limit 20 # 查某人的消息
wx-cli search 周末 --limit 20 # 全局关键词搜索
wx-cli query 张三 --type text # 按消息类型过滤
wx-cli query 周末爬山群 # 群聊消息
wx-cli export 张三 -o /tmp/export --format json # 导出会话
wx-cli export 张三 -o /tmp/export --all --format json # 导出会话
wx-cli watch --poll --poll-ms 3000 # 实时监听新消息
```
@@ -157,10 +151,10 @@ REST 端点:`/api/v1/health`、`/api/v1/sessions`、`/api/v1/contacts`、`/api
|------|------|
| `wx-cli status` | 查看 WeChat 运行状态 |
| `wx-cli doctor` | 检查环境(SIP 等) |
| `sudo wx-cli key scan` | 内存扫描提取密钥(推荐) |
| `wx-cli key extract` | LLDB hook 提取密钥 |
| `wx-cli key list` | 查看已保存密钥 |
| `wx-cli key set <account> <key>` | 手动设置密钥 |
| `wx-cli key set-image <account> <image-key>` | 手动设置图片密钥 |
| `wx-cli decrypt` | 解密数据库 |
| `wx-cli sessions` | 最近会话列表 |
| `wx-cli contacts --search <名字>` | 搜索联系人 |
@@ -178,7 +172,7 @@ REST 端点:`/api/v1/health`、`/api/v1/sessions`、`/api/v1/contacts`、`/api
## Contact Hiding
按账号隐藏指定联系人、群聊或带特定标签的联系人。启用后,查询、导出、监控和服务接口默认应用隐藏规则。
按账号隐藏指定联系人、群聊或带特定标签的联系人。启用后,查询、导出、监控等命令默认应用隐藏规则(全文搜索除外)
配置文件:`~/Library/Application Support/wx-cli/config/settings.toml`
@@ -208,7 +202,7 @@ ignore_tags = ["同事", "客户"]
wx-cli/
├── crates/
│ ├── wx-decrypt/ # 核心解密库(KDF、逐页解密、整库解密)
│ ├── wx-keychain/ # 密钥提取(LLDB / Mach VM)与本地存储
│ ├── wx-keychain/ # 密钥提取(LLDB hook)与本地存储
│ ├── wx-cli/ # CLI 入口
│ ├── wx-db/ # 数据库查询(联系人、消息、会话、群聊)
│ ├── wx-media/ # 媒体解密(图片、语音、视频)