微信 Mac 视觉自动化助手

用视觉识别和 Agent 推理处理微信 Mac 消息,并通过界面自动回复。

Star 数
★ 125
最近更新
今天
License
MIT
主语言
Python

30 秒速览

运行形态
命令行工具自托管服务
可在哪里用
平台专用
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
macOS 12+Python 3.10+微信 Mac 版所配置的 LLM 或多模态服务商 API 密钥Shell / 命令行网络访问本地文件系统
典型场景
希望在自己的 Mac 上自动处理未读聊天并按本地人设回复的个人用户。
不适合
  • 需要跨平台运行的用户
  • 要求推理期间聊天内容和截图绝不离开本机的团队

这个 Agent 能做什么,适合哪些场景?

这是一个面向 macOS 的微信自动化框架,默认把微信当作黑盒 GUI,通过截图、视觉识别和系统级自动化处理消息。启动入口 python3 run_bot.py 会运行周期性主循环:感知窗口内容、跨轮去重、由 Agent 选择回复或工具,再通过 UIInteractor 操作界面。SmartPipeline 使用像素差异判断是否需要调用多模态 API,VisionPipeline 可在该 API 不可用时提供本地 OCR 回退;可选 WeFlow 模式从用户授权的本地数据库副本导入历史记录以初始化记忆。记忆由工作记忆、会话记忆、LLM Wiki 和 BGE 向量检索组成,运行数据与索引保存在本地。项目还提供 FastAPI 管理后台、结构化日志和 benchmark 工具;部署需要 macOS 权限,且使用外部模型时会将相关 Prompt 或截图发送给所配置的服务商。

安装依赖并配置 .env 中的 API Key 和 data/persona.md 人设后,运行 python3 run_bot.py。Bot 使用 screencapture 获取微信窗口画面;SmartPipeline 对截图做像素 Diff,并在画面变化时调用多模态 API 提取消息与布局,VisionPipeline 则以本地 OCR 作为备用。GlobalStore 使用 LCS 等匹配方式跨 tick 去重,再将新消息交给轻量化 Agent 的 ReAct 循环;Agent 可调用 search_memory、web_search、browse_url 等工具,也可按配置路由到 Hermes 路径。行动层通过 AppleScript、cliclick 和 UIInteractor 切换聊天、发送文本或文件,并处理登录恢复。Bot 可把新消息加入记忆检索;可选 WeFlow 模式可从用户授权的本地数据库副本导出历史消息。产物包括微信界面上的回复、SQLite 聊天记录、记忆与向量索引、结构化运行日志和 benchmark 报告。

  1. 希望在自己的 Mac 上自动处理未读聊天并按本地人设回复的个人用户。
  2. 希望 Agent 检索历史聊天和人物 Wiki 后再回复的微信使用者。
  3. 需要把可分享文件白名单中的文件发送到微信聊天的用户。
  4. 想用本地 OCR 回退处理视觉 API 暂不可用情况的开发者。
  5. 需要检查 tick 日志、人工标注案例或运行 benchmark 的项目维护者。

如何安装或部署这个 Agent?

需要 macOS 12+、Python 3.10+ 和微信 Mac 版,并为运行 Bot 的应用授予屏幕录制、辅助功能及首次运行时请求的自动化权限。仓库文档给出的安装与配置步骤如下;API Key 应填入 .env,人设文件应保存在 data/persona.md。

pip install -r requirements.txt
cp .env.example .env
cp prompts/persona.md.example data/persona.md

README 未指定 .env 中必须使用的具体服务商或变量名;请按项目配置模板填写 API Key。使用外部 LLM 或多模态 API 需要网络连接。

如何使用这个 Agent?

前台启动 Bot:

python3 run_bot.py

如需常驻管理后台,README 提供 LaunchAgent 启动方式:

launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.wechat-mac-rpa.admin.plist
launchctl enable gui/$(id -u)/com.wechat-mac-rpa.admin
launchctl kickstart gui/$(id -u)/com.wechat-mac-rpa.admin

开发者可前台运行管理后台:

python3 scripts/admin.py

初始化长期历史索引的命令为:

python3 scripts/update_history_index.py

这个 Agent 有哪些优点和局限?

优点
  • 默认 SmartPipeline 模式通过截图和公开 macOS API 操作界面,不依赖协议逆向、数据库读取或代码注入。
  • SmartPipeline 先做像素 Diff,无实质变化时跳过多模态 API 调用;VisionPipeline 提供本地 OCR 回退。
  • 包含工作、会话和长期记忆,search_memory 可结合 Wiki 摘要与历史聊天原文检索。
  • 结构化 tick 日志、benchmark、人工 Review 与 LLM Judge 组成质量评估和迭代工具链。
