Skip to content

Repository files navigation

微信爪信

一个本地运行的 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

连接微信

  1. 打开“微信连接”。
  2. 安装腾讯微信官方插件。
  3. 点击“生成二维码”,用手机微信扫码确认。
  4. 在微信 ClawBot 会话中发送任意消息。
  5. 刷新绑定请求并批准。
  6. 将请求中的发送者 ID 保存为默认推送目标。
  7. 发送测试消息,再创建推送计划。

测试

.\.venv\Scripts\python.exe -m pytest -q

构建 Windows 桌面目录

.\build.ps1

构建结果位于 dist\微信爪信。该目录同时包含 Python 桌面程序、Node.js 24.15 和 OpenClaw 官方运行时。

边界

该项目连接的是微信中的独立 ClawBot 会话,不读取个人微信通讯录和历史聊天,也不用于向普通好友或群聊批量发送消息。

长时间运行保护

  • 单实例互斥,避免同时启动两个调度器造成重复推送。
  • 每个计划独立互斥,官方微信出站通道串行化。
  • 外部安装、登录和网关命令均有硬超时,并支持手动取消。
  • RSS 并行读取、单源隔离、超时和一次退避重试。
  • SQLite 使用 WAL、忙等待、启动完整性检查和每日在线备份。
  • 调度器每分钟执行健康检查,记录漏跑、重入和后台异常。
  • data\service.log 使用轮转日志,未捕获异常也会落盘。

为了避免系统休眠或软件关闭导致任务无法执行,需要让“微信爪信”保持运行,并在 Windows 电源设置中允许设备按计划保持唤醒。

About

本地运行的微信定时推送工具:通过腾讯官方 OpenClaw 插件连接 ClawBot,定时向自己推送固定消息或 RSS 更新。

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages