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 伺服器、開放的議題追蹤、貢獻指南,以及公開的貢獻者徽章。

Novu 本身並非 AI 模型,但它提供 讓 AI 代理能在完整的現代訊息渠道上與真實使用者溝通的基礎設施,將靜態通知轉變為互動式、串聯式的對話。