Skip to main content

AI Agent Simulation Framework

Your agent says it follows the rules. Synkro puts that to the test. Point Synkro at your policy document and it will auto-generate adversarial scenarios, simulate multi-turn conversations against your agent, and verify every response against the policy rules. No hand-written test cases. No manual QA. Just run synkro.simulate() and get a pass/fail report.
import synkro

results = synkro.simulate(
    agent=my_agent,
    policy="All refunds require a receipt. Max refund is $500...",
    scenarios=20,
    turns=3,
)

print(f"Pass rate: {results.pass_rate:.0%}")  # 85%
print(f"Passed: {results.passed}/{results.total}")

for r in results:
    if not r.passed:
        print(f"FAILED: {r.scenario.description}")
        print(f"  Issues: {r.issues}")

What Happens Under the Hood

1

Extract Rules

Synkro reads your policy and extracts structured rules — conditions, actions, exceptions, and dependencies — into a Logic Map
2

Generate Scenarios

Auto-generates diverse test scenarios from those rules: positive paths, negative paths, edge cases, and adversarial inputs
3

Simulate Conversations

An LLM-driven simulated user runs each scenario against your agent in realistic multi-turn conversations
4

Verify Every Response

A separate verifier LLM checks every agent response against the extracted rules — catching policy violations, contradictions, and hallucinations
5

Get Results

Pass/fail per scenario, full conversation transcripts, specific rule violations, and exportable datasets

Why Simulate?

  • Catch policy violations before production — find the edge cases your agent gets wrong
  • Auto-generated from your policy — no writing test cases by hand, scenarios evolve with your policy
  • Multi-turn adversarial testing — the simulated user pushes back, asks tricky follow-ups, and tries to break the rules
  • Grounded verification — every response checked against specific extracted rules, not vibes
  • Coverage tracking — see which rules are tested and which have gaps, like code coverage for your agent

Beyond Simulation

Synkro also generates training datasets from the same policy document — Conversation, Instruction, Evaluation, and Tool Calling formats. Test your agent and fine-tune it from a single source of truth.
# Generate training data from the same policy
dataset = synkro.generate(policy, traces=100)
dataset.save("training.jsonl")

Key Features

Agent Simulation

Run auto-generated scenarios against your live agent with a simulated user

Policy Verification

Every conversation verified for rule compliance, contradictions, and hallucinations

Adversarial Testing

Simulated users push back, escalate, and try to break your agent’s guardrails

Coverage Tracking

Track which policy rules are tested and identify gaps — like code coverage for agents

Training Data

Generate Conversation, Instruction, Evaluation, and Tool Calling datasets

Any LLM

OpenAI, Anthropic, Google, Ollama, vLLM — works with any provider

Next Steps

Quickstart

Simulate your first agent test in 5 minutes

Agent Simulation Guide

Deep dive into simulation features

API Reference

Explore the full API

Examples

Copy-paste patterns for common workflows