Skills Agentes

Agents

Construye agentes de voz con ElevenLabs. Úsalo al crear asistentes de voz, bots de atención al cliente, personajes de voz interactivos o cualquier conversación de voz en tiempo real.

Estrellas
49.5k

en todo el repo

Actividad
36

0–100, la ruta de este skill

Actualizado
hace 4 meses

último commit aquí

Commits
0

últimos 90 días

Contexto
2.5k tok

44 tok en reposo

Paquete
6 archivos

64 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add calesthio/OpenMontage --skill agents --agent claude-code

Se instala solo en este repositorio.

Este skill makes network requests, needs API credentials.

Qué hace

  • Crea y gestiona agentes de voz en la plataforma de ElevenLabs, desde el CLI o desde los SDK de Python y JavaScript
  • Inicializa el proyecto, crea el agente y lo sube a la plataforma con `push`
  • Configura herramientas del agente, llamadas salientes y el widget embebido
  • Importa agentes de la plataforma a configuración local y sincroniza cambios en ambos sentidos

Úsalo cuando

  • Crear un asistente de voz o un bot de atención al cliente
  • Construir un personaje de voz interactivo
  • Montar cualquier experiencia de conversación de voz en tiempo real

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • Crea un agente de voz para atención al cliente
    • Monta un asistente de voz con ElevenLabs
    • Añade una herramienta a mi agente de voz
    • Embebe el widget de voz en mi web

    SKILL.md

    En inglés

    ElevenLabs Agents Platform

    Build voice AI agents with natural conversations, multiple LLM providers, custom tools, and easy web embedding.

    Setup: See Installation Guide for CLI and SDK setup.

    Quick Start with CLI

    The ElevenLabs CLI is the recommended way to create and manage agents:

    # Install CLI and authenticate
    npm install -g @elevenlabs/cli
    elevenlabs auth login
    
    # Initialize project and create an agent
    elevenlabs agents init
    elevenlabs agents add "My Assistant" --template complete
    
    # Push to ElevenLabs platform
    elevenlabs agents push
    

    Available templates: complete, minimal, voice-only, text-only, customer-service, assistant

    Python

    from elevenlabs import ElevenLabs
    
    client = ElevenLabs()
    
    agent = client.conversational_ai.agents.create(
        name="My Assistant",
        enable_versioning=True,
        conversation_config={
            "agent": {
                "first_message": "Hello! How can I help?",
                "language": "en",
                "prompt": {
                    "prompt": "You are a helpful assistant. Be concise and friendly.",
                    "llm": "gemini-2.0-flash",
                    "temperature": 0.7
                }
            },
            "tts": {"voice_id": "JBFqnCBsd6RMkjVDRZzb"}
        }
    )
    

    JavaScript

    import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
    const client = new ElevenLabsClient();
    
    const agent = await client.conversationalAi.agents.create({
      name: "My Assistant",
      enableVersioning: true,
      conversationConfig: {
        agent: {
          firstMessage: "Hello! How can I help?",
          language: "en",
          prompt: {
            prompt: "You are a helpful assistant.",
            llm: "gemini-2.0-flash",
            temperature: 0.7
          }
        },
        tts: { voiceId: "JBFqnCBsd6RMkjVDRZzb" }
      }
    });
    

    cURL

    curl -X POST "https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true" \
      -H "xi-api-key: $ELEVENLABS_API_KEY" -H "Content-Type: application/json" \
      -d '{"name": "My Assistant", "conversation_config": {"agent": {"first_message": "Hello!", "language": "en", "prompt": {"prompt": "You are helpful.", "llm": "gemini-2.0-flash"}}, "tts": {"voice_id": "JBFqnCBsd6RMkjVDRZzb"}}}'
    

    Starting Conversations

    Server-side (Python): Get signed URL for client connection:

    signed_url = client.conversational_ai.conversations.get_signed_url(
        agent_id="your-agent-id",
        environment="staging",
    )
    

    Client-side (JavaScript):

    import { Conversation } from "@elevenlabs/client";
    
    const conversation = await Conversation.startSession({
      agentId: "your-agent-id",
      environment: "staging",
      onMessage: (msg) => console.log("Agent:", msg.message),
      onUserTranscript: (t) => console.log("User:", t.message),
      onError: (e) => console.error(e)
    });
    

    React Hook:

    import { useConversation } from "@elevenlabs/react";
    
    const conversation = useConversation({ onMessage: (msg) => console.log(msg) });
    // Get a signed URL for the target environment from your backend, then:
    await conversation.startSession({ signedUrl: token });
    

    Configuration

    Provider Models
    OpenAI gpt-5, gpt-5-mini, gpt-5-nano, gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-4o, gpt-4o-mini, gpt-4-turbo
    Anthropic claude-sonnet-4-6, claude-sonnet-4-5, claude-sonnet-4, claude-haiku-4-5, claude-3-7-sonnet, claude-3-5-sonnet, claude-3-haiku
    Google gemini-3.1-flash-lite-preview, gemini-3-pro-preview, gemini-3-flash-preview, gemini-2.5-flash, gemini-2.5-flash-lite, gemini-2.0-flash, gemini-2.0-flash-lite
    ElevenLabs glm-45-air-fp8, qwen3-30b-a3b, gpt-oss-120b
    Custom custom-llm (bring your own endpoint)

    Use GET /v1/convai/llm/list to inspect the current model catalog, including deprecation state, token/context limits, and capability flags such as image-input support.

    Popular voices: JBFqnCBsd6RMkjVDRZzb (George), EXAVITQu4vr4xnSDxMaL (Sarah), onwK4e9ZLuTAKqWW03F9 (Daniel), XB0fDUnXU5powFXDhCwa (Charlotte)

    Turn eagerness: patient (waits longer for user to finish), normal, or eager (responds quickly)

    See Agent Configuration for all options.

    Tools

    Extend agents with webhook, client, or built-in system tools. Tools are defined inside conversation_config.agent.prompt:

    Workspace environment variables can resolve per-environment server tool URLs, headers, and auth connections, and runtime system variables such as {{system__conversation_history}} can pass full conversation context into tool calls when needed.

    "prompt": {
        "prompt": "You are a helpful assistant that can check the weather.",
        "llm": "gemini-2.0-flash",
        "tools": [
            # Webhook: server-side API call
            {"type": "webhook", "name": "get_weather", "description": "Get weather",
             "api_schema": {"url": "https://api.example.com/weather", "method": "POST",
                 "request_body_schema": {"type": "object", "properties": {"location": {"type": "string"}}, "required": ["location"]}}},
            # Client: runs in the browser
            {"type": "client", "name": "show_product", "description": "Display a product",
             "parameters": {"type": "object", "properties": {"productId": {"type": "string"}}, "required": ["productId"]}}
        ],
        "built_in_tools": {
            "end_call": {},
            "transfer_to_number": {"transfers": [{"transfer_destination": {"type": "phone", "phone_number": "+1234567890"}, "condition": "User asks for human support"}]}
        }
    }
    

    Client tools run in browser:

    clientTools: {
      show_product: async ({ productId }) => {
        document.getElementById("product").src = `/products/${productId}`;
        return { success: true };
      }
    }
    

    See Client Tools Reference for complete documentation.

    Widget Embedding

    <elevenlabs-convai agent-id="your-agent-id"></elevenlabs-convai>
    <script src="https://unpkg.com/@elevenlabs/convai-widget-embed" async type="text/javascript"></script>
    

    Customize with attributes: avatar-image-url, action-text, start-call-text, end-call-text.

    See Widget Embedding Reference for all options.

    Outbound Calls

    Make outbound phone calls using your agent via Twilio integration:

    Python

    response = client.conversational_ai.twilio.outbound_call(
        agent_id="your-agent-id",
        agent_phone_number_id="your-phone-number-id",
        to_number="+1234567890",
        call_recording_enabled=True
    )
    print(f"Call initiated: {response.conversation_id}")
    

    JavaScript

    const response = await client.conversationalAi.twilio.outboundCall({
      agentId: "your-agent-id",
      agentPhoneNumberId: "your-phone-number-id",
      toNumber: "+1234567890",
      callRecordingEnabled: true,
    });
    

    cURL

    curl -X POST "https://api.elevenlabs.io/v1/convai/twilio/outbound-call" \
      -H "xi-api-key: $ELEVENLABS_API_KEY" -H "Content-Type: application/json" \
      -d '{"agent_id": "your-agent-id", "agent_phone_number_id": "your-phone-number-id", "to_number": "+1234567890", "call_recording_enabled": true}'
    

    See Outbound Calls Reference for configuration overrides and dynamic variables.

    Managing Agents

    Using CLI (Recommended)

    # List agents and check status
    elevenlabs agents list
    elevenlabs agents status
    
    # Import agents from platform to local config
    elevenlabs agents pull                      # Import all agents
    elevenlabs agents pull --agent <agent-id>   # Import specific agent
    
    # Push local changes to platform
    elevenlabs agents push              # Upload configurations
    elevenlabs agents push --dry-run    # Preview changes first
    
    # Add tools
    elevenlabs tools add-webhook "Weather API"
    elevenlabs tools add-client "UI Tool"
    

    Project Structure

    The CLI creates a project structure for managing agents:

    your_project/
    ├── agents.json       # Agent definitions
    ├── tools.json        # Tool configurations
    ├── tests.json        # Test configurations
    ├── agent_configs/    # Individual agent configs
    ├── tool_configs/     # Individual tool configs
    └── test_configs/     # Individual test configs
    

    SDK Examples

    # List
    agents = client.conversational_ai.agents.list()
    
    # Get
    agent = client.conversational_ai.agents.get(agent_id="your-agent-id")
    
    # Update (partial - only include fields to change)
    client.conversational_ai.agents.update(agent_id="your-agent-id", name="New Name")
    client.conversational_ai.agents.update(agent_id="your-agent-id",
        conversation_config={
            "agent": {"prompt": {"prompt": "New instructions", "llm": "claude-sonnet-4"}}
        })
    
    # Delete
    client.conversational_ai.agents.delete(agent_id="your-agent-id")
    

    See Agent Configuration for all configuration options and SDK examples.

    Error Handling

    try:
        agent = client.conversational_ai.agents.create(...)
    except Exception as e:
        print(f"API error: {e}")
    

    Common errors: 401 (invalid key), 404 (not found), 422 (invalid config), 429 (rate limit)

    References

    Reproducido de calesthio/OpenMontage bajo licencia MIT. Leer esta página en markdown.

    Archivos

    6 archivos en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Necesita acceso a internet y una `ELEVENLABS_API_KEY`.

    Necesita en el PATH:curlnpm

    Variables de entorno:ELEVENLABS_API_KEY

    Detalles

    Creador
    calesthio
    Licencia
    MIT
    Recursos incluidos
    referencias
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de calesthio/OpenMontage

    Este repo incluye 89 skills. Si instalas uno, normalmente ya tienes los demás.

    Comfyui

    49.5k

    Úsalo al trabajar con workflows de ComfyUI en OpenMontage: comfyui_image/video/music, workflows propios, selección de output_node, modelos que faltan, LoRAs, poca VRAM e importación de workflows de la comunidad.

    Costo de contexto al activarse
    1.9k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 9 días
    diseno ui

    Genera vídeo cinematográfico de 4-30 s con ByteDance Seedance 2.5 por fal.ai, Volcengine Ark, Runway o ComfyUI. Cubre el contrato de prompt 2.5, cortes duros, locks de continuidad y voz.

    Costo de contexto al activarse
    3.2k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 4 días
    diseno ui

    Genera narración expresiva y multilingüe con fish.audio (modelos S1 / S2) y reutiliza voces clonadas mediante reference_id.

    Costo de contexto al activarse
    1.4k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 9 días
    diseno ui

    Genera y edita conversacionalmente vídeos cortos con Google Gemini Omni Flash: itera con ediciones en lenguaje natural, clips de 3-10s a 720p con audio y texto en pantalla, e imágenes de referencia por etiquetas.

    Costo de contexto al activarse
    2.1k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 9 días
    Permisos
    diseno ui

    Genera vídeo con MiniMax H3 (Hailuo 3.0) por la API oficial v2, fal.ai, Runway, nodos partner de ComfyUI o pesos abiertos locales. Clips de 4-15s a 2K con animación de primer/último fotograma.

    Costo de contexto al activarse
    582 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 9 días
    diseno ui

    Genera, reconstruye, inspecciona y enruta activos 3D de producción para mundos de OpenMontage con Atlas Cloud, fal.ai, catálogos con licencia y Blender.

    Costo de contexto al activarse
    1.2k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 9 días
    diseno ui

    Skills relacionados

    Bfl Api

    49.5k

    Guía de integración de la API BFL FLUX: endpoints, polling asíncrono, límites de tasa, manejo de errores, webhooks y endpoints regionales, con ejemplos en Python y TypeScript.

    Costo de contexto al activarse
    2.5k tok
    Tamaño del paquete
    10 archivos
    Última actualización
    hace 4 meses
    desarrollo apis

    Integración con DashScope (Alibaba Cloud Bailian / 阿里云百炼): generación de imágenes (qwen-image-2.0-pro), texto a voz (qwen3-tts-flash) y ASR con marcas de tiempo por palabra (qwen3-asr-flash-filetrans).

    Costo de contexto al activarse
    1.5k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    desarrollo apis

    Guía oficial de la API directa de Kling para los proveedores de OpenMontage. Úsala antes de llamar a kling_official_video, kling_official_image, kling_tts, kling_avatar o kling_lip_sync.

    Costo de contexto al activarse
    2.4k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    desarrollo apis