Create a scenario
Create with a natural language prompt. Arga generates the seed config.
scenario = client.scenarios.create(
name="E-commerce checkout",
prompt="A Stripe account with 3 customers on different plans",
description="For testing checkout flows", # optional
tags=["checkout", "stripe"], # optional
)
Or create with an explicit seed config:
scenario = client.scenarios.create(
name="Support channel",
twins=["slack"],
seed_config={
"slack": {
"channels": [{"name": "support", "messages": ["Help needed"]}]
}
},
)
List scenarios
# All scenarios
scenarios = client.scenarios.list()
# Filter by twin or tag
scenarios = client.scenarios.list(twin="stripe")
scenarios = client.scenarios.list(tag="checkout")
Get a scenario
scenario = client.scenarios.get("scenario-id")
print(scenario.name, scenario.twins, scenario.seed_config)
Use a scenario when provisioning twins
Use a saved scenario to seed a short-lived twin session:
result = client.twins.provision(
twins=["stripe", "slack"],
scenario_id="scenario-id",
)
run_id = result["run_id"]
status = client.twins.get_status(run_id)
if status.status == "ready":
for name, twin in status.twins.items():
print(f"{name}: {twin.base_url}")
print(f" Admin: {twin.admin_url}")
print(f" Env vars: {twin.env_vars}")
The current Python SDK exposes scenario CRUD plus seeded twin provisioning through client.twins.provision(..., scenario_id=...). Long-lived per-scenario twin environment helpers are not part of the current SDK surface.