@langwatch/scenario
    Preparing search index...

    Interface UserSimulatorAgentConfig

    Combined configuration for the user simulator agent, merging LLM config with optional voice configuration.

    interface UserSimulatorAgentConfig {
        audioEffects?: ((audio: Uint8Array) => Uint8Array)[];
        interruptProbability?: number;
        maxTokens?: number;
        model?: LanguageModel;
        name?: string;
        persona?: string;
        systemPrompt?: string;
        temperature?: number;
        voice?: string;
    }

    Hierarchy (View Summary)

    Index

    Properties

    audioEffects?: ((audio: Uint8Array) => Uint8Array)[]

    Optional array of audio effect functions applied to each synthesized audio turn AFTER the TTS cache hit (effects are never baked into the cache key). Each function receives the raw PCM16 bytes and returns transformed bytes.

    interruptProbability?: number

    Probability in [0, 1] that the simulator interrupts each agent turn during proceed() (PRD §4.2 interrupt_probability=0.3). The executor reads this inside the proceed loop and fires a barge-in per the configured chance. Unset/0 = never interrupt.

    maxTokens?: number = ...
    model?: LanguageModel = ...
    name?: string

    The name of the agent.

    persona?: string

    Optional persona description appended to the system prompt. Shapes the text content of the simulated user.

    systemPrompt?: string

    System prompt to use for the agent.

    Useful in more complex scenarios where you want to set the system prompt for the agent directly. If left blank, this will be automatically generated from the scenario description.

    temperature?: number = ...
    voice?: string

    TTS voice identifier in provider/voice_name format, e.g. "openai/nova". When present, each simulator turn is synthesized to audio via this voice.