Chat SDK:用於多平台聊天機器人的統一 TypeScript SDK
專案速覽:統一的 TypeScript SDK,用於跨 Slack、Microsoft Teams、Google Chat、Discord 等建立聊天機器人。
秒懂
- 它是什麼?
- 基於 vercel/chat 儲存庫的說明,涵蓋安裝、適配器、用法、功能、AI 編碼代理工具與授權。
- 適合誰用?
- Chat SDK 的 README 呈現一個小型核心與廣大的適配器生態。它定義了安裝、CLI 脚手架、一個用法範例、功能列表與 AI 代理工具,然後把其餘內容指向 chat-sdk.dev。
- 可以商用嗎?
- 可以。MIT 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
- 還在維護嗎?
- 有在維護。儲存庫在最近一天內有新的提交。
- 用什麼語言寫的?
- 主要是 TypeScript(依據 GitHub 的語言統計)。
以上回答依據專案的 GitHub 資料(最近同步於 2026年9月18日)與我們的分析,不構成法律意見。
開源專案深度解析
Chat SDK 的適配器邊界
Chat SDK 是以 `chat` 為套件名稱的 TypeScript 套件。README 將它描述為一個統一的 SDK,用於在 Slack、Microsoft Teams、Google Chat、Discord、Telegram、GitHub、Linear、WhatsApp 等平台上建立聊天機器人。核心想法是只寫一次機器人邏輯,然後部署到任何受支援的平台。平台相關行為放在適配器中,也就是 `@chat-adapter` 範疇下的獨立 npm 套件。README 沒有列出每一個受支援的平台,也沒有說明適配器覆蓋範圍如何維護。(vercel-chat第1節第1段)
對 Chat SDK,應特別記錄 adapter、thread、state 與 webhook route 的對應;Slack、Teams 和 Google Chat 的事件生命週期並不相同,不能只以一次成功回覆推定所有平台一致。 以 vercel-chat 為例,實際採用時要把 README 的入口、設定名稱與輸出形狀放在同一條可追蹤路徑上。先從專案提供的安裝或啟動命令建立最小案例,再逐項加入平台、模型、檔案或執行環境的差異。這樣才能分辨是核心能力、整合層問題,還是本機設定造成的結果。
事件與執行緒狀態
使用 `npm i chat` 安裝 SDK。適配器需另外安裝;README 展示了 `npm install @chat-adapter/slack @chat-adapter/teams @chat-adapter/gchat`。CLI 套件 `create-chat-sdk` 在執行 `npx create-chat-sdk@latest my-bot` 時會產生一個 Next.js 機器人應用。根據 README,CLI 會產生 `Chat` 設定、webhook 路由、`.env.example` 檔案、依賴,以及可選的 Web 適配器路由。README 沒有涵蓋 CLI 的選項和非互動式用法,這些內容在 chat-sdk.dev 上的 CLI 文件中。(vercel-chat第2節第1段)
串流與互動元件
README 的用法範例從一個 `Chat` 實例開始。它從 `chat` 匯入 `Chat`,從 `@chat-adapter/slack` 匯入 Slack 適配器,從 `@chat-adapter/state-redis` 匯入 Redis 狀態適配器。建構函式接收 `userName`、`adapters` 物件和 `state` 物件。範例註冊了 `onNewMention` 來訂閱一個執行緒並發布問候,以及 `onSubscribedMessage` 來回顯訊息文字。README 將完整教學指向 Getting Started 指南;它沒有描述狀態如何持久化,也沒有描述範例片段之外的適配器設定。(vercel-chat第3節第1段)
部署前的權限檢查
README 列出了十一項功能:針對提及、訊息、表情回應、按鈕點擊、斜線命令和模態框的事件處理器;AI 串流輸出,支援 Slack 原生串流、Telegram 私聊草稿預覽,以及發布後編輯的回退方案;基於 JSX 的互動式卡片,支援 Block Kit、Adaptive Cards 和 Google Chat Cards;處理按鈕點擊和下拉選擇的 actions;帶文字輸入、下拉選擇和驗證的模態框;斜線命令;型別安全且跨平台的表情,支援自訂表情;檔案上傳;以程式方式發起私聊;僅使用者可見的臨時訊息,帶 DM 回退;以及針對同一執行緒上的並發訊息,可透過 burst、queue、debounce、drop 或 process 來設定處理方式。每個功能都連結到文件頁面,但 README 本身沒有提供實作細節。(vercel-chat第4節第1段)
AI 編碼代理工具
Chat SDK 為 AI 編碼代理提供了一個可選的 skill。README 建議在使用 OpenAI Codex、Claude Code 或 Cursor 等代理時,用 `npx skills add vercel/chat` 安裝它。該 skill 引用 `node_modules/chat/docs` 中打包的文件,以及發布套件中的適配器指南和啟動範本。README 還提到了一個 Vercel 外掛,可透過 `npx plugins add vercel/vercel-plugin` 安裝,其中包含 Chat SDK skill 和其他工具。README 列出了兩個機器可讀的文件端點:`chat-sdk.dev/llms.txt` 和 `chat-sdk.dev/llms-full.txt`。除了引用打包文件之外,README 沒有描述 skill 包含什麼。(vercel-chat第5節第1段)
文件、支援與授權
完整文件在 chat-sdk.dev/docs,指南在 Vercel Knowledge Base。關於貢獻、支援和安全報告,README 指向儲存庫中的 `CONTRIBUTING.md`、`SUPPORT.md` 和 `SECURITY.md`。授權是 MIT,版權歸 Vercel, Inc.,2026。它授予使用、複製、修改、合併、發布、分發、再授權和出售副本的許可,前提是包含版權聲明。軟體按原樣提供,不附帶任何保證。README 沒有說明支援回應時間、安全保證,也沒有說明所有適配器是否都是 vendor-official。(vercel-chat第6節第1段)
編輯結論
Chat SDK 的 README 呈現一個小型核心與廣大的適配器生態。它定義了安裝、CLI 脚手架、一個用法範例、功能列表與 AI 代理工具,然後把其餘內容指向 chat-sdk.dev。MIT 授權涵蓋該套件,但沒有說明支援或保固。 採用前請以 vercel-chat 的實際命令與設定檔確認輸入、輸出及權限邊界,並依專案明示的用途決定是否適合目前工作流程。
社群筆記