ElevenAgents

  • Ámbito de herramientas MCP en workflows de agentes: Los nodos de workflows de agentes ahora pueden restringir qué herramientas MCP puede llamar un subagente. Cuando la herencia de herramientas está desactivada en un nodo, solo se cargan para ese subagente las herramientas MCP seleccionadas explícitamente, lo que ofrece a los equipos un control preciso sobre el acceso a herramientas en cada paso del workflow.

  • Carga de archivos en conversaciones: Las rutas crear agente y actualizar agente ahora admiten un campo file_input en ConversationConfig. Cuando está activado, usuarios finales pueden adjuntar imágenes o PDF en el chat (requiere un LLM compatible con entradas multimodales). Se puede configurar con enabled (booleano) y max_files_per_conversation (entero).

  • Volver a ejecutar el análisis de conversaciones: La nueva ruta ejecutar análisis de conversación (POST /v1/convai/conversations/{conversation_id}/analysis/run) vuelve a evaluar una conversación completada con los criterios de evaluación y la configuración de recopilación de datos actuales del agente, sin necesidad de realizar una nueva llamada.

  • Simulación de respuestas de herramientas para pruebas: Las pruebas de simulación de agentes y las ejecuciones de suites de pruebas ahora admiten un campo tool_mock_config para controlar cómo se gestionan las llamadas a herramientas durante las pruebas. Usa MockingStrategy (all, selected, none) para elegir qué herramientas se simulan y MockNoMatchBehavior (call_real_tool, raise_error) para establecer el comportamiento alternativo cuando ninguna simulación coincide.

  • Orden de resultados de búsqueda de texto: La ruta buscar texto en conversaciones ahora acepta un parámetro de consulta sort_by con los valores search_score (predeterminado) o created_at, lo que permite controlar si los resultados se ordenan por relevancia o por fecha reciente.

  • Conexiones de autenticación mTLS: Las conexiones de autenticación de agentes ahora admiten TLS mutuo (mtls) como auth_type, además de las opciones existentes. Los nuevos esquemas CreateMTLSAuthRequest y MTLSAuthResponse están disponibles para crear y recuperar conexiones autenticadas con mTLS.

  • Mensaje de duración máxima: Se ha añadido el campo max_conversation_duration_message a la configuración del agente. Si se establece como una cadena no vacía, el agente enviará este mensaje al usuario cuando se alcance la duración máxima de la conversación.

  • Rama y entorno al iniciar conversaciones: Se han añadido los campos opcionales branch_id y environment a los datos de cliente de inicio de conversación (ConversationInitiationClientDataRequest) y al cuerpo de la solicitud enviar llamada por lotes, lo que permite dirigirlas a ramas y entornos específicos del agente.

Música

  • Vídeo a música: La nueva ruta POST /v1/music/video-to-music genera música de fondo a partir de uno o varios archivos de vídeo. Los vídeos se combinan en secuencia. Acepta description opcional (hasta 1000 caracteres) y tags opcionales (hasta 10 etiquetas de estilo como upbeat o cinematic) para influir en la pista generada.

Voz a Texto

  • Transcribir desde una URL: La ruta convertir voz a texto ahora acepta un parámetro source_url (cadena, opcional) para transcribir audio o vídeo desde una URL alojada, incluidos vídeos de YouTube, vídeos de TikTok y otros servicios de alojamiento de vídeo. Puede usarse como alternativa a subir un archivo directamente.

Voces

  • Recuento total en la lista de voces compartidas: La respuesta de listar voces compartidas ahora incluye un campo total_count, lo que facilita implementar la paginación y mostrar el número de resultados.

Lanzamientos de SDK

SDK de JavaScript

  • v2.41.0 - Se ha añadido compatibilidad con el tipo de evento WebSocket multimodal_message en las conversaciones en tiempo real de ElevenAgents. Incluye la regeneración de Fern para las últimas actualizaciones del esquema de la API.
  • v2.41.1 - Regeneración de Fern para ajustarse al esquema de la API del 1 de abril de 2026.

