> 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 ElevenLabs

## Vue d'ensemble

La CLI ElevenLabs vous permet d'accéder à vos agents ElevenLabs depuis votre terminal, ouvrant de nouvelles façons de les gérer :

* Stockez les agents sous forme de code dans votre système de contrôle de version
* Configurez une intégration CI/CD pour déployer automatiquement vos agents
* Donnez à votre agent de programmation l'accès à vos agents vocaux et la possibilité de les gérer

> **Vous préférez accéder directement au code ?**
>
> Retrouvez le [code source complet et contribuez sur GitHub](https://github.com/elevenlabs/cli).

> **Aucune installation requise**
>
> Si vous travaillez depuis Claude ou un autre client MCP, le [serveur MCP hébergé](/docs/fr/eleven-agents/operate/hosted-mcp) propose des outils de gestion d'agents sans installation
> locale. Utilisez la CLI pour gérer les agents dans un système de contrôle de version ; utilisez le serveur MCP hébergé pour une
> gestion conversationnelle.

## Installation

Homebrew (macOS) et Scoop (Windows) sont les méthodes d'installation recommandées et fournissent un binaire autonome.

**`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**
>
> Vous travaillez avec un assistant de programmation IA ? Exécutez `elevenlabs generate-skills` dans votre projet pour créer un
> fichier `SKILL.md` pour chaque groupe de commandes dans `skills/`, afin que votre assistant connaisse toutes les fonctionnalités de la CLI
> sans que vous ayez à copier la documentation. Utilisez `--output-dir` pour les placer ailleurs. Cette commande lit la propre
> définition d'API intégrée à la CLI, elle ne nécessite donc aucune clé API et fonctionne hors ligne, tout en restant synchronisée avec
> la version de la CLI que vous avez installée.

Après l'installation, la commande `elevenlabs` sera disponible globalement dans votre terminal.

## Démarrage rapide

### Initialiser un nouveau projet

```bash
elevenlabs agents init
```

Cette commande crée la structure du projet avec les répertoires de configuration et les fichiers de registre.

### S'authentifier auprès d'ElevenLabs

```bash
elevenlabs auth login
```

Une fenêtre de navigateur s'ouvrira pour vous authentifier via OAuth. La CLI vérifiera les identifiants et les stockera de manière sécurisée.

### Créer votre premier agent

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

Cette commande crée une configuration de nouvel agent à l'aide du modèle d'assistant.

### Envoyer vers la plateforme ElevenLabs

```bash
elevenlabs agents push
```

Cette commande envoie la configuration de votre agent local vers la plateforme ElevenLabs.

## Structure du projet

La CLI crée un répertoire de projet structuré :

```
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
```

## Authentification

`elevenlabs auth login` stocke les identifiants dans le trousseau de votre système d'exploitation : Keychain sur macOS,
Gestionnaire d'identifiants sur Windows et Secret Service sur Linux. Lorsqu'aucun trousseau n'est disponible, la
CLI utilise à la place `~/.config/elevenlabs/auth-keyring.json` avec des autorisations `0600`. Exécutez
`elevenlabs auth status` pour voir quelle source est utilisée et `elevenlabs auth logout` pour supprimer l'entrée
stockée.

Pour la CI, définissez `ELEVENLABS_API_KEY` dans l'environnement ou dans un fichier `.env` au lieu de vous connecter.

### Commandes d'authentification

**`Connexion`**

```bash title="Connexion"
elevenlabs auth login
```

**`Déconnexion`**

```bash title="Déconnexion"
elevenlabs auth logout
```

## Gestion des agents

### Créer des agents

Créez des agents à l'aide de modèles prédéfinis :

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

**Options :**

* `--template <type>` : choisissez parmi les modèles disponibles (par défaut : default)
* `--skip-upload` : créez localement sans envoyer vers la plateforme

**Exemple :**

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

### Modèles

La CLI fournit six modèles prédéfinis pour les cas d'usage courants :

#### default

Configuration complète avec tous les champs disponibles, des valeurs par défaut pertinentes, une prise en charge vocale et textuelle complète, la personnalisation des widgets et des critères d'évaluation.

#### minimal

Champs essentiels uniquement, dont un prompt de base, la langue, le TTS et les paramètres de conversation.

#### voice-only

Optimisé pour les interactions vocales avec saisie de texte désactivée et paramètres vocaux avancés.

#### text-only

Conversations centrées sur le texte avec fonctionnalités vocales désactivées.

#### customer-service

Prompts professionnels et empathiques, température basse (0,1), durée de 30 minutes et critères d'évaluation.

#### assistant

Assistant IA polyvalent avec une créativité équilibrée (température 0,3) et une prise en charge vocale et textuelle flexible.

### Commandes des modèles

**`Lister les modèles disponibles`**

```bash title="Lister les modèles disponibles"
elevenlabs agents templates list
```

**`Afficher la configuration du modèle`**

```bash title="Afficher la configuration du modèle"
elevenlabs agents templates show <template>
```

### Synchronisation

Gardez vos configurations locales synchronisées avec la plateforme ElevenLabs :

**`Envoyer tous les agents`**

```bash title="Envoyer tous les agents"
elevenlabs agents push
```

**`Prévisualiser les modifications (simulation)`**

```bash title="Prévisualiser les modifications (simulation)"
elevenlabs agents push --dry-run
```

### Statut et suivi

**`Vérifier le statut de l'agent`**

```bash title="Vérifier le statut de l'agent"
elevenlabs agents status
```

### Importation et exportation

**`Importer des agents existants`**

```bash title="Importer des agents existants"
elevenlabs agents pull
```

**`Importer un agent spécifique`**

```bash title="Importer un agent spécifique"
elevenlabs agents pull --agent <agent_id>
```

**`Mettre à jour les agents`**

```bash title="Mettre à jour les agents"
elevenlabs agents pull --update
```

**`Lister tous les agents`**

```bash title="Lister tous les agents"
elevenlabs agents list
```

> **Note**
>
> Par défaut, `elevenlabs agents pull` ignore les agents qui existent déjà localement. Utilisez l'option
> `--update` pour remplacer les configurations locales par les modifications distantes effectuées dans le navigateur ou via l'API.

## Gestion des outils

La CLI prend en charge deux types d'outils pour étendre les capacités des agents :

### Outils webhook

Intégrations d'API HTTP avec configuration de l'authentification et du délai d'expiration :

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

### Outils client

Intégrations directes côté client :

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

## Génération de widgets

Générez du code d'intégration HTML pour le web :

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

Cette commande génère un code HTML tel que :

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

## Fichiers de configuration

### Structure de la configuration d'un agent

Chaque configuration d'agent inclut :

```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": []
}
```

### Intégration de pipeline 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
```