Overview
Configure your agent’s API connection, business context, and knowledge base. These files tell the simulator how to connect to your agent and what to test.Directory Structure
Create a configuration directory with the required JSON files:Agent Configuration
Theagent_config.json file configures how the framework connects to your conversational agent API.
Configuration Fields
| Field | Type | Description |
|---|---|---|
agent_name | String | Unique identifier for your agent (lowercase, no spaces) |
agent_capabilities | List[Str] | List of specific tasks your agent should handle |
agent_type | Enum | See API Connection Types for supported types |
agent_type_config | Dict | See API Connection Types for required fields |
Writing Effective Agent Capabilities
Describe capabilities using a Verb + Object (+ Scope) structure. Each capability should state a specific, observable action. Good Examples:- Answer feature-specific questions about products
- Provide pricing information and generate quotes
- Process returns and refunds for orders
- Schedule appointments and send confirmations
- Be helpful
- Answer questions
- Handle customer requests
Vague descriptions don’t set clear expectations or guide implementation. Be specific about what your agent can do.
API Connection Types
The simulator supports three agent types for API connections:- Chat Completions
- A2A Protocol
- Arklex Agents
Type:
chat_completionsConnects to any OpenAI-compatible chat completions endpoint.Features
- Standard chat completions API format
- Environment variable support for secrets
- Optional chat ID placeholder support
Placeholders & Variables
{chat_id}- Can be included inbody.messages[*].contentand will be replaced at runtime${ENV_VAR}- Supported in header values for secrets
Basic Configuration
Configuration with Chat ID Support
The
{chat_id} placeholder will be replaced with the actual chat ID during execution.Environment Variable Support
Bothchat_completions and a2a agent types support environment variable substitution using ${ENV_VAR} syntax.
How it works:
- At runtime,
${ENV_VAR}patterns are replaced with environment variable values - If not set, it will be replaced with an empty string
- Mix static text with variables:
"Bearer ${API_KEY}"→"Bearer sk-abc123..."
Knowledge Configuration
Theknowledge.json file defines your company overview, business type, and the knowledge your agent has access to.
Configuration Fields
| Field | Type | Description |
|---|---|---|
corporate_overview | String | A comprehensive description of your company |
business_type | Enum | Either "b2b" or "b2c" |
knowledge | List[Dict] | Defines what information your agent has access to |
user_events | List[Str] | (Optional) Event descriptions that provide context for simulated conversations |
user_goals | List[Str] | (Optional) Sample customer intents that guide the simulator in generating realistic test conversations |
Knowledge Source Types
The simulator supports four knowledge source types:Local Files
Local Files
Knowledge stored locally in the
data folder.Web Crawling
Web Crawling
Knowledge crawled from web URLs.
Direct Text
Direct Text
Knowledge provided directly as text content.
API Endpoint
API Endpoint
Knowledge fetched from external APIs.
Environment variables (e.g.,
${API_KEY}) are supported in request headers.Complete Example
Data Folder
Thedata folder contains your knowledge base documents that power your agent’s responses. You can freely add, remove, or update files in this folder to match your use case.
Supported File Formats
| Category | Formats |
|---|---|
| Documents | .md, .pdf, .doc, .docx, .txt, .html |
| Data Files | .json, .xls, .xlsx |
| Presentations | .ppt, .pptx |
| Images* | .png, .jpg, .jpeg |
*Image OCR requires
MISTRAL_API_KEY environment variable to be set.