项目文档引言

WeAgent 是一个个人项目。本文用平实的语言说明它的定位、技术选型、客户端已经做好的部分,以及当前还没有接入的能力。

项目定位

WeAgent 基于“视觉识别 + 大模型理解 + 系统级自动化”,目标是把微信客户端里的重复操作串成可验证的动作闭环,例如搜索会话、打开聊天、输入内容、发送消息,并用截图与像素差来确认动作是否真正生效。

客户端负责“看 → 读 → 摸”:看是截图和模板匹配;读是把界面内容转成结构化信息;摸是用 Win32 原生 API 执行点击、输入与滚动。云端部分预留了授权、租户管理与策略编排,当前仍以本地调试能力为主。

系统架构

客户端 WeAgent Desktop
├── 界面层:Wails v3(Go 引擎 + React 前端)
├── 本地编排:动作级状态机
├── 动作层:看 / 读 / 摸
├── 独立桌面 + 画中画:自动化与用户桌面隔离
└── 离线缓存与同步:断网暂存、恢复后补发(同步模块预留)

云端(当前为预留接口)
├── 云超管:License 授权 / 租户管理
└── 云端大脑:策略编排 / 会话存档 / 智能建议

客户端只支持 Windows。自动化进程运行在单独的 BotDesktop 上,用户桌面上只保留一个画中画小窗用于实时观察。

客户端“看 / 读 / 摸”动作层

动作层按“定位目标 → 点击/输入 → 验证结果”的方式工作。定位主要用截图和 NCC 模板匹配;输入使用 PostMessage 后台投递,不移动用户鼠标,也不抢占焦点;发送完成后会用像素差检查输入框是否清空、消息区是否出现新气泡。

显示识别区域调试界面:微信界面叠加区域框与锚点
显示识别区域:把微信界面拆成区域与锚点,用于动作定位(素材来源:Windows 11 虚拟机内实机截图,复用 site/assets 素材)
消息发送完成弹窗与画中画放大画面
消息发送流程:左侧为调试入口与完成弹窗,右侧为画中画放大(素材来源同上)

客户端功能说明

  • 扫码登录:微信需要登录时,机器人桌面出现二维码,主桌面宠物气泡提示,画中画显示二维码。
  • 宠物提示:动作开始时宠物气泡说明当前状态,动作完成后自动收起。
  • 画中画:用户桌面上的一块实时小窗,用于观察机器人桌面上的微信。
  • 机器人桌面:提供进入与返回入口,避免自动化与用户桌面混在一起。
  • 显示识别区域:调试窗口用色块和锚点标出微信界面分区与实测尺寸。
  • 消息发送:调试入口固定发送到“文件传输助手”,包含搜索、打开、输入、发送与验证。

离线缓存与调试模式

调试模式是客户端的一等公民。云端未实现或未连接时,设置窗口的调试面板仍可手动触发动作、查看结构化结果与日志,离线缓存与同步模块为后续接入预留。

当前进度

客户端基本能力已经可以本地跑通:界面、本地编排、看/读/摸动作层、独立桌面 + 画中画、离线缓存与调试面板均已落地;云端 License、策略编排与会话存档目前仍是接口与规划,尚未接入实际服务。

使用边界

请遵守微信软件许可与所在地法律法规,仅在工作流明确允许的范围内使用自动化,并注意会话数据可能包含个人信息,不宜在未授权场景下大规模采集或导出。