Create or Update Driver
create_or_update_driverCreate or update a simulated user persona for AI testing, defining scenario details, objectives, and soft tactics. Upserts by name for repeatable simulations.
Instructions
Define a simulated user persona that will interact with your target.
Creates or updates a Driver by name (upsert). Author ONLY the core
persona sections in prompt_template, in this order:
- `## Persona` — who the simulated user is (static character).
- `## Scenario Details` — contains the scenario reference
(`{scenario_input}` or a specific path like
`{scenario_input.objectives}`), placed immediately before
Objectives. This is how each scenario row's data reaches the
conversation.
- `## Objectives` — WHAT the driver is trying to accomplish, written
from the driver's goal (not from scenario variables).
- `## Soft Tactics` — HOW the driver probes, escalates, and stops.
Do NOT author Hard Rules, a Turn-End Checklist, or Conversation
Behavior sections: the MCP automatically appends the platform's
canonical versions of those blocks (including the language rule
matching `language`) — the same blocks the Okareo UI appends to
generated drivers. Any caller-authored variant of these sections is
replaced by the canonical text, and repeated updates never duplicate
the blocks.
For voice agents, configure how the simulated user speaks with `voice`,
`voice_profile`, `voice_instructions`, and `language`. Call
list_driver_voices first to discover valid voice and profile values.
Args:
name: Unique name for this driver.
prompt_template: The core persona prompt (Persona, Scenario
Details, Objectives, Soft Tactics — see above). Hard Rules and
Conversation Behavior are appended automatically.
model_id: Foundation model to power the driver (defaults to project default).
temperature: Response randomness, default 0.6.
voice_instructions: Free-text speaking instructions for voice simulations
(tone, pace, accent). Not validated against the voice catalog.
voice_profile: Voice profile name for voice simulations. Validated
against the catalog from list_driver_voices.
voice: Voice identifier for voice simulations. Validated against the
catalog from list_driver_voices.
language: Language the driver responds in, as the bare ISO code
the voice catalog serves (e.g. "en", "es", "ja"); regional
variants like "fr-CA" are accepted when their base code
matches the voice's language. When a `voice` is set and
language is omitted, it is derived from that voice's catalog
language (disclosed as `language_derived_from_voice` in the
response); a value conflicting with the voice's language is
rejected. Also drives the appended Hard Rules language rule.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| voice | No | ||
| language | No | ||
| model_id | No | ||
| temperature | No | ||
| voice_profile | No | ||
| prompt_template | Yes | ||
| voice_instructions | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |