Scenarios (scenarios.json)
The scenario file is a single JSON document that lists scenario objects. Each scenario describes one simulated user and one conversation session. It is the input to Simulation and is referenced during Evaluation.
Schema
string
required
Schema version identifier. Use
"v1".list[Scenario]
required
List of scenario objects.
Simulation output (simulation.json)
Written by arksim simulate or the simulation step of arksim simulate-evaluate. Path is set by output_file_path in your config.
Schema
string
required
Output schema version (e.g.
"v1").string
required
ArkSim package version that produced this file.
string
required
UUID that uniquely identifies this simulation run. Referenced by the evaluation output as
simulation_id to link the two artifacts.string
required
ISO-8601 UTC timestamp when the file was generated.
list[Conversation]
required
One record per simulated conversation.
Evaluation output (evaluation.json)
Written by arksim evaluate or the evaluation step of arksim simulate-evaluate. Path is {output_dir}/evaluation.json.
Schema
string
required
Output schema version (e.g.
"v1").string
required
ISO-8601 UTC timestamp when the file was generated.
string
required
ArkSim package version that produced this file.
string
required
UUID that uniquely identifies this evaluation run. Generated fresh for each
arksim evaluate or arksim simulate-evaluate invocation.string
required
UUID of the simulation run that produced the conversations being evaluated. Copied from
simulation.json to link the two artifacts.list[ConversationEvaluation]
required
One record per conversation evaluated.
list[UniqueError]
required
Deduplicated behavior failures across all conversations.
Run configuration (config.yaml)
The same YAML file can be used for arksim simulate, arksim evaluate, and arksim simulate-evaluate. For simulate-evaluate, simulation and evaluation settings are merged from a single config.
Agent configuration
Simulation keys
Used bysimulate and the simulation phase of simulate-evaluate.
Evaluation keys
Used byevaluate and the evaluation phase of simulate-evaluate.
model, provider, and num_workers are shared across simulation and evaluation when both run from the same config.