因为工作群用的微信群,信息非常多而杂,而我一般都屏蔽了消息,艾特我做海报的时候我纯一头雾水,不知道发生了啥。所以用AI帮我快速对齐颗粒度非常重要。

发现了一个将微信本地聊天记录整合成CLI的工具。

https://github.com/huohuoer/wechat-cli

微信CLI

使用效果

内容整理

海报内容逻辑

用来对齐非常有用!

安装方法

使用文档中的方法安装后,再对龙虾说:

1
学习 https://github.com/huohuoer/wechat-cli/blob/main/README_CN.md 这个项目,整合成skill,提供微信聊天记录的阅读能力

以下是文档内的方法

1. 通过 npm 安装(推荐)

对于大多数用户,官方推荐优先使用 npm 方式安装:

1
npm install -g @canghe_ai/wechat-cli

更新到最新版本可执行:

1
npm update -g @canghe_ai/wechat-cli

需要注意的是,README 当前说明 npm 方式目前仅提供 macOS arm64 二进制版本;如果是其他平台,则建议改用 pip 方式安装。

2. 通过 pip 安装

如果当前环境不适合使用 npm,或者所用平台未提供对应二进制,也可以通过 Python 的 pip 进行安装:

1
pip install wechat-cli

使用这一方式时,需要本机满足 Python 3.10 及以上版本

3. 从源码安装

对于希望自行调试、二次开发,或需要更灵活控制安装过程的用户,可以选择从源码安装:

1
2
3
git clone https://github.com/freestylefly/wechat-cli.git
cd wechat-cli
pip install -e .

源码安装方式更适合开发环境,可以直接以可编辑模式安装,便于后续修改与测试。

安装前的环境要求

在正式安装前,建议先确认本机运行环境:

  • 若使用 npm 安装,需先具备可用的 Node.js 环境。
  • 若使用 pip 安装,需确保 Python 版本不低于 3.10

快速开始

第一步:初始化

安装完成后,并不能直接开始查询数据,还需要执行初始化操作。初始化前,请确保 微信正在运行。项目文档说明,在初始化阶段,工具会自动检测微信数据目录、提取加密密钥,并将相关配置保存到 ~/.wechat-cli/ 目录中。

1
2
3
4
5
# macOS / Linux:可能需要 sudo 权限
sudo wechat-cli init

# Windows:在有足够权限的终端中运行
wechat-cli init

如果本地登录了多个微信账号,初始化过程中可能会出现多份数据目录供选择,此时应选择当前正在使用的微信账号对应的数据目录,默认通常是第一个。

macOS 额外注意事项

1. 提前开启终端的“完全磁盘访问权限”

在执行 init 之前,需要为终端应用开启“完全磁盘访问权限”,否则工具可能无法访问微信数据目录,进而导致密钥提取失败。可按以下路径开启:

系统设置 → 隐私与安全性 → 完全磁盘访问权限

随后将 Terminal、iTerm2 或 IDE 内置终端加入授权列表,并在开启后重启终端。

2. 遇到 task_for_pid failed 错误时的处理

README 提到,在部分 macOS 系统中,即使使用 sudo 执行初始化,也可能出现 task_for_pid failed 错误。这通常是由于 macOS 的安全策略限制了进程内存访问。

WeChat CLI 会自动尝试修复该问题,对微信重新签名以获取必要权限。通常可按以下流程处理:

  1. 工具自动对微信重新签名。
  2. 完全退出微信,而不是仅关闭窗口或最小化。
  3. 重新打开微信并登录。
  4. 再次执行 sudo wechat-cli init

如果自动签名失败,README 也提供了手动重新签名的方法:

1
2
3
4
5
6
7
8
9
10
11
# 先退出微信,然后执行:
sudo codesign --force --sign - --entitlements /dev/stdin /Applications/WeChat.app <<'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.get-task-allow</key>
<true/>
</dict>
</plist>
EOF

根据 README 说明,重新签名通常不会导致封号或账号异常,但可能影响微信的部分功能或自动更新。如果后续发现功能异常,或希望更新到最新版微信,可直接从微信官网下载并重新安装;已有的配置和密钥通常不会受到影响。

第二步:开始使用

完成安装并初始化后,可以通过以下命令快速验证是否可正常使用:

1
2
3
wechat-cli sessions                          # 最近会话
wechat-cli history "张三" --limit 20 # 查看聊天记录
wechat-cli search "截止日期" --chat "项目组" # 搜索消息

这几条命令分别用于查看最近会话、读取聊天记录以及按关键词搜索消息。