Habla con tu
agente de programación

Un servidor MCP local que permite a tu agente de programación hablar contigo. Sonic 3.6 lee en voz alta el mensaje del agente. Después Ink 2 escucha, decide cuándo has terminado y devuelve tus palabras al agente.
Claude Codecartesia-voice
Hecho
let's talk
converse

Los tests pasan. ¿Abro la pull request?

Sí, ábrela como borrador.
Abriendo una pull request en borrador.
Responde en voz alta. Ink 2 cierra tu turno cuando dejas de hablar.

Ejemplo de uso. Un ejemplo guionizado de la app en funcionamiento, no una grabación.

Modelos
sonic-3.6, ink-2
Idiomas
Inglés, español, francés, hindi, japonés
Licencia
Apache-2.0
Stack
PythonFastMCPsounddeviceuv
Productos de Cartesia
Sonic 3.6Ink 2

Qué hace

Funciona con Claude Code, Cursor y Codex. No hay tecla para hablar ni tiempo de silencio que ajustar, porque Ink 2 decide cuándo has terminado. Funciona igual que mbailey/voicemode, un servidor de voz de código abierto para agentes de programación, así que un agente que conoce uno puede usar el otro.

Ejecútalo tú mismo

  1. Descarga el servidor

    Ejecuta los comandos de abajo. Necesitas uv, un micrófono y auriculares. En Linux, instala antes libportaudio2.

    npx degit cartesia-ai/cookbook/examples/coding-voice-mode coding-voice-mode
    cd coding-voice-mode
    export CARTESIA_API_KEY=your-key
    # or cursor, codex, all
    ./setup.sh claude --save-key
    

    Variables de entorno
    CARTESIA_API_KEY
    play.cartesia.ai/keys
    CARTESIA_VOICE_ID
    Opcional. Una voz de play.cartesia.ai/voices. Por defecto, Daniel (en-US)
    CARTESIA_TURN_END_TIMEOUT_MS
    Opcional. De 640 a 11200, cuánto puede durar una pausa antes de que Ink 2 cierre tu turno
    CARTESIA_KEYTERMS
    Opcional. Nombres separados por comas hacia los que orientar la transcripción
  2. Instálalo en tu agente

    setup.sh ejecuta uv sync y cartesia-voice-mode install para claude, cursor, codex o all. Añade --dry-run para ver qué cambiaría.

  3. Empieza a hablar

    Reinicia el agente y di, o escribe, "let's talk" o "voice mode". Si no pasa nada, uv run cartesia-voice-mode doctor comprueba la clave.

Créalo con tu agente de programación

Un prompt que le dice a tu agente de programación por dónde empezar y qué leer primero.

Prompt

Claude CodeCursorCodex

Set up voice mode for my coding agent with Cartesia. Start from https://github.com/cartesia-ai/cookbook/tree/main/examples/coding-voice-mode and follow its AGENTS.md for the commands, files and rules. It is a local stdio MCP server with a converse tool: Sonic 3.6 (sonic-3.6) speaks the message over /tts/sse, then Ink 2 (ink-2) on /stt/turns/websocket listens until turn.end and returns the transcript as the tool result. Install it with ./setup.sh for my client, and keep the API key out of the client config. If I don't have a Cartesia API key yet, follow https://www.cartesia.ai/agent-quickstart.md to get one.

Cómo funciona

converseEl agente llama a la herramienta con un mensaje
Sonic 3.6Transmite el mensaje por /tts/sse y lo reproduce
MicrófonoSe abre solo cuando termina la reproducción
Ink 2Detección de turnos en /stt/turns/websocket
Resultado de la herramientaLa transcripción de turn.end, leída como tu siguiente mensaje

Por qué funciona así

La detección de turnos cierra tu turno

El servidor espera el evento turn.end de Ink 2, que significa que Ink 2 cree que has terminado. Una pausa a mitad de frase no te corta como lo haría un tiempo de silencio fijo.

Las esperas largas necesitan más tiempo en Codex

Codex detiene una llamada a herramienta a los 60 segundos por defecto. Un turno de voz reproduce el mensaje y luego escucha hasta 120 segundos, así que el script de instalación sube el tool_timeout_sec de Codex a 180. Edita tu configuración de Codex en el sitio y conserva tus comentarios. Si dejas que escuche más tiempo, sube también ese límite.

Adáptalo a ti

Cambia la voz

Define CARTESIA_VOICE_ID, o pide al agente que llame a la herramienta list_voices y elija una.

Habla en otro idioma

Ink 2 detecta por sí solo inglés, español, francés, hindi y japonés. Define CARTESIA_LANGUAGE y un CARTESIA_VOICE_ID que coincida para que Sonic responda en el mismo idioma.

Enséñale tus palabras

Pon nombres de repositorios y bibliotecas en CARTESIA_KEYTERMS para que Ink 2 los escriba como los escribe tu código.

Preguntas

¿Con qué agentes de programación funciona?

Claude Code, Cursor y Codex. El script de instalación lo instala en uno de ellos o en los tres.

¿Mi clave de API de Cartesia está segura?

Sí. El instalador escribe en la configuración de tu agente solo el comando que arranca el servidor. La clave se queda en tu shell, o en un archivo que solo tú puedes leer si pasas --save-key, y nunca aparece en mensajes de error ni en logs.

¿Puedo interrumpir al agente mientras habla?

No. El micrófono se abre solo cuando el agente termina de hablar, así que nunca se oye a sí mismo, y no hay cancelación de eco. Usa auriculares.

¿Qué tan rápido es?

Depende de tu red y tu región. El servidor muestra en cada llamada cuánto tardó Sonic en empezar a hablar, así que puedes comprobarlo. Para cambiar cuánto debe durar una pausa antes de que termine tu turno, define CARTESIA_TURN_END_TIMEOUT_MS.

¿En qué se diferencia de mbailey/voicemode?

Ese proyecto también puede usar modelos locales y otros proveedores de voz. Este servidor usa solo Cartesia.

¿Hay una guía paso a paso de esta plantilla?

Sí. La receta recorre el código, el README explica la instalación, las variables de entorno y el despliegue, y la documentación de detección de turnos de Ink 2 explica la parte de Cartesia.

Empieza hoy

Habla con un experto.

Habla con nuestro equipo y descubre cómo puede ayudarte Cartesia a crear experiencias de voz de primer nivel.

Contactar con ventas

Empieza a crear.

Accede a nuestros modelos mediante API y lleva un agente de voz a producción en minutos.

Probar Cartesia