Agent Skills
返回列表
微信消息自动发送助手

微信消息自动发送助手

办公效率 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_8f8710c1/wechat-message-send。

技能介绍

它解决什么问题

把一段已经准备好的文本发到微信某个联系人或群聊,看起来简单,做起来坑很多:窗口被缩到托盘后进程还在,Alt+F4 并不能真正关闭微信;聊天列表里的会话名靠像素定位非常脆弱;Ctrl+F 之后直接回车,经常打开的是「搜一搜」而不是目标群;标题栏 OCR 在微信 4.0 的自绘 UI 上读出来是乱码,据此判断当前会话会误发到错误窗口。这个技能把这些易错环节集中处理,只负责「打开微信 → 搜索定位 → 发送」这一段,不关心文本从哪里来。

核心能力与关键步骤

  • 微信进程恢复:枚举隐藏窗口(find_main_window(include_hidden=True)),找到后用 SW_RESTORE 拉回前台;没有窗口时才启动 Weixin.exe;只找到登录窗会尝试点「进入微信」并等待。
  • 搜索导航替代列表扫描:先 Esc 清理残留状态,再 Ctrl+F 打开搜索,粘贴完整目标名,然后对下拉结果逐行 OCR(y 从 t+105 到 t+430,步长 36px),在「群聊」分区里命中关键词、同时排除招聘/公众号/搜一搜等建议噪声词,记录最后一个命中行并点击。
  • 发送前复验:点击输入框后用 pyperclip.copy 加 Ctrl+V 粘贴(长中文不走 typewrite,避免输入法乱码),随后 OCR 输入框区域确认消息首尾片段已就位,未命中立即清空并中止,绝不回车。
  • 发送后验证:回车发送,OCR 聊天区确认气泡出现,成功时输出 RESULT: SUCCESS。
  • 发送守卫:--guard 启用后,同日向同一目标发同一条消息会被 send_guard_state.json 跳过并输出 RESULT: SKIPPED,防止重复刷屏。

适用边界与注意点

  • 只吃现成文本:数据来源、排版、变量替换都由上游负责,本技能不做采集。
  • OCR 强烈建议:OCR 由 ocr-local-v2 提供,缺失时仍会发送,但无法可靠定位会话,只有微信已经停在目标会话时才稳妥。
  • Node 版本敏感:务必使用 Node 22.22.2,旧版本的 NODE_OPTIONS 会和 OCR 子进程不兼容,表现为静默 exit 9、OCR 返回空。
  • 登录可能仍需手机确认:脚本会尝试点「进入微信」并等待,但授权确认通常要在手机端完成;仍进不去时,手动打开微信并停在目标会话后再运行。
  • 坐标不写死:所有点击位置都从 GetWindowRect 的窗口矩形按比例派生,仅固化少量固定点。
  • 目标名要准:目标名偏差会导致定位失败或落到错误会话,失败时根据提示检查登录态、OCR 与目标名。

使用场景

  • 采集脚本跑完后,要把一段现成的通知文本发到固定的「项目协作群」,让脚本自己搜索定位群聊并发送。
  • 每天下班前要把写好的日报摘要发给指定联系人,不想手动开微信翻找会话再粘贴。
  • 搜索下拉里混着同名公众号和公司名,需要脚本逐行比对后点进真正的群聊行再发消息。
  • 定时任务每天发同一条消息,需要防止重复触发导致群里被同一条内容刷屏。

适合人员

  • 常写脚本跑数据采集、需要把生成结果推到微信群的后端工程师,想省掉手动复制粘贴这一步。
  • 每天要向指定联系人或工作群发固定通知的运营与行政,希望定时发送且不会重复刷屏。
  • 用自动化流程生成日报周报的团队,希望消息发送环节也能无人值守跑完。
  • 需要在微信 4.0 上稳定操控窗口与搜索框、处理隐藏窗口和登录态的桌面自动化开发者。