Skills

Chat SDK: desplegar una misma lógica en varias plataformas de chat

Úsalo para conectar TypeScript a varias plataformas de chat a la vez. Primero npm i chat, luego un adapter por plataforma, y no envíes mensajes hacia fuera en el primer intento.

Official source · Chat SDK

Install

npm i chat

Para quién

Usa Chat SDK cuando quieras la misma lógica TypeScript para chatbots en Slack, Microsoft Teams, Google Chat, Discord, Telegram, GitHub, Linear, WhatsApp y plataformas similares. Insiste en escribir la lógica del bot una vez y desplegarla en todas partes, no en escribir un marco no nombrado por plataforma.

Encaja mejor si planeas instalar el paquete núcleo en un proyecto Node / TypeScript y luego el adapter de la plataforma. El material no trata estas plataformas como una lista excluyente; sigue con and more. La página oficial de la guía es

https://github.com/vercel/chat

Primera prueba en 3 minutos

La primera ruta recomendada es la instalación del paquete núcleo. No abras tres instaladores a la vez:

npm i chat

Requisito: npm ya está en la máquina. Este comando cambia package.json y node_modules; confirma primero que el directorio actual es tu proyecto de bot. Tras instalar, comprobación de solo lectura: escribe en un script las importaciones del material; aún no conectes un espacio de trabajo real ni envíes mensajes hacia fuera.

import { Chat } from "chat";
import { createSlackAdapter } from "@chat-adapter/slack";
import { createRedisState } from "@chat-adapter/state-redis";

Señal de éxito: el paquete núcleo se puede importar. Los adapters necesitan otra instalación por plataforma; el extracto dice Install one or more adapters for your platforms; el resumen nombra, por ejemplo, @chat-adapter/slack. Si falla la importación de un adapter, detente en la dependencia ausente; no inventes otros nombres de paquete.

La misma página también muestra npx skills add vercel/chat y npx create-chat-sdk@latest my-bot. No ejecutes el andamiaje en paralelo en el primer intento; genera archivos de proyecto, así que confirma primero que el nombre de directorio my-bot no sobrescribirá una carpeta existente.

Casos de uso

Caso 1: conectar Slack a un proyecto TypeScript existente. Primero npm i chat, luego instala el adapter de Slack y arma una instancia con Chat, createSlackAdapter y createRedisState. El resumen también menciona manejar onNewMention y onSubscribedMessage, pero el extracto no escribe el cuerpo completo de esos dos callbacks. El criterio de cierre de este caso es importación y ensamblaje correctos, no que ya se haya enviado una respuesta en Slack. Antes de conectar Redis o registrar un webhook, confirma que el destino y la ruta no escribirán en el entorno equivocado.

Caso 2: crear un directorio bot con el andamiaje oficial. El comando es npx create-chat-sdk@latest my-bot. El resumen dice que genera configuración Chat, rutas webhook y .env.example. Escribe en disco: confirma que el directorio my-bot no existe o se puede sobrescribir, luego ejecuta. El criterio de cierre: el directorio se creó y puedes ver lo generado. No pongas secretos inventados en .env.example más allá de los marcadores, y no arranques un servicio hacia fuera antes de cambiar la configuración. El material no escribe nombres de variables de entorno; no los inventes.

Límites de uso

La instalación núcleo es npm i chat; la capacidad de plataforma viene de los adapters. El ejemplo de importación solo da el adapter de Slack y el estado Redis. El andamiaje y la instalación agent skill aparecen como otras entradas en paralelo; no las mezcles con la instalación del paquete núcleo como un paso que deba ejecutarse a la vez.

No asumas que cada plataforma de la lista ya tiene un nombre de paquete adapter escrito. El material no da una lista de clientes ni dice cómo llegar a Teams o WhatsApp sin adapter instalado. Más allá de estos comandos de instalación, importación y andamiaje ya escritos, esta guía no cubre el resto.