SuperAPI AI 工具集

imessage-convex-agent

智能体与模型

查看项目

更新于 10-15 22:15

技能介绍

用途:提供一套从生产环境提取的实现手册,在 Convex 后端构建 iMessage AI 智能体通道,链路为 Sendblue webhook → Convex brain → 智能体(通过 @convex-dev/agent 调用 OpenRouter)→ 回复与输入状态。references 目录附带真实代码:sendblue-adapter.ts、schema.ts、webhook-and-brain.ts、links.ts、agent-setup.md、testing.md,其中表名与函数名为推荐形态而非强制要求。

技术栈:Sendblue 作为 iMessage 提供方,可自助注册、有免费沙箱(共享号码,约 10 个联系人);Convex 负责 HTTP action webhook、mutation 入队、action brain;@convex-dev/agent 加 OpenRouter 作为模型网关。

主要能力:webhook 按 (channel, updateId) 去重并入队;身份解析与账号关联(6 位短码、15 分钟有效期);输入状态指示;媒体入站即时抓取到 Convex 存储;长回复分块(约 2000 字符);卡片以附加图片发送。

必要用法:先在 dashboard.sendblue.com/company-signup 注册并获取 API key、API secret、Global Secret 与号码;用 npx convex env set 设置 SENDBLUE_API_KEY、SENDBLUE_API_SECRET、SENDBLUE_SIGNING_SECRET、IMESSAGE_FROM_NUMBER 等环境变量;在 Sendblue 面板注册 webhook:https://<deployment>.convex.site/imessage/webhook?secret=<signing-secret>。每个号码仅注册一个 webhook,避免重复处理。

限制:所有蓝气泡提供方依赖 Apple 私有协议,建议保持通道层与提供方解耦;机器人 URL 消息不会生成链接预览,需改用附加卡片图片。生成失败与投递失败需分开处理;重新关联不同账号时应清除 chat 的 threadId。验证应以数据库行副作用为准,而非回复文本。该技能不涵盖智能体/流式核心、纯 SMS/Twilio 通道与 Apple Messages for Business。