局限
  • 仅支持 README 所述的 macOS 12+ 环境,并依赖微信 Mac 版及屏幕录制、辅助功能等系统授权。
  • 使用外部 LLM 或多模态 API 时,相关 Prompt 或截图会发送给配置的服务商;费用取决于服务商,README 未列价格。
  • 完整启用需要配置 API Key、运行时数据和人设,并可能需要配置 WeFlow 历史导入;步骤多于单命令安装。
  • README 未列出支持的 LLM 服务商清单,也未给出在其他平台运行的路径。

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
微信 Mac 视觉自动化助手 当前 49 · 缺口较多 命令行工具免费 + 模型费 ★ 125 今天 Python —
Nuphus 桌面自动化 MCP 72 · 存在缺口 MCP 服务器免费 + 模型费 ★ 328 3 天前 Rust Claude.ai · OpenAI API · Claude API
Clawd Cursor 74 · 存在缺口 MCP 服务器免费 + 模型费 ★ 406 今天 TypeScript Codex · Claude Code
Agent Desktop 85 · 表现良好 命令行工具免费 ★ 1.8k 今天 Rust —

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
49/ 100 五分制 2.5 / 5
信任安全 11/29
可靠稳定 6/14
适用触发 10/18
规范维护 11/18
有效结果 7/13
证据核验 4/8
查看各维度的扣分理由
信任安全11 / 29 · 1.9/5

README 明确说明辅助功能、屏幕录制、自动化权限用途,并披露本地聊天数据、WeFlow 数据库副本及发送给所配置 LLM 服务商的 Prompt/截图数据流,也建议不提交密钥和聊天数据;这些说明支持部分透明度与敏感数据处理得分。扣分原因是 Bot 会自动切换聊天并发送消息、文件,未见逐条发送前确认机制;所需系统权限和外部影响较大,恢复/撤销措施仅见数据库备份脚本,未覆盖误发消息;依赖清单未给出审计或漏洞缓解证据;发布者身份及代码归属未验证。

可靠稳定6 / 14 · 2.1/5

README、快速指南和故障手册提供分层说明、日志诊断流程及具体错误情形,测试片段也展示部分动作失败处理。扣分原因是指南中入口、目录和历史数据路径描述存在差异,例如快速指南提到已删除的旧版本与仓库 README 的当前结构并列,且测试目录描述不完全一致;依赖版本多数采用范围或固定旧版本,未说明可用性保障。CI 配置和测试文件提供一定支持,但不能据此声称本次执行通过。

适用触发10 / 18 · 2.8/5

文档面向 macOS 微信自动化场景,写明 macOS/Python 版本、OCR/SmartPipeline 与可选 WeFlow 路径、服务商数据传输条件及故障排查;模块与可选能力边界有较多描述。扣分原因是自动回复触发条件和每条消息是否发送的用户控制边界没有在提供材料中完整说明,适用范围主要限于特定平台、应用和中文聊天语境。

规范维护11 / 18 · 3.1/5

README 有目录、架构图、项目结构、术语表、文档索引和快速开始,MIT 正文完整;安装、配置、FAQ、排错与已知约束均有一定覆盖。扣分原因是部分快速指南仍引用与当前结构不一致的旧路径或测试位置;材料中没有清晰的版本发布策略、变更日志或明确的维护责任人,发布者也未验证。

有效结果7 / 13 · 2.7/5

项目描述了从截图识别、消息处理到自动回复的端到端用途,并提供可配置人设、记忆检索、日志与后台等实用能力。扣分原因是自动化回复的边际收益和运行成本没有量化,Benchmark 数字虽列出但本次所给材料没有对应数据集、评估协议或可复核的结果文件支持;外部模型调用及人工维护也带来持续成本。

证据核验4 / 8 · 2.5/5

架构、操作权限、数据流及诊断步骤有较具体的文件内说明,CI 工作流和动作测试片段可交叉支撑部分工程主张。扣分原因是许多性能、质量和生产级声明只有 README 自述,未附 benchmark 原始结果或独立佐证;声明、设计描述与实际已验证行为的边界虽有少量说明,但整体仍不充分。

风险与缓解建议
  • 源码中未见:来源归属可核验从官方仓库或包源安装,核对发布者和仓库地址,避免同名仿冒包。
  • Bot 可自动切换微信聊天并发送回复或白名单文件;部署前应检查回复策略、文件白名单和宿主权限,并注意误发消息没有可见的撤回保障。
  • 使用外部多模态或 LLM 服务时,聊天 Prompt 或截图会发送给配置的服务商;启用 WeFlow 还会导入本地历史聊天记录,需评估数据授权与保存范围。
  • README 中的 Benchmark 数字没有随本次材料提供原始数据或评测协议,不能视为独立复核结果。
证据充分度:低 评估于 2026年10月23日 审查版本 487f8ff5b568
查看完整评分方法 →

常见问题

运行时需要授予哪些 macOS 权限?
需要屏幕录制权限以截取微信窗口、辅助功能权限以控制窗口,并在首次运行时授权 System Events 自动化。权限应授予实际启动 Bot 的应用。
聊天内容或截图会上传吗?
持久化聊天记录和记忆数据保存在本地;使用外部 LLM 或多模态 API 时,完成推理所需的 Prompt 或截图会发送给所配置的服务商。
必须读取微信本地数据库吗?
不需要。默认 OCR / SmartPipeline 模式不读取数据库;可选 WeFlow 模式会读取用户授权的本地数据库副本来初始化历史记忆。
多模态 API 不可用时会怎样?
README 说明 VisionPipeline 是纯本地 OCR 备用管道;这提供感知层回退,但文档没有承诺其他 Agent 推理或发送故障都能自动恢复。
软件本身免费吗?
项目采用 MIT License。README 没有说明服务商价格;若配置付费 LLM 或多模态 API,调用费用取决于所选服务商。
在 GitHub 查看 ↗ 安装 ↓

相关 Agents