ElevenLabs CLI
Overview
Section titled “Overview”The ElevenLabs CLI allows you to access your ElevenLabs agents from your terminal, unlocking new ways to manage them:
- Store agents as code in your version control system
- Set up CI/CD integration to automatically deploy your agents
- Let your coding agent access and manage your voice agents
Prefer to jump straight to the code?
No install required
If you work from Claude or another MCP client, the hosted MCP server offers agent management tools with no local installation. Use the CLI when you want agents in version control; use the hosted MCP server for conversational management.
Installation
Section titled “Installation”Homebrew (macOS) and Scoop (Windows) are the recommended install methods and ship a standalone binary.
Homebrew (macOS)
brew install elevenlabs/tap/elevenlabsScoop (Windows)
scoop bucket add elevenlabs https://github.com/elevenlabs/scoop-bucket
scoop install elevenlabsnpm
npm install -g @elevenlabs/clicurl
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elevenlabs/cli/releases/latest/download/elevenlabs-cli-installer.sh | shAfter installation, the elevenlabs command will be available globally in your terminal.
Quick start
Section titled “Quick start”Initialize a new project
Section titled “Initialize a new project”elevenlabs agents initThis creates the project structure with configuration directories and registry files.
Authenticate with ElevenLabs
Section titled “Authenticate with ElevenLabs”elevenlabs auth loginThis will open up a browser window to authenticate via OAuth. The CLI will verify the credentials and store them securely.
Create your first agent
Section titled “Create your first agent”elevenlabs agents add "My Assistant" --template assistantThis creates a new agent configuration using the assistant template.
Push to ElevenLabs platform
Section titled “Push to ElevenLabs platform”elevenlabs agents pushThis uploads your local agent configuration to the ElevenLabs platform.
Project structure
Section titled “Project structure”The CLI creates a structured project directory:
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 filesAuthentication
Section titled “Authentication”elevenlabs auth login stores credentials in your operating system's keyring — Keychain on macOS,
Credential Manager on Windows, and the Secret Service on Linux. Where no keyring is available, the
CLI falls back to ~/.config/elevenlabs/auth-keyring.json with 0600 permissions. Run
elevenlabs auth status to see which source is in use, and elevenlabs auth logout to remove the
stored entry.
For CI, set ELEVENLABS_API_KEY in the environment or a .env file instead of logging in.
Authentication commands
Section titled “Authentication commands”Login
elevenlabs auth loginLogout
elevenlabs auth logoutAgent management
Section titled “Agent management”Creating agents
Section titled “Creating agents”Create agents using pre-built templates:
elevenlabs agents add "Agent Name" [options]Options:
--template <type>: Choose from available templates (default: default)--skip-upload: Create locally without uploading to platform
Example:
elevenlabs agents add "Customer Support Bot" --template customer-serviceTemplates
Section titled “Templates”The CLI provides six pre-built templates for common use cases:
default
Section titled “default”Complete configuration with all available fields, sensible defaults, full voice/text support, widget customization, and evaluation criteria.
minimal
Section titled “minimal”Essential fields only including basic prompt, language, TTS, and conversation settings.
voice-only
Section titled “voice-only”Optimized for voice interactions with disabled text input and advanced voice settings.
text-only
Section titled “text-only”Text-focused conversations with disabled voice features.
customer-service
Section titled “customer-service”Professional empathetic prompts, low temperature (0.1), 30-minute duration, and evaluation criteria.
assistant
Section titled “assistant”General-purpose AI assistant with balanced creativity (temperature 0.3) and versatile voice/text support.
Template commands
Section titled “Template commands”List available templates
elevenlabs agents templates listShow template configuration
elevenlabs agents templates show <template>Synchronization
Section titled “Synchronization”Keep your local configurations synchronized with the ElevenLabs platform:
Push all agents
elevenlabs agents pushPreview changes (dry run)
elevenlabs agents push --dry-runStatus and monitoring
Section titled “Status and monitoring”Check agent status
elevenlabs agents statusImport and export
Section titled “Import and export”Import existing agents
elevenlabs agents pullImport specific agent
elevenlabs agents pull --agent <agent_id>Update agents
elevenlabs agents pull --updateList all agents
elevenlabs agents listTool management
Section titled “Tool management”The CLI supports two types of tools for extending agent capabilities:
Webhook tools
Section titled “Webhook tools”HTTP API integrations with authentication and timeout configuration:
elevenlabs tools add "API Integration" --type "webhook" --config-path ./config.jsonClient tools
Section titled “Client tools”Direct client-side integrations:
elevenlabs tools add "Client Function" --type "client" --config-path ./config.jsonWidget generation
Section titled “Widget generation”Generate HTML embed code for web integration:
elevenlabs agents widget embed <agent_id>This outputs HTML code like:
<elevenlabs-convai agent-id="agent_id_here"></elevenlabs-convai>
<script src="https://unpkg.com/@elevenlabs/convai-widget-embed" async></script>Configuration files
Section titled “Configuration files”Agent configuration structure
Section titled “Agent configuration structure”Each agent configuration includes:
{
"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": []
}CI/CD pipeline integration
Section titled “CI/CD pipeline integration”# 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