Character Files (src/types.ts) define agent personalities and capabilities including biographical information, interaction styles, plugin configurations, and platform integrations.
The character file defines who your agent is - like a script for an actor. It includes:
Biographical information and backstory
Topics the agent can discuss
Writing style and tone
Which AI models to use
Which plugins to load
Which platforms to connect to
Required Fields:
{
"name": "character_name", // Character's display name for identification and in conversations
"modelProvider": "openai", // AI model provider (e.g., anthropic, openai, groq, mistral, google)
"targets": ["uniswap", "raydium", "li.fi"], // Supported target types
"plugins": [], // Array of plugins to use
"settings": { // Configuration settings
"ragKnowledge": false, // Enable RAG for knowledge (default: false)
"secrets": {}, // API keys and sensitive data
"voice": {}, // Voice configuration
"model": "string", // Optional model override
"modelConfig": {} // Optional model configuration
},
"bio": [], // Character background as a string or array of statements
"style": { // Interaction style guide
"all": [], // General style rules
"chat": [], // Chat-specific style
"post": [] // Post-specific style
}
}
Bio & Lore:
{
"bio": [
"Expert in blockchain trading",
"Specializes in DeFi protocols"
],
"lore": [
"Made first $100K in the recent bear market",
"Helped launch multiple DAOs"
]
}
Style Guidelines:
{
"style": {
"all": [ // Applied to all interactions
"Keep responses clear",
"Maintain professional tone"
],
"chat": [ // Chat-specific style
"Engage with curiosity",
"Provide explanations"
],
"post": [ // Social post style
"Keep posts informative",
"Focus on key points"
]
}
}