インストール
npm i chat誰向けか
同じ TypeScript ロジックで Slack、Microsoft Teams、Google Chat、Discord、Telegram、GitHub、Linear、WhatsApp などのプラットフォームにチャットボットを置きたいときに Chat SDK を使う。ボットロジックを一度書いて各所へデプロイすることを強調し、プラットフォームごとに無名の枠組みを書き分けるものではない。
より適切な前提は、Node / TypeScript プロジェクトにコアパッケージを入れ、続けて対応プラットフォームの adapter を入れるつもりであること。資料はこれらのプラットフォームを互排他の名簿としては書いておらず、後ろに and more がある。公式ガイドページは
https://github.com/vercel/chat
3 分で最初の試行を終える
推奨する最初の経路はコアパッケージのインストールであり、3 本のインストーラを同時に開かない:
npm i chat
前提:このマシンにすでに npm があること。このコマンドは package.json と node_modules を変えるので、今のディレクトリがボットプロジェクトだと先に確認する。入れたあと読み取り専用で確認する:資料のインポートをスクリプトに書く。まだ本物のワークスペースへつながず、外向きメッセージも送らない。
import { Chat } from "chat";
import { createSlackAdapter } from "@chat-adapter/slack";
import { createRedisState } from "@chat-adapter/state-redis";
成功の合図:コアパッケージをインポートできること。adapter はプラットフォームごとに追加インストールが必要で、抜粋は Install one or more adapters for your platforms と書く。概要は例えば @chat-adapter/slack を名指しする。adapter のインポートに失敗したら欠落依存で止め、他のパッケージ名を作らない。
同じページには npx skills add vercel/chat と npx create-chat-sdk@latest my-bot も出る。最初は足場を並行実行しない。プロジェクトファイルが生成されるので、ディレクトリ名 my-bot が既存フォルダを上書きしないことを先に確認する。
利用例
例 1:既存の TypeScript プロジェクトに Slack を繋ぐ。先に npm i chat、次に Slack adapter を入れ、Chat、createSlackAdapter、createRedisState でインスタンスを組み立てる。概要は onNewMention と onSubscribedMessage の処理にも触れるが、抜粋はこれら 2 つのコールバックの完全な関数本体を書いていない。この例の完了基準はインポートと組み立ての成功であり、すでに Slack で返信したことではない。Redis 接続や webhook 登録の前に、接続先とルートが誤った環境へ書かないことを確認する。
例 2:公式足場で新しい bot ディレクトリを作る。コマンドは npx create-chat-sdk@latest my-bot。概要は Chat 設定、webhook ルート、.env.example を生成すると言う。ディスク書き込みである。my-bot ディレクトリが存在しないか上書きしてよいかを確認してから実行する。完了基準はディレクトリが作られ、生成物が見えること。.env.example にプレースホルダ以外の偽の秘密を入れず、設定を変える前に外向きサービスを起動しない。資料は環境変数名を書いていないので作らない。
利用上の境界
コアのインストールは npm i chat で、プラットフォーム能力は adapter による。インポート例が示すのは Slack adapter と Redis state だけである。足場と agent skill のインストールは並列の別入口として現れ、コアパッケージインストールと同時必須の一歩に混ぜない。
リストの各プラットフォームにすでに書かれた adapter パッケージ名があると思わないこと。資料はクライアント一覧も、adapter 未導入で Teams や WhatsApp へ直接当てる方法も書いていない。ここに書いたインストール、インポート、足場コマンドを超える範囲は、この説明の対象外である。