一个本地运行的 Python 桌面服务,通过腾讯官方 @tencent-weixin/openclaw-weixin 插件连接个人微信 ClawBot,用于定时向自己推送固定消息或 RSS 更新。
- FastAPI:本地 API 与静态界面
- SQLite:任务、默认目标和运行记录
- APScheduler:Python 定时调度
- pywebview:Windows 桌面窗口
- OpenClaw + 腾讯微信插件:官方扫码授权与消息通道
项目会在 node_modules 中安装一份符合 OpenClaw 要求的 Node.js 24.15 运行时,不依赖系统 Node 的补丁版本。
微信插件是 Node.js 组件,但所有业务逻辑、任务调度、存储和桌面服务均由 Python 实现。
在 PowerShell 中执行:
.\setup.ps1
.\start.ps1也可以使用浏览器模式:
.\.venv\Scripts\python.exe .\run.py --web- 打开“微信连接”。
- 安装腾讯微信官方插件。
- 点击“生成二维码”,用手机微信扫码确认。
- 在微信 ClawBot 会话中发送任意消息。
- 刷新绑定请求并批准。
- 将请求中的发送者 ID 保存为默认推送目标。
- 发送测试消息,再创建推送计划。
.\.venv\Scripts\python.exe -m pytest -q.\build.ps1构建结果位于 dist\微信爪信。该目录同时包含 Python 桌面程序、Node.js 24.15 和 OpenClaw 官方运行时。
该项目连接的是微信中的独立 ClawBot 会话,不读取个人微信通讯录和历史聊天,也不用于向普通好友或群聊批量发送消息。
- 单实例互斥,避免同时启动两个调度器造成重复推送。
- 每个计划独立互斥,官方微信出站通道串行化。
- 外部安装、登录和网关命令均有硬超时,并支持手动取消。
- RSS 并行读取、单源隔离、超时和一次退避重试。
- SQLite 使用 WAL、忙等待、启动完整性检查和每日在线备份。
- 调度器每分钟执行健康检查,记录漏跑、重入和后台异常。
data\service.log使用轮转日志,未捕获异常也会落盘。
为了避免系统休眠或软件关闭导致任务无法执行,需要让“微信爪信”保持运行,并在 Windows 电源设置中允许设备按计划保持唤醒。