Simulation testing
Break it in staging, not in production. Test agents with synthetic callers across flows, personas, accents, and edge cases before you ship.
Post-call analysis
Every production call scored, filed, and traced. Transcribed and measured against your metrics in real time.
Human review
Label calls, set ground truth, and align every metric with your team’s judgment.
Autoimprove
From caught issue to drafted fix to proven deploy, with you in the loop.
Your first simulation
The fastest way in is a few lines of code: define an agent and a simulation plan, apply them, and run it from the CLI. It’s versioned in git, reusable in CI, and there are no UUIDs to wrangle.Full walkthrough: Run a simulation
Define, apply, run, read the pass/fail, and gate CI on it, step by step.
Other ways to run one
Prefer to click through it, or drive the API imperatively? Each tab below also takes you from nothing to a running simulation, reusing a built-in persona and environment.- Node SDK
- Python SDK
- CLI
- Config as Code
- Dashboard
Copy, paste, run with Watch it in the dashboard, or poll
@roarkanalytics/sdk:client.simulationRunPlanJob.getByID(run.data.simulationRunPlanJobId).Explore the docs
Simulations
Customer flows, personas, templates, plans, and schedules
Config as Code
Define agents, personas, flows, metrics, collectors, and alerts as YAML in git
Observability
Call history, traces, reports, and dashboards
Metrics
The metric library, Studio, collectors, and thresholds
Integrations
Vapi, Retell, ElevenLabs, Leaping, LiveKit, and custom
CLI
Drive Roark from your terminal and CI pipelines
SDKs
Node.js, Python, and MCP Server
API Reference
REST API documentation