Ejecutar Demos
El repositorio greentic-demo ofrece un catálogo de demos listas para ejecutar. Cada una es un bundle completo (proveedores de mensajería, flujos, adaptive cards, herramientas MCP) empaquetado como un .gtpack y orquestado por dos documentos de respuestas publicados: uno para el wizard de creación y otro para la configuración.
No necesitas generar nada manualmente. Todas las demos se lanzan con los mismos tres comandos.
El Flujo de Tres Pasos
Sección titulada «El Flujo de Tres Pasos»-
Crea el bundle con el documento create-answers publicado:
Ventana de terminal gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/<demo>-create-answers.jsonEsto descarga cualquier pack referenciado en el documento de respuestas, resuelve dependencias de capacidades (por ejemplo,
state-memoryse añade automáticamente cuando un proveedor de mensajería declara que necesitagreentic:state/state-store) y escribe un directorio de bundle local. -
Configura los proveedores con el documento setup-answers publicado:
Ventana de terminal gtc setup ./<demo>-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/<demo>-setup-answers.jsonLa configuración detecta el tenant real a partir del directorio
tenants/del bundle, guarda secretos por proveedor y te avisa si alguna capacidad requerida sigue sin satisfacerse. -
Inicia el runtime:
Ventana de terminal gtc start ./<demo>-bundleAl iniciar,
gtc startvuelve a validar las dependencias de packs, registra webhooks mediante la operación WASMsetup_webhookde cada proveedor (volviendo a registrarlos automáticamente si cambia la URL de tu túnel) e imprime las rutas públicas de entrada (por ejemplo,https://<tunnel>/v1/web/webchat/demo/).
Prerrequisitos
Sección titulada «Prerrequisitos»Antes de ejecutar cualquier demo, asegúrate de tener:
gtcCLI; consulta Instalación- Una URL pública para proveedores basados en webhook:
ngrokocloudflared(consulta Configuración de URL Pública) - Credenciales de proveedor para cualquier integración de mensajería o MCP de terceros que use la demo (tokens de Slack, token de bot de Telegram, OAuth de Atlassian, etc.); el documento setup-answers te indica qué secretos son necesarios
La mayoría de las demos pueden ejecutarse solo con WebChat GUI más state-memory, que no requieren cuentas externas.
Catálogo de Demos
Sección titulada «Catálogo de Demos»Cada release de greentic-demo publica un .gtpack, un *-create-answers.json y un *-setup-answers.json en la última release. Sustituye el ID de la demo en los tres comandos mostrados arriba.
quickstart
Sección titulada «quickstart»La experiencia mínima de Greentic. Una tarjeta de bienvenida, una tarjeta informativa y una interacción básica de eco; útil como prueba rápida para confirmar que tu toolchain, túnel y front-end de WebChat funcionan de punta a punta.
- Canales: WebChat GUI
- Servicios externos: ninguno
- Demo ID:
quickstart
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/deep-research-demo-create-answers.jsongtc setup ./deep-research-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/deep-research-demo-setup-answers.jsongtc start ./deep-research-demo-bundlehr-onboarding
Sección titulada «hr-onboarding»Wizard interactivo de onboarding de empleados con seguimiento de tareas, recopilación de documentos y aprovisionamiento de accesos. Persiste el estado de la sesión a lo largo de varios pasos.
- Canales: WebChat GUI (requerido), Slack (opcional)
- Servicios externos: ninguno requerido (estado almacenado en memoria)
- Demo ID:
hr-onboarding
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/hr-onboarding-create-answers.jsongtc setup ./hr-onboarding-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/hr-onboarding-setup-answers.jsongtc start ./hr-onboarding-demo-bundlehelpdesk-itsm
Sección titulada «helpdesk-itsm»Asistente de helpdesk de IT integrado con Jira mediante OAuth de Atlassian y herramientas MCP: crea tickets, consulta estados, busca en la base de conocimiento y escala casos.
- Canales: WebChat GUI
- Servicios externos: Atlassian / Jira (credenciales OAuth en setup-answers)
- Demo ID:
helpdesk-itsm
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/helpdesk-itsm-create-answers.jsongtc setup ./helpdesk-itsm-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/helpdesk-itsm-setup-answers.jsongtc start ./helpdesk-itsm-demo-bundlesales-crm
Sección titulada «sales-crm»Asistente de ventas conectado a Salesforce mediante OAuth y MCP: calificación de leads, visualización del pipeline, seguimiento de oportunidades y programación de reuniones.
- Canales: WebChat GUI
- Servicios externos: Salesforce (credenciales OAuth en setup-answers)
- Demo ID:
sales-crm
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/sales-crm-create-answers.jsongtc setup ./sales-crm-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/sales-crm-setup-answers.jsongtc start ./sales-crm-demo-bundlesupply-chain
Sección titulada «supply-chain»Asistente de inventario y supply-chain: comprobaciones de stock, seguimiento de pedidos, alertas de poco inventario, flujo de aprobación de reabastecimiento y directorio de proveedores.
- Canales: WebChat GUI (requerido), Slack (opcional)
- Servicios externos: ninguno requerido
- Demo ID:
supply-chain
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/supply-chain-create-answers.jsongtc setup ./supply-chain-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/supply-chain-setup-answers.jsongtc start ./supply-chain-demo-bundleredbutton
Sección titulada «redbutton»Un escenario de evento de botón rojo: un ingress webhook dispara un flujo que elige una rama aleatoria, opcionalmente llama a un endpoint HTTP, reproduce audio local y crea un incidente en Better Stack.
- Canales: orientado a eventos (no requiere interfaz de chat)
- Servicios externos: Better Stack
- Demo ID:
redbutton
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/redbutton-create-answers.jsongtc setup ./redbutton-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/redbutton-setup-answers.jsongtc start ./redbutton-demo-bundle --ngrok onActiva el flujo con:
curl -X POST http://127.0.0.1:8080/v1/events/ingress/webhook/demo/default \ -H 'content-type: application/json' \ -d '{"source":"red-button","pressed":true}'cloud-deploy-demo
Sección titulada «cloud-deploy-demo»Una composición de bundle más rica que ejercita un proveedor de despliegue Terraform junto con mensajería, eventos y estado; útil para validar integraciones de despliegue en la nube.
- Canales: WebChat GUI
- Servicios externos: proveedor cloud compatible con Terraform (configurado en setup-answers)
- Demo ID:
cloud-deploy-demo
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/cloud-deploy-demo-create-answers.jsongtc setup ./cloud-deploy-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/cloud-deploy-demo-setup-answers.jsongtc start ./cloud-deploy-demo-bundleweather-mcp-demo
Sección titulada «weather-mcp-demo»Un asistente meteorológico que obtiene condiciones actuales y previsiones mediante WeatherAPI a través de una herramienta MCP, y luego renderiza el resultado como adaptive cards.
- Canales: WebChat GUI
- Servicios externos: clave de API de weatherapi.com
- Demo ID:
weather-mcp-demo
gtc wizard --answers https://github.com/greenticai/greentic-demo/releases/latest/download/weather-mcp-demo-create-answers.jsongtc setup ./weather-mcp-demo-bundle --answers https://github.com/greenticai/greentic-demo/releases/latest/download/weather-mcp-demo-setup-answers.jsongtc start ./weather-mcp-demo-bundleQué Ocurre Entre Bastidores
Sección titulada «Qué Ocurre Entre Bastidores»Los tres comandos parecen simples, pero cada uno ejecuta una parte no trivial de la plataforma.
gtc wizard --answers ...
Sección titulada «gtc wizard --answers ...»- Resuelve el app pack de la demo (
*.gtpack), ya sea descargado desde GitHub Releases o extraído de OCI según lo declarado en el documento de respuestas. - Materializa el workspace del bundle (
bundle.yaml,packs/,tenants/). - Ejecuta resolución de dependencias basada en capacidades. Los provider packs declaran
required_capabilities; el wizard añade automáticamentestate-memory,state-redis, packs OAuth, etc., así que nunca tienes que recordar de qué depende cada proveedor. - Respeta banderas de capacidad como
greentic.cap.bundle_assets.read.v1,greentic.cap.webchat.oauth.v1,greentic.cap.webchat.i18n.v1ygreentic.cap.webchat.embed.v1; estas deciden si el wizard genera assets a nivel de bundle, configuración de proveedor OAuth, archivos de locale y fragmentos de embed.
gtc setup ./<demo>-bundle --answers ...
Sección titulada «gtc setup ./<demo>-bundle --answers ...»- Detecta automáticamente el tenant real desde
bundle/tenants/(para que los secretos se escriban bajo el URI de tenant correcto). - Valida capacidades de dependencias en todos los packs del bundle y avisa si falta algo.
- Persiste cada valor del documento de respuestas en el almacén de secretos bajo
secrets://{env}/{tenant}/{team}/{provider}/{key}, para que los proveedores puedan leer credenciales en tiempo de ejecución sin que tengas que volver a escribirlas.
gtc start ./<demo>-bundle
Sección titulada «gtc start ./<demo>-bundle»- Carga el bundle, monta cada pack y levanta los adaptadores HTTP de ingress.
- Vuelve a comprobar las dependencias de los packs mediante el índice de capacidades e imprime las capacidades satisfechas y faltantes.
- Invoca la operación WASM
setup_webhookde cada proveedor cuando cambia la URL pública del túnel; el re-registro de webhooks ahora es automático. - Imprime las rutas públicas (por ejemplo, la URL de WebChat) para que puedas abrirlas inmediatamente en un navegador.
Operaciones Comunes
Sección titulada «Operaciones Comunes»Usar un túnel diferente
Sección titulada «Usar un túnel diferente»La mayoría de las demos ligadas a webhooks funcionan con cualquier túnel. Elige uno:
gtc start ./<demo>-bundle --ngrok ongtc start ./<demo>-bundle --cloudflared ongtc start ./<demo>-bundle --ngrok off --cloudflared offÚsalo cuando solo necesites WebChat en localhost.
Vuelve a ejecutar setup después de rotar un secreto
Sección titulada «Vuelve a ejecutar setup después de rotar un secreto»gtc setup ./<demo>-bundle --answers <updated-setup-answers.json>gtc setup es idempotente. Sobrescribe los secretos en su lugar y vuelve a ejecutar los flujos de configuración por proveedor.
Inspeccionar bundles antes de lanzarlos
Sección titulada «Inspeccionar bundles antes de lanzarlos»gtc wizard --answers <create-answers.json> --dry-rungtc setup ./<demo>-bundle --dry-runAmbos comandos admiten --dry-run para previsualizar la salida sin tocar el sistema de archivos ni el almacén de secretos.
Detener una demo en ejecución
Sección titulada «Detener una demo en ejecución»gtc stop ./<demo>-bundleEsto apaga el runner y cualquier proceso auxiliar (túneles) que gtc start haya levantado.
Solución de Problemas
Sección titulada «Solución de Problemas»El wizard dice que una capacidad no está satisfecha
Sección titulada «El wizard dice que una capacidad no está satisfecha»Actualiza el documento create-answers para incluir un pack que proporcione la capacidad faltante. Para greentic:state/state-store funcionan tanto state-memory (sin configuración) como state-redis (requiere una instancia de Redis). La mayoría de las demos ya declaran esta dependencia, así que el wizard la añadirá automáticamente.
WebChat se abre pero las tarjetas están en blanco
Sección titulada «WebChat se abre pero las tarjetas están en blanco»Asegúrate de que el tenant del bundle coincida con el tenant en la URL de WebChat. gtc setup ahora detecta automáticamente el tenant del bundle, así que si ejecutaste setup antes de que llegara esta corrección, vuelve a ejecutarlo después de un gtc wizard para refrescar el layout del bundle.
setup_webhook sigue fallando al iniciar
Sección titulada «setup_webhook sigue fallando al iniciar»Comprueba que el secreto que necesita tu proveedor esté presente en el archivo de respuestas (por ejemplo, bot_token, slack_configuration_token, ms_bot_app_password). Vuelve a ejecutar gtc setup con el documento actualizado y reinicia gtc start.
La URL de ingress sigue cambiando
Sección titulada «La URL de ingress sigue cambiando»De forma predeterminada, ngrok emite una URL nueva en cada reinicio. El actualizador de webhooks detecta el cambio al iniciar y llama a la operación setup_webhook de cada proveedor para registrar la nueva URL aguas arriba, pero quizá te convenga pasar a un dominio reservado en demos de larga duración.
Próximos Pasos
Sección titulada «Próximos Pasos»- gtc wizard — referencia completa de documentos create-answers y banderas de capacidad
- gtc setup — configuración de proveedores, credenciales y uso de dry-run
- gtc start — opciones del runtime, túneles y observabilidad
- Bundle Assets — cómo funciona el overlay de assets usado por las skins de WebChat
- Multi-Tenancy — cómo interactúa el aislamiento por tenant con secretos e ingress