CLI-Tool
vercel/chat avatar
vercel/chat

Chat SDK: ein einheitliches TypeScript-SDK für viele Chat-Plattformen

Projektüberblick: Ein einheitliches TypeScript-SDK zum Erstellen von Chat-Bots für Slack, Microsoft Teams, Google Chat, Discord und mehr.

2.373 Sterne313 ForksTypeScriptMIT

Auf einen Blick

Was ist das?
Eine quellenbasierte Betrachtung von vercel/chat: Installation, Adapter, Verwendung, Funktionen, AI-Coding-Agent-Tools und Lizenz.
Für wen ist es gedacht?
Das README des Chat SDK zeigt einen kleinen Kern und ein großes Adapter-Ökosystem. Es definiert Installation, CLI-Gerüst, ein Verwendungsbeispiel, eine Funktionsliste und AI-Agent-Tools und verweist für den Rest auf chat-sdk.dev.
Darf ich es kommerziell nutzen?
Ja. MIT ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
Wird es noch gepflegt?
Ja. Das Repository hat innerhalb des letzten Tages neue Commits erhalten.
In welcher Sprache ist es geschrieben?
Hauptsächlich TypeScript, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 18. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Ein Bot-Kern, viele Chat-Plattformen

Chat SDK ist ein TypeScript-Paket, das als `chat` veröffentlicht wird. Das README beschreibt es als ein einheitliches SDK für Chat-Bots auf Slack, Microsoft Teams, Google Chat, Discord, Telegram, GitHub, Linear, WhatsApp und mehr. Die Grundidee ist, die Bot-Logik einmal zu schreiben und auf jeder unterstützten Plattform bereitzustellen. Plattformspezifisches Verhalten steckt in Adaptern, die als separate npm-Pakete unter dem Scope `@chat-adapter` veröffentlicht werden. Das README listet nicht jede unterstützte Plattform auf und erklärt nicht, wie die Adapter-Abdeckung gepflegt wird. Beim vercel/chat SDK ist die Adaptergrenze für die praktische Planung entscheidend. Der gemeinsame Code kann Ereignisse, Threads und Zustände modellieren, doch die Plattform stellt jeweils eigene Anforderungen an Webhooks, Karten, Modale und Nachrichten. Die README nennt native Unterschiede beim Slack-Streaming und bei Telegram-Entwurfsvorschauen ausdrücklich. Ein Bot, der nur onNewMention und onSubscribedMessage testet, deckt daher weder Datei-Uploads noch Slash-Befehle noch ephemere Nachrichten ab. Für einen belastbaren Prototypen sollten mindestens der Adapter, die erzeugte Webhook-Route, die Zustandsimplementierung mit createRedisState und die Werte aus .env.example zusammen laufen. Erst dann zeigt sich, ob das gewünschte Ereignis auf der Zielplattform verfügbar ist. Das CLI create-chat-sdk@latest erzeugt dafür ein Grundgerüst, ersetzt aber keine Prüfung der jeweiligen Adapter-Dokumentation. Die zentrale Stärke ist die gemeinsame TypeScript-Oberfläche; die zentrale Einschränkung bleibt die nicht vollständig einheitliche Plattformsemantik.

Installation und Gerüstbau

Das SDK wird mit `npm i chat` installiert. Adapter werden separat installiert; das README zeigt `npm install @chat-adapter/slack @chat-adapter/teams @chat-adapter/gchat`. Das CLI-Paket `create-chat-sdk` erzeugt beim Ausführen von `npx create-chat-sdk@latest my-bot` eine Next.js-Bot-App. Laut README erzeugt das CLI die `Chat`-Konfiguration, eine Webhook-Route, eine `.env.example`-Datei, Abhängigkeiten und eine optionale Web-Adapter-Route. Optionen und nicht-interaktive Nutzung werden im README nicht behandelt; sie stehen in der CLI-Dokumentation auf chat-sdk.dev.

Grundlegendes Verwendungsmuster

Das Verwendungsbeispiel im README beginnt mit einer `Chat`-Instanz. Es importiert `Chat` aus `chat`, einen Slack-Adapter aus `@chat-adapter/slack` und einen Redis-State-Adapter aus `@chat-adapter/state-redis`. Der Konstruktor nimmt `userName`, ein `adapters`-Objekt und ein `state`-Objekt entgegen. Das Beispiel registriert `onNewMention`, um einen Thread zu abonnieren und einen Gruß zu posten, und `onSubscribedMessage`, um den Nachrichtentext zu echoen. Das README verweist für eine vollständige Anleitung auf den Getting-Started-Leitfaden; es beschreibt nicht, wie der Zustand persistiert wird oder wie Adapter über das Snippet hinaus konfiguriert werden.

