Por Qué Esto Importa: El Estado Actual de los Bots en Slack
Si alguna vez has intentado crear un bot para Slack, sabes el drama: configurar OAuth, lidiar con event subscriptions, endpoints de webhook, y luego pensar en el deploy. La infraestructura solía tomar más tiempo que la lógica del bot.
El nuevo Slack Agent Skill de Vercel cambia eso. Es un wizard CLI que funciona con cualquier asistente de código (Claude Code, Cursor, etc.) para crear, configurar y hacer deploy de un agente Slack en una sola sesión. Olvídate de editar manifests, secrets y túneles ngrok manualmente.
Esto es parte de una tendencia más grande: las plataformas están integrando inteligencia de deploy directamente en el flujo de desarrollo. Si has seguido la evolución del React Compiler v1.0 y la memorización automática, notarás la misma filosofía — reducir la carga cognitiva moviendo la complejidad a la herramienta.
Cómo Funciona el Slack Agent Skill
El wizard te guía por cinco etapas, todo automatizado:
- Project Setup – Elige tu proveedor de LLM e inicializa desde el Slack Agent Template.
- Slack App Creation – Genera un manifest personalizado y crea la app en la consola de Slack.
- Environment Configuration – Configura secrets, tokens y claves de API con validación.
- Local Testing – Corre localmente con ngrok y verifica la integración.
- Production Deployment – Haz deploy en Vercel con variables de entorno configuradas automáticamente.
Para empezar, instala el skill y ejecuta el wizard:
npx skills add vercel-labs/slack-agent-skill
# Luego invócalo en tu asistente de código, ej: /slack-agent new
// Ejemplo: Un agente Slack simple que responde a menciones
// Este código es generado automáticamente por el wizard
import { SlackAgent } from '@vercel/slack-agent';
const agent = new SlackAgent({
token: process.env.SLACK_BOT_TOKEN,
signingSecret: process.env.SLACK_SIGNING_SECRET,
});
agent.on('mention', async ({ event, say }) => {
// Tu lógica aquí — el skill se encarga de todo el OAuth y webhook
await say(`¡Hola <@${event.user}>! Soy tu asistente automatizado.`);
});
export default agent;
Limitaciones & Precauciones
- Dependencia del Proveedor LLM: El wizard soporta un conjunto limitado de proveedores. Si usas un modelo menos común, quizás necesites personalizar el template.
- ngrok para Pruebas Locales: La etapa de pruebas locales depende de ngrok. Si estás detrás de un firewall corporativo estricto, puede que necesites una alternativa.
- Preparación para Producción: El deploy en Vercel es sencillo, pero aún necesitas monitorear rate limits, manejar errores e implementar logging.
Próximos Pasos
Después del deploy, considera:
- Agregar comandos slash para flujos de trabajo interactivos.
- Integrar con APIs externas (CRM, ticketing, etc.) usando Vercel Edge Functions.
- Usar el agente para disparar pipelines CI/CD o ejecutar consultas en la base de datos.
Para entender mejor por qué separar preocupaciones en tu stack tecnológico es importante — especialmente cuando combinas personalización y experimentación — checa nuestro análisis sobre por qué stacks separadas para personalización y experimentación.
![]()
Paso a Paso con Código
Veamos el código generado por el wizard. Después de ejecutar /slack-agent new en Claude Code, tendrás una estructura como esta:
slack-agent/
├── src/
│ ├── agent.js # Lógica principal del agente
│ ├── handlers/ # Manejadores de eventos (menciones, mensajes, etc.)
│ └── config.js # Variables de entorno y secrets
├── vercel.json # Configuración de Vercel
├── slack-manifest.yml # Manifest de la app de Slack
└── package.json
// src/agent.js — Lógica principal del agente
// Este archivo es generado automáticamente por el Slack Agent Skill
import { App } from '@slack/bolt';
const app = new App({
token: process.env.SLACK_BOT_TOKEN,
signingSecret: process.env.SLACK_SIGNING_SECRET,
socketMode: false, // Usa modo HTTP para Vercel
port: process.env.PORT || 3000,
});
// Maneja eventos de mensaje
app.message('hola', async ({ message, say }) => {
// Responde cuando alguien dice "hola" en un canal donde está el bot
await say(`¡Qué onda <@${message.user}>! ¿Cómo estás?`);
});
// Inicia la app
(async () => {
await app.start();
console.log('⚡️ ¡El agente Slack está corriendo!');
})();
# slack-manifest.yml — Configuración de la app Slack generada automáticamente
# No necesitas editar esto manualmente a menos que agregues nuevos permisos
display_information:
name: Mi Agente
features:
bot_user:
display_name: Mi Agente
always_online: true
slash_commands:
- command: /preguntar
description: Haz una pregunta al agente
usage_hint: "[tu pregunta]"
should_escape: false
oauth_config:
scopes:
bot:
- chat:write
- commands
- app_mentions:read
settings:
event_subscriptions:
request_url: https://tu-app.vercel.app/slack/events
bot_events:
- app_mention
- message.channels
interactivity:
is_enabled: true
request_url: https://tu-app.vercel.app/slack/events
Por Qué Este Enfoque Funciona
El wizard elimina las partes más propensas a errores del desarrollo de bots para Slack:
- Flujo OAuth: El skill genera el manifest exacto y maneja el redirect OAuth.
- Endpoints de Webhook: Configura las rutas correctas en el deploy de Vercel.
- Secrets de entorno: Valida los tokens antes del deploy, previniendo crashes en runtime.
Esto es similar a la filosofía del React Compiler y la memorización automática — deja que la herramienta maneje el boilerplate para que te concentres en el valor único de tu aplicación.
![]()
Tips Prácticos & Mejores Prácticas
- Empieza con el Template: Usa el Slack Agent Template para hacer deploy de un agente funcional de inmediato, luego personaliza.
- Prueba Local Primero: La etapa de pruebas locales con ngrok atrapa el 90% de los errores de configuración.
- Monitorea los Logs: Después del deploy, revisa los logs de función de Vercel para detectar errores de la API de Slack.
- Seguridad: Nunca hagas commit de tu archivo
.env. El wizard lo agrega al.gitignoreautomáticamente.
Limitaciones & Consideraciones
- Socket Mode No Soportado: El skill actual usa modo HTTP, lo que requiere un endpoint público. Para grids privados de Slack, quizás necesites adaptarlo.
- Proveedor LLM Único: El wizard actualmente estandariza en OpenAI. Si prefieres Anthropic o modelos locales, tendrás que modificar el template.
- Costo de Deploy: Las serverless functions de Vercel tienen un tier gratuito, pero los agentes con alto tráfico pueden generar costos.
¿Qué Sigue?
Vercel está insinuando más "skills" para otras plataformas (Discord, Teams, WhatsApp). El patrón es claro: el futuro del desarrollo de bots es infraestructura conversacional. Para 2026, espera que los asistentes de código manejen el 80% del boilerplate para cualquier integración de plataforma.
Si te interesa cómo esto encaja en la conversación más grande sobre separar preocupaciones en tu stack tecnológico, lee nuestro análisis detallado sobre por qué stacks separadas para personalización y experimentación.

Conclusión
El Slack Agent Skill de Vercel es un ejemplo perfecto de infraestructura como conversación. En lugar de leer documentación y copiar y pegar configuraciones, simplemente le dices a tu asistente de código lo que quieres, y el wizard se encarga del resto.
Puntos clave:
- El wizard reduce el tiempo de configuración de un bot de Slack de horas a minutos.
- Es ideal para prototipado, hackathons y herramientas internas.
- Para producción, aún necesitas manejar casos extremos y monitoreo.
Acción práctica: Pruébalo hoy. Instala el skill con npx skills add vercel-labs/slack-agent-skill, ejecuta /slack-agent new en Claude Code, y haz deploy de tu primer agente Slack antes del almuerzo.
Este artículo se basó en el anuncio del changelog de Vercel.