> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# CLI de ElevenLabs

## Resumen

La CLI de ElevenLabs te permite acceder a tus agentes de ElevenLabs desde el terminal, lo que abre nuevas formas de gestionarlos:

* Almacena agentes como código en tu sistema de control de versiones
* Configura la integración CI/CD para implementar automáticamente tus agentes
* Permite que tu agente de programación acceda y gestione tus agentes de voz

> **¿Prefieres ir directamente al código?**
>
> Consulta el [código fuente completo y contribuye en GitHub](https://github.com/elevenlabs/cli).

> **No requiere instalación**
>
> Si trabajas desde Claude u otro cliente MCP, el [servidor MCP alojado](/docs/es/eleven-agents/operate/hosted-mcp) ofrece herramientas de gestión de agentes sin instalación
> local. Usa la CLI si quieres tener los agentes en el control de versiones; usa el servidor MCP alojado para una
> gestión conversacional.

## Instalación

Homebrew (macOS) y Scoop (Windows) son los métodos de instalación recomendados e incluyen un binario independiente.

**`Homebrew (macOS)`**

```bash title="Homebrew (macOS)"
brew install elevenlabs/tap/elevenlabs
```

**`Scoop (Windows)`**

```powershell title="Scoop (Windows)"
scoop bucket add elevenlabs https://github.com/elevenlabs/scoop-bucket
scoop install elevenlabs
```

**`npm`**

```bash title="npm"
npm install -g @elevenlabs/cli
```

**`curl`**

```bash title="curl"
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elevenlabs/cli/releases/latest/download/elevenlabs-cli-installer.sh | sh
```

> **Tip**
>
> ¿Trabajas con un asistente de programación con IA? Ejecuta `elevenlabs generate-skills` en tu proyecto para crear un
> `SKILL.md` para cada grupo de comandos en `skills/`, para que tu asistente conozca todas las funciones de la CLI
> sin que tengas que pegar la documentación. Usa `--output-dir` para guardarlos en otro lugar. Esto lee la definición de la API
> integrada en la propia CLI, por lo que no necesita una clave de API y funciona sin conexión; además, se mantiene al día con
> la versión de la CLI que tengas instalada.

Después de instalarla, el comando `elevenlabs` estará disponible globalmente en tu terminal.

## Inicio rápido

### Inicializa un nuevo proyecto

```bash
elevenlabs agents init
```

Esto crea la estructura del proyecto con directorios de configuración y archivos de registro.

### Autentícate con ElevenLabs

```bash
elevenlabs auth login
```

Esto abrirá una ventana del navegador para autenticarte mediante OAuth. La CLI verificará las credenciales y las almacenará de forma segura.

### Crea tu primer agente

```bash
elevenlabs agents add "My Assistant" --template assistant
```

Esto crea una nueva configuración de agente mediante la plantilla de asistente.

### Sube a la plataforma de ElevenLabs

```bash
elevenlabs agents push
```

Esto carga la configuración local de tu agente en la plataforma de ElevenLabs.

## Estructura del proyecto

La CLI crea un directorio de proyecto estructurado:

```
your_project/
├── agents.json              # Central agent configuration registry
├── tools.json               # Tool definitions registry
├── tests.json               # Test definitions registry
├── agent_configs/           # Agent configuration files
├── tool_configs/            # Tool configuration files
└── test_configs/            # Test configuration files
```

## Autenticación

`elevenlabs auth login` almacena las credenciales en el llavero de tu sistema operativo: Keychain en macOS,
Credential Manager en Windows y Secret Service en Linux. Cuando no hay ningún llavero disponible, la
CLI recurre a `~/.config/elevenlabs/auth-keyring.json` con permisos `0600`. Ejecuta
`elevenlabs auth status` para ver qué origen se está usando y `elevenlabs auth logout` para eliminar la
entrada almacenada.

Para CI, configura `ELEVENLABS_API_KEY` en el entorno o en un archivo `.env` en lugar de iniciar sesión.

### Comandos de autenticación

**`Iniciar sesión`**

```bash title="Iniciar sesión"
elevenlabs auth login
```

**`Cerrar sesión`**

```bash title="Cerrar sesión"
elevenlabs auth logout
```

## Gestión de agentes

### Crear agentes

Crea agentes mediante plantillas prediseñadas:

```bash
elevenlabs agents add "Agent Name" [options]
```

**Opciones:**

* `--template <type>`: Elige entre las plantillas disponibles (predeterminada: default)
* `--skip-upload`: Crea localmente sin subir a la plataforma

**Ejemplo:**

```bash
elevenlabs agents add "Customer Support Bot" --template customer-service
```

### Plantillas

La CLI proporciona seis plantillas prediseñadas para casos de uso habituales:

#### default

Configuración completa con todos los campos disponibles, valores predeterminados adecuados, compatibilidad total con voz/texto, personalización de widgets y criterios de evaluación.

#### minimal

Solo campos esenciales, incluidos el prompt básico, el idioma, TTS y ajustes de conversación.

#### voice-only

Optimizada para interacciones de voz, con la entrada de texto desactivada y ajustes de voz avanzados.

#### text-only

Conversaciones centradas en texto con las funciones de voz desactivadas.

#### customer-service

Prompts profesionales y empáticos, temperatura baja (0.1), duración de 30 minutos y criterios de evaluación.

#### assistant

Asistente de IA de uso general con creatividad equilibrada (temperatura 0.3) y compatibilidad versátil con voz/texto.

### Comandos de plantillas

**`Listar plantillas disponibles`**

```bash title="Listar plantillas disponibles"
elevenlabs agents templates list
```

**`Mostrar la configuración de la plantilla`**

```bash title="Mostrar la configuración de la plantilla"
elevenlabs agents templates show <template>
```

### Sincronización

Mantén tus configuraciones locales sincronizadas con la plataforma de ElevenLabs:

**`Subir todos los agentes`**

```bash title="Subir todos los agentes"
elevenlabs agents push
```

**`Previsualizar cambios (ejecución en seco)`**

```bash title="Previsualizar cambios (ejecución en seco)"
elevenlabs agents push --dry-run
```

### Estado y supervisión

**`Comprobar el estado del agente`**

```bash title="Comprobar el estado del agente"
elevenlabs agents status
```

### Importación y exportación

**`Importar agentes existentes`**

```bash title="Importar agentes existentes"
elevenlabs agents pull
```

**`Importar un agente específico`**

```bash title="Importar un agente específico"
elevenlabs agents pull --agent <agent_id>
```

**`Actualizar agentes`**

```bash title="Actualizar agentes"
elevenlabs agents pull --update
```

**`Listar todos los agentes`**

```bash title="Listar todos los agentes"
elevenlabs agents list
```

> **Note**
>
> De forma predeterminada, `elevenlabs agents pull` omite los agentes que ya existen localmente. Usa la marca `--update`
> para reemplazar las configuraciones locales por cambios remotos realizados en el navegador o mediante la API.

## Gestión de herramientas

La CLI admite dos tipos de herramientas para ampliar las capacidades de los agentes:

### Herramientas de webhook

Integraciones de API HTTP con configuración de autenticación y tiempo de espera:

```bash
elevenlabs tools add "API Integration" --type "webhook" --config-path ./config.json
```

### Herramientas de cliente

Integraciones directas del lado del cliente:

```bash
elevenlabs tools add "Client Function" --type "client" --config-path ./config.json
```

## Generación de widgets

Genera código HTML integrado para la integración web:

```bash
elevenlabs agents widget embed <agent_id>
```

Esto genera código HTML como:

```html
<elevenlabs-convai agent-id="agent_id_here"></elevenlabs-convai>
<script src="https://unpkg.com/@elevenlabs/convai-widget-embed" async></script>
```

## Archivos de configuración

### Estructura de configuración del agente

Cada configuración de agente incluye:

```json
{
  "name": "Agent Name",
  "conversation_config": {
    "agent": {
      "language": "en",
      "prompt": {
        "prompt": "You are a helpful AI assistant.",
        "llm": "gemini-2.5-flash",
        "temperature": 0.0
      }
    },
    "tts": {
      "model_id": "eleven_turbo_v2",
      "voice_id": "cjVigY5qzO86Huf0OWal",
      "agent_output_audio_format": "pcm_16000"
    },
    "asr": {
      "provider": "scribe_realtime",
      "quality": "high",
      "user_input_audio_format": "pcm_16000"
    },
    "conversation": {
      "text_only": false,
      "max_duration_seconds": 600,
      "client_events": ["audio", "interruption"]
    }
  },
  "platform_settings": {
    "widget": {
      "variant": "full",
      "placement": "bottom-right"
    }
  },
  "tags": []
}
```

### Integración con pipelines de CI/CD

```yml
# In your GitHub Actions workflow
- name: Deploy ElevenAgents agents
  run: |
    npm install -g @elevenlabs/cli
    export ELEVENLABS_API_KEY=${{ secrets.ELEVENLABS_API_KEY }}
    elevenlabs agents push --dry-run  # Preview changes
    elevenlabs agents push            # Deploy
    elevenlabs agents status          # Verify deployment
```