SDK de Python

  • v2.41.0 - Se ha corregido audio_interface para que sea opcional en el modo de conversación solo de texto, resolviendo un error de ejecución al iniciar una sesión sin audio. Incluye la regeneración de Fern para el último esquema de la API.

Paquetes

Esta versión incluye la nueva v1.0.0 de los SDK de agentes del lado del cliente. Incluye importantes cambios incompatibles en @elevenlabs/client, @elevenlabs/react y @elevenlabs/react-native. Revisa las indicaciones de migración siguientes antes de actualizar.

Para facilitar la actualización, hemos publicado una Skill para ayudar a tus agentes a actualizar por ti. Instálala con

npx skills add elevenlabs/packages

Puedes leer más sobre la versión v1 y sus mejoras en nuestro blog para desarrolladores.

  • @elevenlabs/client@1.0.0 — Cambios incompatibles:

    • Las clases Input y Output ya no se exportan. Usa en su lugar las interfaces InputController y OutputController de @elevenlabs/client.
    • Conversation ya no es una clase; ahora es un objeto de espacio de nombres y un alias de tipo para TextConversation | VoiceConversation. Elimina las comprobaciones instanceof Conversation y las subclases.
    • El valor predeterminado de connectionType ahora se deduce del modo de conversación: las conversaciones de voz usan "webrtc" de forma predeterminada y las conversaciones solo de texto usan "websocket". Para mantener el comportamiento anterior para voz, pasa connectionType: "websocket" explícitamente.
    • VoiceConversation.wakeLock ahora es privado. Pasa useWakeLock: false en las opciones de sesión para desactivar la gestión del bloqueo de activación.
    • changeInputDevice() y changeOutputDevice() ahora devuelven Promise<void> en lugar de Promise<Input> o Promise<Output>.
    • Sustituye conversation.input.analyser.getByteFrequencyData(data) por conversation.getInputByteFrequencyData().
    • Sustituye conversation.input.setMuted(v) por conversation.setMicMuted(v).
    • Sustituye conversation.output.gain.gain.value = v por conversation.setVolume({ volume: v }).
    • getInputVolume(), getOutputVolume(), getInputByteFrequencyData() y getOutputByteFrequencyData() ahora devuelven 0 o un Uint8Array vacío en lugar de generar un error cuando no hay ninguna conversación activa.
  • @elevenlabs/react@1.0.0 — Cambios incompatibles:

    • useConversation ahora requiere un antecesor ConversationProvider. Envuelve tu árbol de componentes en <ConversationProvider> y mueve las opciones al proveedor o al hook.
    • Se han eliminado las exportaciones DeviceFormatConfig y DeviceInputConfig. Usa en su lugar FormatConfig e InputDeviceConfig de @elevenlabs/client.
    • Los nuevos hooks granulares sustituyen al monolítico useConversation para mejorar el rendimiento del renderizado: useConversationControls(), useConversationStatus(), useConversationInput(), useConversationMode(), useConversationFeedback() y useRawConversation(). Cada hook se suscribe solo al estado que necesita, evitando renderizados innecesarios.
    • Nuevo hook useConversationClientTool(name, handler) para registrar herramientas de cliente que los agentes pueden invocar, con limpieza automática al desmontar.
    • Se ha añadido compatibilidad con silenciamiento controlado mediante las props isMuted y onMutedChange en ConversationProvider.
  • @elevenlabs/react-native@1.0.0 — Cambios incompatibles:

    • Se han eliminado las API anteriores ElevenLabsProvider y useConversation, y se han sustituido por reexportaciones de @elevenlabs/react. Sustituye ElevenLabsProvider por ConversationProvider y useConversation por los hooks granulares (useConversationControls, useConversationStatus, etc.).
    • En React Native, el paquete ahora incorpora polyfills para las globales de WebRTC, configura la AudioSession nativa y registra una estrategia de sesión de voz específica para cada plataforma al importarse.
  • @elevenlabs/types@0.8.0 - Exporta el array de ejecución CALLBACK_KEYS, que contiene todas las claves de la interfaz Callbacks y que el SDK de React utiliza internamente para la composición de callbacks.

  • @elevenlabs/client@0.16.0 - Se ha añadido el evento WebSocket de servidor a cliente guardrail_triggered y el callback onGuardrailTriggered, que se activa cuando el servidor detecta una infracción de las medidas de seguridad durante una conversación. También se han añadido discriminantes de tipo a TextConversation y VoiceConversation para permitir el estrechamiento de uniones discriminadas, y sobrecargas de startSession que restringen el tipo de retorno según la opción textOnly.

  • @elevenlabs/react-native@0.6.0 - Se han añadido el evento WebSocket guardrail_triggered y el callback onGuardrailTriggered, de forma coherente con @elevenlabs/client@0.16.0.

  • @elevenlabs/client@1.1.0 - Se ha añadido compatibilidad del lado del cliente para simular respuestas de herramientas en conversaciones de agentes, permitiendo escenarios de prueba que simulan resultados de llamadas a herramientas sin invocar herramientas reales.

  • @elevenlabs/types@0.9.0 - Se han añadido definiciones de tipos para la simulación de respuestas de herramientas en conversaciones de agentes.

  • @elevenlabs/react@1.0.1 - Actualizado para depender de @elevenlabs/client@1.1.0.

  • @elevenlabs/react-native@1.0.1 - Actualizado para depender de @elevenlabs/client@1.1.0 y @elevenlabs/react@1.0.1.

