kind: flow and are discriminated by type. Flows reference agents, a persona, and an environment by name.
Improv (type: improv)
An improvised simulation with a happy path and edge-case variants.
happyPathrequires apersonaandenvironment(by name);promptandexpectationsare optional.- Each
edgeCases[]entry inherits the happy path unless it overridespersona/environment/prompt, and can add its ownexpectations.
Scripted (type: scripted)
A step-by-step conversation graph (branches, merges, DTMF, voicemail, scenario links). Each apply replaces the whole graph.
- Each node has a
typeand an optionalreflabel so other nodes can rejoin it viamergeInto(DAG merge edges).stepsare a node’s successors (more than one = a branch). - No UUIDs: identity is the
ref, and each apply replaces the whole graph. - The environment is referenced by its display name and must already exist in Roark.
For the full field reference of every kind, see the Config DSL reference schema.