Connect your agent

Create an agent definition for your voice or chat agent, and version it as you edit

Simulation can only test an agent it can reach, and the agent definition is where you tell it how. This guide walks the create wizard for a voice agent, covers where the chat path differs, and shows how to freeze the configuration you tested as a version.

Open Agent Definitions

Go to Agent Definition under Simulate in the sidebar. The page lists every definition in your workspace with its type, provider, contact number, and current version. Click Create agent definition at the top right.

The Agent Definitions list showing voice and chat agents with their providers, contact numbers, and versions, and the Create agent definition button at the top right

Everything starts from Create agent definition on the Agent Definitions page

Name the agent and pick its type

The Basic Info step asks who this agent is. The Agent type, voice or chat, decides how Simulation reaches the agent, so the rest of the wizard follows from it: a voice agent is dialed over the phone, a chat agent is answered by your own code. Give the agent a clear name and select the languages its conversations run in.

The Basic Info step with the Agent type dropdown, an Agent name field, and the language selector open with English checked

Pick the agent type and languages on Basic Info; this guide follows the voice path

Choose the provider

On the Configuration step, pick the Voice/Chat Provider powering your agent. Vapi and Retell are integrated natively, so choosing one lets the definition sync details straight from the provider in the next step. Choose Others for an agent on any other stack: a phone number Simulation can dial is all it needs.

The Configuration step with the provider dropdown open, listing Vapi, Retell, Bland.ai, and Others

Vapi, Retell and Bland.ai are native; Others covers any agent reachable by phone

Add the connection details

With Vapi selected, the provider fields appear. Fill them in top to bottom:

  • Authentication Method: choose API Key, then paste your provider API key
  • Assistant ID: the assistant to test; a successful sync pulls its name and system prompt from the provider, so the definition matches what runs in production
  • Enable observability, optional: turn it on to track the agent’s calls and logs for debugging later
  • Contact Information: the country code and the phone number calls are routed to or from, with Inbound Calls left on if the agent takes incoming calls

If the sync fails, the Assistant ID field flags it: recheck the API key and the ID, and the synced fields fill in on their own once both are right. Retell asks for the same details; with Others there are no provider credentials, just the contact number.

The Configuration step with Vapi selected, API Key as the authentication method, masked API key, Assistant ID, and contact number fields, and the Inbound Calls toggle on

Provider credentials, the contact number, and the inbound toggle live on Configuration

Set the behaviour and create

The Behaviour step holds the agent’s own instructions. Prompt / Chains carries the agent’s system prompt; if you synced from Vapi or Retell it arrives prefilled with the provider’s prompt, otherwise write it here. You can also attach a knowledge base so the agent answers from your domain material. The Commit Message works the way it does in code: a short line describing this configuration, stored on the version it becomes. Check the summary on the right, then click Create agent definition.

The Behaviour step with an AI SDR system prompt, a knowledge base selector, a commit message reading Initial commit, and the Create agent definition button next to the configuration summary

The system prompt, knowledge base, and commit message, then Create agent definition

Connecting a chat agent

Pick Chat as the agent type on Basic Info and the wizard keeps the same three steps, but the connection changes shape: there’s no provider to pick and no number to add, because a chat agent is answered by your own code. The Configuration step asks only which model your agent uses, and Basic Info and Behaviour work exactly as above.

The Configuration step for a chat agent, reduced to a single Model Used dropdown

Configuration on a chat agent is one field: the model it runs on

The connection itself happens when you run: with the agent-simulate SDK you attach your agent as a callback, each turn the persona says arrives at that callback, and whatever it returns is your agent’s reply, until the conversation ends. Run a chat simulation walks through the run itself, and the SDK & API reference has the code your service starts from.

Version the definition as you edit

The definition you just created is version 1, carrying the commit message you wrote in the wizard. Editing the definition later changes its live configuration and touches no version, so nothing you’ve already tested shifts under you.

To freeze the current configuration, open the definition from the list and click Create new version in its Version Management panel. The drawer shows the configuration you’re about to freeze, with room for final edits, and asks what’s changing in this version, the same commit message the wizard asked for. That version becomes the active one, the default for runs where you don’t pick a version at run setup; older versions stay runnable, which is how you re-run a configuration you’ve edited past.

Create new version freezes the configuration under the next number, here v3

Dive deeper

Was this page helpful?

Questions & Discussion