Funktionsliste und ihr Umfang

Das README listet elf Funktionen auf: Ereignis-Handler für Erwähnungen, Nachrichten, Reaktionen, Button-Klicks, Slash-Befehle und Modale; AI-Streaming mit nativem Slack-Streaming, Telegram-Privatchat-Entwurfsvorschau und Post-Bearbeiten-Fallback; JSX-basierte interaktive Karten für Block Kit, Adaptive Cards und Google Chat Cards; Aktionen für Button-Klicks und Dropdown-Auswahlen; Modale mit Texteingaben, Dropdowns und Validierung; Slash-Befehle; typsichere, plattformübergreifende Emojis mit Unterstützung für benutzerdefinierte Emojis; Datei-Uploads; programmatisches Starten von Direktnachrichten; nur für Benutzer sichtbare ephemere Nachrichten mit DM-Fallback; und konfigurierbare Behandlung überlappender Nachrichten auf demselben Thread durch burst, queue, debounce, drop oder process. Jede Funktion verlinkt auf eine Dokumentationsseite, aber das README selbst enthält keine Implementierungsdetails.

Werkzeuge für AI-Coding-Agenten

Chat SDK enthält eine optionale Skill für AI-Coding-Agenten. Das README empfiehlt, sie mit `npx skills add vercel/chat` zu installieren, wenn man Agenten wie OpenAI Codex, Claude Code oder Cursor verwendet. Die Skill verweist auf Dokumentation, die in `node_modules/chat/docs` gebündelt ist, sowie auf Adapter-Guides und Starter-Vorlagen im veröffentlichten Paket. Das README erwähnt außerdem ein Vercel-Plugin, das mit `npx plugins add vercel/vercel-plugin` installiert werden kann und die Chat-SDK-Skill neben anderen Werkzeugen enthält. Zwei maschinenlesbare Dokumentations-Endpunkte werden genannt: `chat-sdk.dev/llms.txt` und `chat-sdk.dev/llms-full.txt`. Das README beschreibt nicht, was die Skill über den Verweis auf gebündelte Dokumentation hinaus enthält.

Dokumentation, Support und Lizenz

Die vollständige Dokumentation befindet sich auf chat-sdk.dev/docs, und Leitfäden gibt es in der Vercel Knowledge Base. Für Beiträge, Support und Sicherheitsmeldungen verweist das README auf `CONTRIBUTING.md`, `SUPPORT.md` und `SECURITY.md` im Repository. Die Lizenz ist MIT, Copyright 2026 Vercel, Inc. Sie erlaubt die Nutzung, das Kopieren, Ändern, Zusammenführen, Veröffentlichen, Verteilen, Unterlizenzieren und Verkaufen von Kopien, sofern der Copyright-Hinweis enthalten ist. Die Software wird wie sie ist ohne Garantie bereitgestellt. Das README macht keine Angaben zu Support-Reaktionszeiten, Sicherheitsgarantien oder dazu, ob alle Adapter vendor-official sind.

Projektbezogener Prüfpunkt · vercel chat

Im Chat SDK liegt die gemeinsame Abstraktion bei Chat, während Details in Paketen wie @chat-adapter/slack liegen. Das Beispiel mit onNewMention, thread.subscribe und onSubscribedMessage zeigt das Ereignismodell. Für einen Probelauf gehören Adapter, Webhook-Route, state und .env.example zusammen. Die README nennt Redis mit createRedisState und weist auf plattformspezifische Unterschiede beim Streaming hin.

Redaktionelles Fazit

Das README des Chat SDK zeigt einen kleinen Kern und ein großes Adapter-Ökosystem. Es definiert Installation, CLI-Gerüst, ein Verwendungsbeispiel, eine Funktionsliste und AI-Agent-Tools und verweist für den Rest auf chat-sdk.dev. Die MIT-Lizenz deckt das Paket ab, sagt aber nichts über Support oder Garantie aus.

Offizielle Quellen

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community-Notizen

Community-Notizen