novuhq/novu

The open-source communication infrastructure for agents and products

Novu – 产品与 AI 代理的开源通讯层

Novu 是一个 单一 API、统一对话平台,让您能在用户已经使用的多种渠道之间发送与接收消息——收件箱/应用内、电子邮件、短信、推送通知,以及 Slack、Teams、Telegram、WhatsApp 等聊天应用程序。它针对两类受众打造:

  1. 产品团队 需要一套通知系统(摘要、工作流、用户偏好设置、可嵌入的 <Inbox /> UI),而不必为每个供应商单独接线。
  2. AI 代理开发者 想让他们的代理在真实世界的渠道上与用户对话。Novu 会规范化进入的消息,将其路由至代理,并将代理的回复发送出去——全部通过一个“Agent Communication Infrastructure”(ACI)。

核心功能

  • Unified API – 单一请求格式适用于所有供应商与渠道。
  • Conversation model – 单一数据结构用于消息,无论来源为 Slack、电子邮件、短信等。
  • Bidirectional messaging – 接收用户消息并通过同一层发送代理回复。
  • Workflow engine – 条件路由、分支与通知摘要(批量处理)。
  • Embeddable UI components – 实时 <Inbox /> 与偏好设置面板,供网页应用使用(目前支持 React,未来计划支持 Vue、Angular、React‑Native)。
  • Extensive provider catalog – 包含 20 种电子邮件、37 种短信、8 种推送、13 种聊天,以及应用内收件箱,每个均以插件形式实现。
  • Open‑core licensing – 核心采用 MIT 许可证;企业专属功能则采用商业许可证。

典型使用场景

  • Product notifications – 警报、活动信息、营销消息,透过用户偏好的渠道发送。
  • Customer‑support bots – 将 LLM 驱动的聊天机器人连接至 Slack、Teams 或 WhatsApp,无需编写单独的 webhook 适配器。
  • Monitoring & alerting – 通过电子邮件、短信与应用内推送发送异常警报,对高频事件提供摘要。
  • Internal tooling – 将系统事件路由至团队偏好的聊天平台,同时保留可搜索的收件箱。

快速开始

  1. 在 Novu 仪表盘注册免费账户。
  2. 通过 UI 或 API 添加所需的供应商(例如 Twilio 用于短信,SendGrid 用于电子邮件)。
  3. 使用 SDK(@novu/js@novu/react 等)发送通知或嵌入 <Inbox /> 组件。
  4. 对于代理,实现一个处理器,接收 Novu 规范化的消息负载,进行处理(例如使用 Claude、LangChain 或自定义 LLM),并返回回复。

生态系统

  • SDKs – JavaScript/TypeScript(@novu/js)、React(@novu/react),未来路线图包含原生、Vue 与 Angular 包装器。
  • Docs & demos – 完整文档站点,提供“Novu Connect”CLI 演示,可在几分钟内将 Claude 管理的代理接入 Slack/Telegram/Email。
  • Community – Discord 服务器、开放的 issue 跟踪、贡献指南,以及公开的贡献者徽章。

Novu 本身并非 AI 模型,但它提供 让 AI 代理能够在完整的现代消息渠道上与真实用户沟通的底层设施,将静态通知转变为交互式、串联式的对话。