Skip to main content
This page documents the structure of the main artifacts used and produced by ArkSim: scenario files, simulation output, evaluation output, and the run configuration file. Use it when building integrations, writing custom tooling, or debugging pipeline outputs.
For agent connection details (Chat Completions, A2A, and config), see Agent configuration.

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 by simulate and the simulation phase of simulate-evaluate.

Evaluation keys

Used by evaluate 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.