How Mutations Work
Every agent has a base configuration: model, system prompt, temperature, voice, API key, and other settings depending on the agent type. A mutation overrides one or more of these fields while leaving the rest unchanged. When you launch an evaluation with mutations selected, Coval runs the base agent plus each selected mutation as separate simulations. The results appear in the same run, grouped by variant, so you can compare metrics across configurations.The base agent always runs. Mutations are additional variants that run alongside it.
Deep Merge
Mutation overrides are deep-merged with the base agent configuration. For nested objects (like custom headers), this means individual keys are overridden while sibling keys are preserved.Supported Agent Types
Mutations are available for agent types that have overridable configuration fields:| Agent Type | Overridable Fields |
|---|---|
| WebSocket | Endpoint, initialization JSON, authorization header, custom headers |
| Inbound Voice (SIP) | Custom SIP headers |
Creating Mutations
- Navigate to your agent’s detail page
- Scroll to the Mutations section
- Click Create
Mutation Form
Each mutation requires:- Name — A descriptive label (e.g., “High Temperature”, “French Language”, “GPT-4 Turbo”)
- Description — Optional context about what this variant tests
- Text input for simple string or number fields
- Dropdown for fields with predefined options (e.g., model selection, voice)
- JSON editor for structured data fields (e.g., custom headers)
Using Mutations in Evaluations
When launching an evaluation or creating a template:- Select a single agent
- The Agent Mutations selector appears if the agent has active mutations
- Check the mutations you want to include
Viewing Results
After the evaluation completes:- The Mutation column in the results table shows which variant produced each result
- Use the filter dropdown to isolate results by mutation
- On the Dashboard, use the “Agent Mutation” dimension to split charts by variant
Common Use Cases
Model comparison — Create mutations for different models (GPT-4o vs GPT-4 Turbo vs Claude) to benchmark quality and latency. Prompt tuning — Test system prompt variations to find the wording that produces the best metric scores. Temperature sweeps — Run the same agent at different temperature values to find the optimal balance of creativity and consistency. Voice testing — Compare different TTS voices or providers to find the best fit for your use case. Header overrides — For SIP-based voice agents, test different routing headers or session metadata per variant.Managing Mutations
Editing
Click the edit icon on any mutation card to modify its name, description, or overrides.Deleting
Click the delete icon to archive a mutation. If the mutation is referenced by active templates, you will see a warning listing those templates. You can cancel or force-delete, which causes those templates to skip the deleted mutation on future runs.API and CLI
Mutations can also be managed programmatically:REST API
Create, list, update, and delete mutations via the v1 API
CLI
Manage mutations from the command line

