lab
Esc

Prueba con

↑↓ para moverte · Enter para abrir · también en /buscar?q= para agentes

sistema avanzado cloudflareworkersesp32vozmcpbun

Apollo: agente de voz para dispositivos con backend propio

Conecta un dispositivo con micrófono y altavoz a un agente de voz en tu cuenta de Cloudflare. El backend coordina turnos, memoria y herramientas; el protocolo documentado sirve para adaptar el dispositivo.

✓ verificado el 26 oct 2026

Instrucciones para tu agente

Esto es lo que se copia. Pégaselo a tu agente y te lo monta paso a paso.

O ábrelo directamente en ClaudeChatGPT

Pega este texto a tu agente (Claude Code, Codex, OpenCode, Hermes o el que uses) y dile «ayúdame a montarlo». Son los pasos para ponerlo en marcha; el porqué de cada pieza está en la guía completa.


Para el agente: cómo acompañar al usuario

  1. Pregunta primero para qué lo quiere. Si su objetivo no necesita algún paso, sáltalo.
  2. Antes de instalar, comprueba lo que ya tiene (versiones, claves, sistema operativo).
  3. Avanza un paso cada vez: explica en una frase qué vas a hacer y deja que el usuario lo ejecute o lo apruebe.
  4. Tras cada paso, comprueba que funcionó antes de seguir. Si falla, para y explica el error.
  5. No inventes comandos ni opciones: si la documentación del proyecto contradice estos pasos, manda la documentación.
  6. Al terminar, haz una prueba real con el objetivo del usuario y dile dónde profundizar.

Pasos de configuración

Paso 1: prepara el entorno local

Obtén el código desde el repo y abre su raíz. Comprueba que tienes Bun 1.3.13, la versión fijada en package.json, y Node.js ≥22, requerido por Wrangler 4.119.0 en el manifiesto de apps/agent. Lee Setup. Esta primera prueba cubre el backend, no instala el firmware.

Paso 2: prepara dependencias y variables locales

Comandos de la guía:

bun install
cp apps/agent/.dev.vars.example apps/agent/.dev.vars

Edita el archivo local en privado con DEVICE_SHARED_SECRET y OPENROUTER_API_KEY. Conserva MOCK_VOICE=1 para empezar sin voz ni recuperación vectorial reales. No compartas el archivo.

Paso 3: inicia el backend

bun run dev

Wrangler usa por defecto http://127.0.0.1:8787. Sigue el protocolo y la documentación del firmware antes de conectar el dispositivo.

Comprobación

La guía enumera esta comprobación del repo:

bun run check

En otra terminal comprueba http://127.0.0.1:8787/health: el código de la ruta debe devolver JSON con ok: true y name: "apollo". Después carga DEVICE_SHARED_SECRET en el entorno privado de esa terminal con el mismo valor que usa .dev.vars. Desde la raíz ejecuta el sondeo oficial, adaptando su dirección al backend local:

bun run apps/wizard/generator/assets/scripts/probe.ts --url ws://127.0.0.1:8787/agents/apollo/desk --token "$DEVICE_SHARED_SECRET" --text "hola"

El sondeo envía hello, espera ui_state y envía text_input; debe terminar con turn_end y «turn complete». No publiques la salida de diagnóstico ni argumentos con secretos. Esto comprueba un turno de texto y audio simulado; no des por validada la voz real con MOCK_VOICE=1. Cuando pases a hardware, comprueba por separado entrada de audio, respuesta y reproducción.

Si algo falla

apps/agent/.dev.vars debe estar junto a wrangler.jsonc, no en la raíz: la guía advierte de respuestas 401 si queda en el sitio equivocado. Para voz real revisa las credenciales de ElevenLabs; para Sandbox/Containers verifica Docker. Sigue Deploy antes de publicar nada.

ver en .md ¿Prefieres el recurso entero?

Qué es

Apollo conecta un agente personal con un dispositivo físico. El cliente de referencia usa ESP32 y el backend se ejecuta en Cloudflare Workers. La documentación describe tanto los turnos de voz como memoria, herramientas, tareas de fondo y el contrato entre servidor y dispositivo.

Para qué te sirve

  • Cuando quieres prototipar un asistente hablado sobre una placa que ya tienes.
  • Cuando necesitas adaptar el firmware con un protocolo conocido en lugar de inventar uno nuevo.
  • Cuando buscas combinar recordatorios y herramientas externas con una interfaz de voz.

Cómo funciona

El dispositivo se comunica con el backend, que coordina reconocimiento, razonamiento y síntesis. La arquitectura documenta sesiones por dispositivo mediante Durable Objects, objetos multimedia en R2 y memoria vectorial, además de colas y flujos de trabajo. El firmware se mantiene como submódulo con su propia documentación.

El modo local MOCK_VOICE=1 omite voz real y recuperación vectorial. Sirve para desarrollar sin consumir créditos de síntesis o embeddings, pero no valida una conversación hablada completa. La guía de despliegue enumera recursos, credenciales y configuración por separado.

Antes de empezar

El proyecto fija Bun 1.3.13 como gestor de paquetes. Necesitas además, para probar recursos remotos, una cuenta de Cloudflare y autenticación de Wrangler. La guía local pide como mínimo un secreto compartido del dispositivo y acceso a OpenRouter. La voz real requiere además las credenciales indicadas para ElevenLabs. El código es MIT; la infraestructura y los servicios externos tienen costes y condiciones propios.

Límites y alternativas

Alojarlo en tu cuenta no significa que la voz y los prompts nunca salgan hacia proveedores. El modo de prueba tampoco cubre hardware, red ni calidad de audio. La guía exige Docker al usar las rutas de Sandbox/Containers. Empieza por una sesión local y valida cada enlace antes de publicar firmware o conectar herramientas que puedan actuar sobre tus datos.

Recursos

Datos comprobados con GitHub el 26 oct 2026. Último commit en la rama predeterminada: 2026-08-17.