如何用wechat-cli打造微信新消息监控脚本:new-messages增量查询机制实战教程
如何用wechat-cli打造微信新消息监控脚本new-messages增量查询机制实战教程【免费下载链接】wechat-cliA CLI tool to query your local WeChat data — chat history, contacts, sessions, favorites, and more. Designed for LLM integration.项目地址: https://gitcode.com/gh_mirrors/wech/wechat-cliwechat-cli 是一款命令行查询本地微信数据的开源工具而它的new-messages 命令正是打造「微信新消息监控脚本」的关键——通过增量查询机制你无需编写任何数据库代码只需一行 shell 轮询命令就能实时捕获新消息配合定时任务轻松实现自动化提醒。new-messages 增量查询机制是如何工作的很多新手在写监控脚本时第一个难题是每次轮询如何判断哪些消息是新来的总不能每次都拉取全部聊天记录吧wechat-cli 的new-messages命令内置了解决方案核心逻辑见 wechat_cli/commands/new_messages.py首次调用命令会读取微信本地会话库中所有未读会话返回这批未读消息并把每个会话的最后消息时间戳记录到磁盘后续调用命令将当前会话时间戳与上次记录逐一比对只返回时间戳更新的会话即新增消息然后刷新记录。这个记录水位线 → 只吐增量的设计正是增量查询Incremental Query的典型思路——每次调用都是幂等的调用间隔越长返回的只是期间的差量天然适合轮询监控。增量状态保存在~/.wechat-cli/last_check.json相关状态目录定义在 wechat_cli/core/config.py。想从头重新监控删掉这个文件即可重置。快速上手三步装好并初始化 wechat-cli第一步npm 一键安装无需 Pythonnpm install -g canghe_ai/wechat-cli如果你习惯 Python 环境也可以用pip install wechat-cli需要 Python 3.10。如果你在用 AI 编程助手直接把帮我配置并安装npm install -g canghe_ai/wechat-cli这句话丢给它即可自动完成第二步运行 init 提取密钥微信本地数据库采用 SQLCipher 加密init会自动完成三件事检测数据目录、扫描微信进程内存提取密钥、生成配置到~/.wechat-cli/# macOS / Linux需要扫描进程内存可能要 sudo sudo wechat-cli init # Windows在权限足够的终端中直接运行 wechat-cli init如果你本机登录了多个微信账号init 会列出候选数据目录让你选择当前使用的那个默认第一个不确定哪个是当前登录账号进入数据文件夹按修改时间排序最新的那个就是第三步验证查询能力wechat-cli sessions --limit 10 # 最近 10 个会话 wechat-cli new-messages # 首次调用返回未读并记录状态⚠️ macOS 用户注意请先在系统设置 → 隐私与安全性 → 完全磁盘访问权限中授权终端否则 init 会因无法访问微信数据目录而失败。详见 README_CN.md 的快速开始章节。实战写出你的微信新消息监控脚本方案一常驻轮询脚本最简单所有命令默认输出结构化 JSON非常适合脚本解析。新建wechat_monitor.sh#!/bin/bash # 每 30 秒检查一次微信新消息纯文本输出 while true; do wechat-cli new-messages --format text sleep 30 done运行bash wechat_monitor.sh后终端会持续滚动输出类似这样的增量结果2 条新消息: [14:23:05] 团队群 [群]: 文本 (张三) - 下午三点开会 [14:25:18] Alice: 图片 - (压缩内容)如果某 30 秒内没有新消息只会输出无新消息绝不会重复推送旧消息——这就是增量机制的价值。方案二cron 定时轮询更适合长期运行不想挂常驻进程把检查动作注册到系统定时任务即可。在 crontab 中每 5 分钟执行一次并把输出追加写入日志*/5 * * * * /opt/homebrew/bin/wechat-cli new-messages --format text ~/wechat_monitor.log 21之后配合一个简单的 grep 就能做关键词告警比如只盯群里的告警二字grep -E 告警|error ~/wechat_monitor.log | tail -5方案三把 JSON 交给任意脚本做二次处理默认 JSON 输出包含chat会话名、is_group是否群聊、sender发送者、msg_type、timestamp等字段。想只监控特定群过滤messages数组里is_group且chat匹配的条目即可几行代码就够。进阶技巧new-messages 与 unread 的组合拳场景推荐命令增量捕获新来的消息监控脚本wechat-cli new-messages一次性查看全部未读会话unread 命令查看某个会话最近消息wechat-cli history 会话名 --limit 20重置增量水位线重新全量删除~/.wechat-cli/last_check.json注意两者的区别unread只看当前未读数大于 0的会话适合人工查看new-messages依赖时间戳水位线即使消息已被你读掉只要时间戳变了监控脚本依然能捕获到——所以做自动化监控请优先选 new-messages。常见问题 FAQQ1监控脚本会重复推送同一条消息吗不会。每次调用后水位线自动推进已报告过的会话时间戳不会再次触发。重复调用是安全的。Q2删除 last_check.json 后会发生什么等同于首次调用会重新返回全部未读会话并重建水位线适合换账号或重新部署监控时使用。Q3数据会被上传吗不会。wechat-cli 全程在本地解密查询数据不出本机。它只读取数据不发送、不修改任何消息。Q4Linux 上为什么必须 root因为 init 需要读取微信进程内存提取密钥/proc/pid/mem访问需要 root 权限监控命令本身则用普通用户运行即可。总结用 wechat-cli 打造微信新消息监控脚本的核心就三句话init一次性完成密钥提取后续所有查询免配置new-messages的增量查询机制替你解决了如何只取新消息的难题状态自动持久化无论常驻循环还是 cron 定时一条命令 几行 shell 即可上线一个轻量、无依赖的微信消息监控。更多命令用法可参考 README.md 的 Command Reference 章节。祝你的监控脚本跑得又快又稳 【免费下载链接】wechat-cliA CLI tool to query your local WeChat data — chat history, contacts, sessions, favorites, and more. Designed for LLM integration.项目地址: https://gitcode.com/gh_mirrors/wech/wechat-cli创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

插件加载失败?一文看懂激活机制与完整排查链路

插件加载失败?一文看懂激活机制与完整排查链路

那天我接了一个内部的web项目,启动的时候控制台直接甩了一行红字:failed to load plugins web boot: 2 entries did not activate linxin666/dsh-p当时第一反应是"这插件是不是没装对"。但去插件目录看了一眼,文件都在,…

2026/10/4 9:41:32 阅读更多 →
插件加载失败排查:破解 did not activate 的实战指南

插件加载失败排查:破解 did not activate 的实战指南

1. 我为什么开始扒插件的底裤事情得从一个看似不起眼的报错说起。前几天我在调一个老项目的启动流程,控制台突然蹦出来一行让我脑壳疼的信息:failed to load plugins web boot: 2 entries did not activate。当时第一反应是“谁又动了我的插件目录”&…

2026/10/4 9:41:32 阅读更多 →
LongCat-Video社区生态建设:如何贡献和参与项目发展

LongCat-Video社区生态建设:如何贡献和参与项目发展

LongCat-Video社区生态建设:如何贡献和参与项目发展 【免费下载链接】LongCat-Video 项目地址: https://gitcode.com/GitHub_Trending/lo/LongCat-Video LongCat-Video是一个功能强大的视频生成项目,它允许用户通过文本、图片或音频等多种输入方…

2026/10/4 9:40:32 阅读更多 →

最新新闻

AI Agent Harness Engineering 后端架构选型:微服务 vs 单体架构的取舍与 TaoToken 统一接入实践

AI Agent Harness Engineering 后端架构选型:微服务 vs 单体架构的取舍与 TaoToken 统一接入实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 10:19:04 阅读更多 →
传播学论文赶 DDL 指南:别找“全网第一”,按环节挑 AI 才顺手 [特殊字符]

传播学论文赶 DDL 指南:别找“全网第一”,按环节挑 AI 才顺手 [特殊字符]

如果你是传播学专业,大概率遇到过这种任务:要写一篇类似 《短视频算法推荐对大学生信息窄化的影响——基于问卷调查的实证研究》 的毕业论文。 这事难就难在,它不是单纯“写一篇作文”: 先要梳理使用与满足、沉默的螺旋、议程设置…

2026/10/4 10:19:04 阅读更多 →
【AI大模型部署】vscode+ollama(本地部署)+twinny代码助手:把本地模型 endpoint 改到 TaoToken 的配置与验证

【AI大模型部署】vscode+ollama(本地部署)+twinny代码助手:把本地模型 endpoint 改到 TaoToken 的配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 10:19:04 阅读更多 →
学术写作新纪元!2026全能型AI论文写作工具终极指南:用TaoToken统一Key打通文献综述到投稿全流程

学术写作新纪元!2026全能型AI论文写作工具终极指南:用TaoToken统一Key打通文献综述到投稿全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 10:19:04 阅读更多 →
AMD平台微星主板开机慢?Memory Context Restore开启指南

AMD平台微星主板开机慢?Memory Context Restore开启指南

1. 开机慢到怀疑人生?先搞清楚内存自检到底在干什么如果你用的是AMD平台搭配微星主板,大概率遇到过这种情况:按下电源键,风扇转了、灯亮了,但屏幕就是黑着不动,十几秒甚至几十秒之后才“滴”一声亮出微星LO…

2026/10/4 10:19:04 阅读更多 →
Android Ext4文件系统故障排查:从Journal机制到fsck实操

Android Ext4文件系统故障排查:从Journal机制到fsck实操

前阵子帮朋友排查一台老设备的Android系统,现象是重启后一直卡在开机动画,进了Recovery发现/data分区挂载失败。折腾了一整天,最后定位到是Ext4文件系统的journal区域出现了坏块。类似的坑我踩过不止一次,而且现在网上关于Android…

2026/10/4 10:18:03 阅读更多 →

日新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/2 10:36:31 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 9:43:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 9:42:36 阅读更多 →