API

Nuevas rutas

  • Ejecutar análisis de conversación - POST /v1/convai/conversations/{conversation_id}/analysis/run - Vuelve a ejecutar el análisis de una conversación completada con los criterios de evaluación y la configuración de recopilación de datos actuales del agente.

  • POST /v1/music/video-to-music - Genera música de fondo a partir de uno o varios archivos de vídeo proporcionados como datos de formulario multipartes.

Rutas actualizadas

ElevenAgents

  • Crear agente, Actualizar agente

    • Se ha añadido el campo file_input (FileInputConfig, opcional) a ConversationConfig, lo que permite subir archivos (imágenes, PDF) en conversaciones de chat cuando el LLM admite entradas multimodales
    • Se ha añadido el campo max_conversation_duration_message (cadena, opcional) a la configuración del agente; el agente envía este mensaje cuando se alcanza el límite de tiempo de la sesión
  • Crear prueba, Actualizar prueba

    • Se ha añadido el campo tool_mock_config (objeto, opcional): un mapa de nombres de herramientas a entradas ToolResponseMockConfig para controlar el comportamiento de simulación de herramientas durante la simulación
  • Buscar texto en conversaciones

    • Se ha añadido el parámetro de consulta sort_by (cadena, opcional): acepta search_score (predeterminado) o created_at
  • Enviar llamada por lotes

    • Se ha añadido el campo branch_id (cadena, opcional) para dirigirse a una rama específica del agente
    • Se ha añadido el campo environment (cadena, opcional) para especificar el entorno de destino
  • Llamada saliente de Twilio, Llamada saliente de troncal SIP

    • Los datos de cliente de inicio de conversación ahora aceptan los campos opcionales branch_id y environment

Voz a Texto

  • Convertir voz a texto

    • Se ha añadido el parámetro source_url (cadena, opcional): acepta una URL a un archivo de audio o vídeo, vídeo de YouTube, vídeo de TikTok u otro contenido multimedia alojado como alternativa a la carga de un archivo

Voces

Alineación forzada

  • Crear alineación forzada

    • Se ha eliminado el parámetro enabled_spooled_file del cuerpo de la solicitud de datos de formulario multipartes