Construye agentes de chat
con IA que de verdad son tuyos.

Chasqui es un stack open-source y self-hosted para agentes de chat con IA a medida: motor de conversación, memoria, RAG, handoff humano y un sistema de tools enchufable — todo cableado y listo, para que tu energía vaya a la lógica de tu agente. WhatsApp, Telegram y un widget de chat web hoy, más canales en el roadmap.

$ uvx chasqui new my-agent

Apache-2.0 · beta · un comando crea y aprovisiona todo el stack

Panel de operación de Chasqui: una conversación con handoff humano, con mensajes de imagen y voz
Baterías incluidas

Todo lo que un agente necesita, ya cableado

Las decisiones de plomería ya están tomadas — Postgres + pgvector, un contrato de mensajes canónico, convención sobre configuración. Tú construyes lo que hace diferente a tu agente.

Motor de conversación

Un orquestador LangGraph mantiene un hilo continuo por contacto — contexto, manejo de silencios y errores de entrega ya están resueltos.

Memoria + RAG de FAQs

Memoria de largo plazo y una base de conocimiento de FAQs sobre Postgres + pgvector. Respuestas ancladas en tu contenido, no alucinaciones.

Multimodal, en ambos sentidos

Imágenes, documentos y notas de voz — entendidos a la entrada, enviados a la salida.

Inbox de handoff humano

El agente detecta cuándo hace falta una persona; los operadores toman el control y responden desde el panel, con multimedia incluida.

Tool Modules

Paquetes autocontenidos que el core descubre solo: tools, tablas, rutas y formularios de configuración que el panel renderiza gratis.

Cualquier LLM, un cambio de .env

Gemini, Claude, GPT, OpenRouter u Ollama local. Cambia de proveedor y el siguiente mensaje ya lo usa — sin redeploy.

Agnóstico al canal por diseño

El core nunca sabe que existe un canal

Los canales son gateways delgados y sin estado que traducen su plataforma a un contrato canónico — dos endpoints y ya agregaste un canal. Handoff, multimedia, silencios y errores de entrega se expresan una sola vez y todos los canales los heredan gratis.

Cada decisión no obvia queda escrita como un ADR — lee la arquitectura.

Panel de operación

Opera el agente sin tocar código

  • Edita el system prompt y mira el comportamiento cambiar en el siguiente mensaje
  • Cura la base de FAQs que ancla las respuestas del RAG
  • Configura los tool modules con formularios auto-renderizados
  • Mira las conversaciones en vivo y toma el control cuando importa
  • Captura y revisa leads
Dashboard del panel de Chasqui en modo oscuro Una conversación completa: respuestas de la IA, handoff humano y toma de control del operador
Canal web

Una burbuja de chat para cualquier sitio

El canal más nuevo trae su propio cliente: un widget embebible que pone a tu agente frente a visitantes anónimos — misma memoria, mismas tools, mismo inbox de handoff. Un script tag en cualquier página y la burbuja ámbar queda activa.

Embébelo

<script src="https://chat.your-domain.com/widget.js"
        data-gateway="https://chat.your-domain.com"></script>
  • Respuestas en vivo por SSE — llegan al navegador apenas el agente las envía
  • Imágenes y notas de voz, en ambos sentidos — el audio hereda el fallback de STT
  • La conversación se rehidrata al reabrir: las respuestas diferidas nunca se pierden
  • Aislado con Shadow DOM y ~11 kB gzip — ningún estilo se filtra en ninguna dirección

Configura el gateway

# web gateway .env  (chasqui-stack/web)
PORT=8002                    # where the gateway listens
CORE_URL=http://localhost:8090
INTERNAL_API_KEY=...         # shared secret with the core — never in the browser
WEB_ALLOWED_ORIGINS=https://your-site.com   # who may embed the widget
RATE_LIMIT_WINDOW_MS=60000   # public endpoint — rate limit per visitor/IP
RATE_LIMIT_MAX=30
HISTORY_LIMIT=50             # messages rehydrated when the widget reopens
ERROR_REPLY=...              # gateway-local literals, fire when the
UNSUPPORTED_REPLY=...        # core is unreachable

# core .env — deferred replies reach the browser over SSE
CHANNEL_WEB_SEND_URL=https://chat.your-domain.com/send

El navegador solo habla con el gateway — la key interna se queda del lado del servidor, y una allowlist de orígenes más rate limits por visitante protegen el endpoint público.

¿Ya tienes un proyecto Chasqui corriendo? uvx chasqui add channel web le agrega el widget en un comando. Su propio repo, su propio gateway: chasqui-stack/web — el diseño está escrito en el ADR-011.

Quickstart

De cero a un agente corriendo

1

Crea el proyecto

uvx chasqui new my-agent

El wizard pregunta: LLM, embeddings, Postgres, puertos, credenciales de WhatsApp (opcional), idioma, primer admin — y aprovisiona dependencias, base de datos y migraciones.

2

Levanta los servicios

cd core && make dev
cd whatsapp && make dev
cd admin && npm run dev

API, gateway de WhatsApp y panel de operación — cada uno con una línea.

3

Conecta WhatsApp

docs/WHATSAPP-SETUP.md

Una app gratuita de Meta developers basta para empezar. Guía paso a paso incluida, con registro automático del webhook vía ngrok en dev.

Prerequisitos: uv, Node 22 y PostgreSQL con pgvector (o el docker-compose generado).

Skills para tu agente

Enséñale a tu agente a extenderlo

Las convenciones omakase, empaquetadas como Agent Skills instalables. Tu agente de código las lee on-demand y sabe crear el proyecto, agregar un canal o construir un módulo al estilo Chasqui — apuntando a la doc canónica, sin adivinar.

$ npx skills add chasqui-stack/skills --skill '*'

chasqui-primer

El router: filosofía, los tres servicios y el contrato canónico — y te enruta al skill correcto.

chasqui-cli

Crea y extiende con el CLI: chasqui new, el wizard, chasqui add channel, chasqui generate module.

chasqui-create-channel

Agrega un canal nuevo sobre el contrato canónico, con el gateway de Telegram (activo) como ejemplo.

chasqui-create-module

Dale una capacidad nueva al agente — un Tool Module con tools, tablas y config en el panel.

chasqui-write-adr

Registra una decisión no obvia al estilo Chasqui — un ADR docs-as-code en el mismo PR.

chasqui-deploy

Despliega y opera el stack en un servidor con Kamal 2 — core, gateway y admin, en orden.

Funciona con Claude Code, Cursor, Codex, Gemini CLI y más — el estándar abierto Agent Skills. Explora los skills.

Roadmap

Hacia dónde va esto

Widget de chat web canal embebible para cualquier sitio
Analytics módulo de estadísticas de conversación para el panel
RAG de documentos base de conocimiento más allá de FAQs — PDFs, docs

Issues e ideas bienvenidos — súmate en GitHub.

Contacto

¿Quieres que construyamos tu agente?

Construimos agentes a medida sobre Chasqui y ayudamos a equipos a poner el suyo en marcha. Bugs e ideas van a los issues de GitHub — para todo lo demás, hablemos: