wacli(WhatsApp CLI 工具 Skill):用一条命令把 WhatsApp 发消息与查历史交给 AI 执行
先给出五条核心结论,帮助你在 1 分钟内判断这个技能是否值得安装:
- 它是什么:
wacli是一个 WhatsApp 命令行工具,本 Skill 把它的能力封装给 AI 使用,让 AI 能在你的授权下向第三方发送 WhatsApp 消息、搜索与同步聊天历史,并完成历史回填。 - 它解决什么问题:把“打开手机 / 网页版 WhatsApp → 找到人 → 翻聊天记录 → 手动复制粘贴”这类重复劳动,转换成可脚本化、可自动化的命令行动作。
- 它不做什么:官方明确说明,
wacli不用于普通用户日常聊天;如果你正和 AI 通过 WhatsApp 对话,除非你要求它联系第三方,否则不应调用此工具。 - 安装方式:技能元数据中给出两种真实安装路径——
brew(formula 为steipete/tap/wacli)与go(module 为github.com/steipete/wacli/cmd/wacli@latest),安装后可用wacli doctor自检。 - 安全边界:必须提供明确的收件人 + 消息文本,发送前要确认收件人与内容,任何信息不明确时应先向你提问澄清。
该技能叫什么?如何下载安装 AI 技能提升开发效率?
技能身份卡
| 项目 | 内容 |
|---|---|
| 技能中文名 | wacliWhatsAppCLI工具Skill |
| 技能英文名 | wacli |
| 技能ID | 13530 |
| 官方主页 | https://wacli.sh |
| 依赖的可执行文件 | wacli(技能元数据中声明 requires.bins: ["wacli"]) |
它到底解决什么问题
日常使用 WhatsApp 时,很多高频动作其实是“机器更适合做、人却在手工做”的:给某个客户发一条预约提醒、把一份 PDF 议程发给同事、在几百个聊天里搜索某张发票、把某个群聊的历史消息补全下来做归档。这些动作的共同点是——有明确的收件人、明确的内容、明确的检索条件,完全可以用命令行表达。
wacli 就是把这些动作命令行化;而这个 Skill 的价值在于,它把命令行的“使用说明书”交给 AI:AI 知道该先认证、再同步、如何列出聊天、如何按时间范围检索、如何发送文本或文件,也知道在什么情况下不应该使用它。
安装路径(来自技能详情,真实可用的两种方式)
安装前提:你的环境中需要有 wacli 这个可执行文件,并具备 brew 或 go 工具链之一。
方式一:通过 Homebrew 安装
- 安装命令:
brew install steipete/tap/wacli - 对应 formula:
steipete/tap/wacli
方式二:通过 Go 安装
- 安装命令:
go install github.com/steipete/wacli/cmd/wacli@latest - 对应 module:
github.com/steipete/wacli/cmd/wacli@latest
安装完成后,建议按以下顺序验证与初始化:
- 自检:执行
wacli doctor,确认工具运行环境正常。 - 登录:执行
wacli auth,通过二维码登录完成认证,并触发初始同步。 - 持续同步:执行
wacli sync --follow,让消息保持连续同步状态。 - 在 AI 侧确认技能生效:让 AI 执行一次只读操作(例如
wacli chats list --limit 20),若能看到聊天列表,说明技能已可用。
说明:具体安装包版本、二维码有效期、登录频率限制等细节,以官方说明(https://wacli.sh)为准。
该技能的主要功能和特点
- 向第三方发送文本消息:
wacli send text --to <号码或 JID> --message "<内容>",支持国际格式号码,例如+14155551212。 - 向群组发送消息:收件人使用群组 JID(形如
1234567890-123456789@g.us),即可把消息发到指定群。 - 发送文件并附带说明文字:
wacli send file --to <收件人> --file <路径> --caption "<说明>",适合发议程、报表、截图等。 - 聊天列表查询:
wacli chats list --limit 20 --query "名称或号码",用于解析 JID——直接聊天 JID 形如<号码>@s.whatsapp.net,群组 JID 形如<id>@g.us。 - 消息全文检索:
wacli messages search "<关键词>" --limit 20 --chat <jid>,可限定单个会话;也支持按时间范围检索,如--after 2025-01-01 --before 2025-12-31。 - 历史回填:
wacli history backfill --chat <jid> --requests 2 --count 50,把某个会话更早的消息尽力补齐。 - 连续同步:
wacli sync --follow保持消息流持续更新。 - 机器可读输出:任意解析类命令加
--json即可获得结构化输出,便于 AI 直接消费与二次处理。 - 数据存储可控:默认存储目录为
~/.wacli,可通过--store参数覆盖,便于隔离不同账号或环境。 - 内置安全约束:要求明确的收件人与消息文本、发送前确认、信息不明确先澄清;并明确不用于日常用户聊天。
和“手动用 WhatsApp”比强在哪? 手动操作难以批量、难以检索、难以留痕;而命令行的每个动作都是可复制、可复查、可被 AI 编排的。特别是“按时间范围 + 指定会话 + 关键词”的三维检索,手动翻聊天记录几乎做不到。
如何使用该技能?
第 1 步:完成认证与同步
wacli auth # 二维码登录 + 初始同步
wacli sync --follow # 开启连续同步
wacli doctor # 环境自检
完成之后,工具才具备“看到会话”和“发出消息”的基础。
第 2 步:用聊天列表定位收件人
wacli chats list --limit 20 --query "名称或号码"
输出结果中会包含该会话的 JID。记住规则:直接聊天是 <号码>@s.whatsapp.net,群组是 <id>@g.us。也可以加 --json 让输出结构化,方便 AI 精确读取。
第 3 步:检索历史消息(只读,风险最低)
wacli messages search "发票" --after 2025-01-01 --before 2025-12-31
wacli messages search "查询" --limit 20 --chat <jid>
输入示例:让 AI “在 2025 年全年范围内找出所有包含‘发票’的消息”。输出示例:匹配到的消息列表(含所属会话),加 --json 则为结构化字段。建议首次使用先做检索类操作,确认工具与数据都正常。
第 4 步:按需回填历史
wacli history backfill --chat <jid> --requests 2 --count 50
注意官方提示:回填需要手机在线,且结果是尽力而为的,不保证 100% 完整。
第 5 步:发送消息(必须二次确认)
文本消息:
wacli send text --to "+14155551212" --message "你好!下午三点有空吗?"
群组消息:
wacli send text --to "1234567890-123456789@g.us" --message "晚到5分钟。"
发送文件:
wacli send file --to "+14155551212" --file /path/agenda.pdf --caption "议程"
关键流程建议:先让 AI 复述“收件人 + 消息全文”,你确认无误后再执行发送。这是官方安全规范的要求,也是避免误发的唯一可靠办法。
第 6 步:把规则写进你的使用习惯
- 当你在和 AI 用 WhatsApp 聊天时,不要让它用
wacli回复你——那是普通聊天场景,不走这个工具。 - 只有当你的诉求是“联系第三方”或“同步 / 搜索历史记录”时,才启用
wacli。 - 收件人或内容有任何模糊,先让 AI 提问澄清,而不是“猜一个号码发出去”。
同类型竞品对比分析
| 方案名称 | 定位 | 核心功能 | 安装 / 使用门槛 | 适用场景 | 优势与不足 |
|---|---|---|---|---|---|
| wacli(本技能) | 面向开发者与 AI 自动化的 WhatsApp 命令行工具 | 发文本/文件/群消息、聊天列表、消息搜索、历史回填、连续同步 | 需安装 wacli(brew 或 go),需二维码登录;命令行为主要交互方式 |
AI 代理代为发消息、历史检索与归档、脚本化通知 | 优势:命令清晰、支持 --json、可被 AI 直接编排、数据落在本地 ~/.wacli;不足:非图形界面、回填依赖手机在线且结果尽力而为、不适合当日常聊天客户端 |
| WhatsApp 官方网页版 / 桌面客户端 | 面向普通用户的手动聊天工具 | 收发消息、搜索聊天、传文件 | 扫码登录即可,零安装成本 | 个人日常沟通 | 优势:上手最快、体验完整;不足:无法脚本化批量操作、检索维度有限、难以与 AI 代理联动 |
| WhatsApp Business API(官方云 API) | 面向企业的合规消息通道 | 模板消息、会话管理、企业级回调 | 需企业资质与开发者接入,流程较重(以官方说明为准) | 大规模客服、营销触达 | 优势:合规性强、吞吐高;不足:接入成本高、模板限制多、不适合个人或小团队轻量使用 |
| 浏览器自动化脚本(自行编写) | 用自动化框架模拟网页操作 | 模拟点击、抓取页面内容 | 需自行开发与长期维护,易受页面改版影响 | 临时性、一次性的自动化需求 | 优势:灵活;不足:稳定性差、维护成本高、缺乏统一的命令语义与安全约束 |
选择建议:如果你要的是“让 AI 帮你发一条消息、查一段历史”,选 wacli;如果是“企业级合规触达”,选官方 Business API;如果只是“自己聊天”,用官方客户端就好,没必要上命令行。
该技能的典型应用场景与实际体验情况
场景一:销售 / 客户成功 —— 会前提醒与资料发送
角色与痛点:销售每天要手动给多位客户发“会议提醒 + 议程 PDF”,重复且容易漏发。
使用方式:先用 wacli chats list --query "客户名" 确认 JID,再让 AI 执行 wacli send file --to <JID> --file /path/agenda.pdf --caption "议程"。
实际体验:命令语义很直白,“收件人 + 文件 + 说明”三段式几乎不用查文档;--caption 让文件消息自带上下文,比只发一个附件更专业。注意事项:号码务必带国际区号;发送前一定要做收件人确认,避免发错人。
场景二:个人助理 —— 报销与发票的跨月检索
角色与痛点:月底报销要在聊天记录里翻出“今年所有含‘发票’的消息”,手动滚动几百个会话几乎不可能。
使用方式:wacli messages search "发票" --after 2025-01-01 --before 2025-12-31,需要精确定位某个会话时再加 --chat <jid>。
实际体验:这是本技能性价比最高的用法——只读、零风险、见效快。加上 --json 后结果可直接交给 AI 汇总成清单。注意事项:检索范围受限于已同步的数据,若发现缺失,先用 wacli sync --follow 保持同步或用 history backfill 补齐。
场景三:小团队协作 —— 群内统一通知
角色与痛点:临时变更(如“晚到 5 分钟”)要在群里通知,但正在电脑前工作,掏手机打断节奏。
使用方式:wacli send text --to "1234567890-123456789@g.us" --message "晚到5分钟。"。
实际体验:在终端里一句话搞定,比切手机快得多。注意事项:群组 JID 不是群名,必须先通过 wacli chats list 查到 @g.us 形式的 ID;群发内容的“确认环节”更不能省。
场景四:数据归档 —— 历史回填后做分析
角色与痛点:想把某个重要会话的完整上下文导出做复盘,但本地只缓存了近期消息。
使用方式:wacli history backfill --chat <jid> --requests 2 --count 50,随后对结果做检索或导出。
实际体验:能明显补上缺失的历史片段,但要有心理预期——官方明确说明需要手机在线且结果是尽力而为,不要把它当作“必定完整同步”的承诺。注意事项:分批、小步地回填比一次性拉取更稳妥。
该技能能为用户带来的价值
- 把“重复点击”变成“一行命令”:发文本、发文件、发群消息都有固定句式,一旦跑通即可反复复用,不再依赖记忆和手速。
- 把“翻不到”变成“搜得到”:
--chat、--after、--before组合出的三维检索,让历史消息从“沉没成本”变成“可查资产”。 - 把“人操作”变成“AI 可编排”:
--json提供机器可读输出,AI 可以基于结构化结果做汇总、比对、生成清单,形成“检索 → 加工 → 发送”的闭环。 - 降低自动化门槛:无需自建浏览器自动化脚本、无需维护易碎的选择器,只要会敲命令就能用;
brew/go两条安装路径覆盖了 macOS 与 Go 生态用户。 - 数据侧更可控:默认存储在
~/.wacli,可用--store隔离,便于本地管理与环境区分。 - 长期价值:命令是可版本化、可文档化、可交接的资产。一个人跑通的命令流程,可以原样交给同事或交给 AI 代理继续执行。
需要说明的是,这些收益的前提是遵守官方安全规范:明确收件人与内容、发送前确认、模糊时先澄清、不把它当作日常聊天工具。安全边界守住了,效率收益才是正向的。
常见问题 FAQ
Q1:怎么安装这个技能?一定要用 Homebrew 吗?
不一定要用 Homebrew。技能元数据中提供了两种安装方式:brew install steipete/tap/wacli,或 go install github.com/steipete/wacli/cmd/wacli@latest。装完先跑 wacli doctor 自检,再执行 wacli auth 扫码登录并完成初始同步。环境依赖与版本细节以官方说明(https://wacli.sh)为准。
Q2:这个技能收费吗?
技能详情中未提供任何定价信息,因此无法给出价格结论。请以官方主页的说明为准。可以确定的是:技能本身依赖本地可执行文件 wacli,使用前需要你自行完成安装与登录。
Q3:它能替我回复正在和我聊天的 WhatsApp 好友吗?
不能,也不应该。 官方明确说明:wacli 不用于日常用户聊天;如果你正在通过 WhatsApp 与 AI 对话,除非你明确要求它联系第三方,否则不应使用该工具。它的定位是向其他人发送消息与同步/搜索历史记录。
Q4:搜索不到想要的历史消息怎么办?
先确认同步状态:执行 wacli sync --follow 保持连续同步;若某个会话仍缺早期内容,用 wacli history backfill --chat <jid> --requests 2 --count 50 尝试回填,但要注意回填需要手机在线,且结果是尽力而为的,不保证完整。
Q5:发送前需要注意什么?万一发错人怎么办?
官方安全规范写得很清楚:必须提供明确的收件人 + 消息文本,发送前确认收件人与消息,任何内容不明确都要先提问澄清。实操建议是让 AI 复述“收件人 + 完整消息”等你确认后再执行。另外,收件人不要凭猜测填写——先 wacli chats list --query "名称或号码" 查到准确 JID(直接聊天 <号码>@s.whatsapp.net,群组 <id>@g.us)再发。