A Chrome extension that brings SDK-level conversation testing capabilities directly into the ElevenLabs web interface. Simulate realistic dialogues to test your conversational AI agents before production deployment.
- Side Panel UI: Persistent side panel that stays open while you work
- Auto-Detection: Automatically detects Agent ID from the current page URL
- Dynamic Variables: Add custom variables required by your agent (e.g.,
user_name,order_id) - Load Defaults: Auto-fetch placeholder values from your agent configuration
- Conversation View: Clean, readable transcript showing the dialogue flow
- Persistent State: All inputs are saved and restored when you reopen the extension
- Full API Response: Complete JSON output for debugging and analysis
- Install dependencies and build:
npm install
npm run build- Load the extension in Chrome:
- Open
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked"
- Select the
distfolder
- Open
- Navigate to your agent page:
https://elevenlabs.io/app/agents/agents/[your-agent-id] - Click the extension icon to open the side panel
- Enter your ElevenLabs API key (get it from your profile settings)
- The Agent ID will be auto-populated from the URL
- Enter a prompt describing how the simulated user should behave:
You are a customer calling about a product inquiry. You are polite but want to know about pricing and availability. - (Optional) Click "Load Defaults" to auto-fetch dynamic variable placeholders
- (Optional) Add or modify dynamic variables as needed
- Click "Start Simulation" to run the test
- View the conversation transcript and full JSON response
If your agent requires dynamic variables (e.g., customer names, order IDs), you can:
- Click "Load Defaults" to auto-populate placeholder values from your agent config
- Manually add variables using the "Add Variable" button
- Each variable has a key-value pair (e.g.,
user_name=Javier Perez)
npm run build- Build for productionnpm run dev- Build and watch for changesnpm run lint- Lint TypeScript filesnpm run type-check- Check TypeScript types
See IMPLEMENTATION_PLAN.md for detailed implementation details.
The extension uses direct REST API calls to the ElevenLabs API:
POST /v1/convai/agents/{agent_id}/simulate-conversation- Run simulationsGET /v1/convai/agents/{agent_id}- Fetch agent configuration
- Chrome 114+ or Edge (Chromium-based)
- ElevenLabs API key (get one here)
All data (API keys, prompts, variables) is stored locally on your device using Chrome's storage API. Nothing is synced to the cloud or shared with third parties.