核心用法
Meta Business CLI 是 Meta 官方 Graph API 的命令行封装工具,开发者通过 meta 命令可完成 WhatsApp Business API、Instagram、Facebook Pages 及 Messenger 的完整自动化操作。核心工作流分为三步:配置 App ID/Secret 凭证、执行 OAuth PKCE 登录获取访问令牌、配置各平台资源 ID(如 WhatsApp Phone Number ID、Instagram Account ID)。
WhatsApp 自动化:支持发送文本/Markdown/分块长消息、图片、视频、文档、音频及语音消息(OGG/Opus 格式),调用预审批的 Message Template,管理媒体上传下载,以及查看 30 天粒度分析数据。内置 Allowlist 机制防止非授权号码的 Prompt Injection 攻击。
Instagram & Facebook Pages:支持图片/视频/Reels 发布、帖子评论管理、账户级与内容级洞察数据获取。Instagram 发布需使用公网可访问 URL,不支持本地文件直传。
Messenger:支持向 PSID 发送文本与图片,通过 Message Tag 突破 24 小时会话窗口限制。
Webhook 与运维:内置 webhook listen 启动本地服务器接收 Meta 推送事件,支持配置 forwardUrl 将入站消息转发至外部服务;meta service 子命令可安装 systemd 用户服务实现后台常驻。
显著优点
- 官方 API 直连:基于 Meta Graph API v22.0,非逆向或模拟方案,稳定性与合规性高
- 多平台一体化:单一 CLI 覆盖四大 Meta 核心触点,减少多工具切换成本
- 开发者友好:全局
--json标志提供结构化输出,便于脚本化与 AI Agent 集成;支持--token覆盖凭证实现 CI/CD 无头模式 - 安全设计:OAuth PKCE 流程、Token 作用域校验、WhatsApp Allowlist 防注入
潜在局限
- Meta 审核门槛:WhatsApp 商业账号需通过 Meta 企业验证,模板消息需预审批,个人开发者上手周期长
- Instagram 文件限制:仅支持公网 URL,本地文件需预上传至自有 CDN
- 平台政策约束:消息发送受 24 小时会话窗口、速率限制及内容合规政策严格约束,滥用易触发封号
- Bun 运行时依赖:默认通过 Bun 安装,对 Node.js 纯环境用户存在额外工具链成本
适合人群
- 需构建 WhatsApp Business 客服机器人或营销自动化系统的中小企业技术团队
- 运维工程师需通过 CLI 批量管理 Facebook Pages 内容或获取 Instagram 洞察数据
- 开发者希望以代码方式集成 Meta 消息能力至自有 CRM/Helpdesk 系统
- AI Agent 架构师需结构化工具调用接口(JSON 输出 + 非交互式执行)
常规风险
- 凭证泄露风险:App Secret 与 Access Token 存储于
~/.meta-cli/config.json,需确保文件权限 600 及磁盘加密 - 误操作群发:CLI 绕过 WhatsApp 官方 UI 的二次确认,脚本错误可能导致向错误号码批量发送付费消息
- Webhook 暴露:
webhook listen若部署于公网需配置verify-token与app-secret验证签名,防止伪造事件注入 - Token 过期:User Access Token 默认 60 天过期,长期自动化需配置 System User Token 并监控有效性