Agent Templates
Agent Templates are the core configuration mechanism in AgentDock, allowing you to define an agent's identity, capabilities, and behavior in a declarative JSON format.
Overview
Each agent in the /agents
directory has a template.json
file. This file defines:
- Basic identity (ID, name, description)
- LLM provider and model selection, including model parameters
- System prompt and personality traits
- Available tools
- Orchestration rules (steps, conditions, sequences)
This templating system makes it easy to create, share, and modify agents without writing extensive code.
See Contributing Community Agents for information on how to add your own agent templates to the public repository.
Template Structure (template.json
)
The template.json
file follows this general structure:
{
"version": "1.0", // Optional: Version of the template format
"agentId": "unique-agent-id", // Required: Unique identifier
"name": "Display Name", // Required: Name shown in UI
"description": "Brief description of the agent.", // Required: Description for UI
"tags": ["Example", "Research"], // Optional: Tags for categorization
"priority": 10, // Optional: Lower numbers appear higher in lists
"personality": [ // Required: System prompt broken into lines/paragraphs
"Personality trait 1",
"Personality trait 2"
],
"nodes": [ // Required: List of node types used by the agent
"llm.openai", // Example: Specify the LLM node provider
"search" // Example: Include necessary tool nodes
],
"nodeConfigurations": { // Required: Configuration for specific nodes
"llm.openai": { // Key matches the node type from the "nodes" list
"model": "YOUR_CHOSEN_MODEL", // Required: Specify the model ID
"temperature": 0.7, // Optional: Controls randomness (0=deterministic, >0=more random). Range varies by provider.
"maxTokens": 4096, // Optional: Max tokens for the response.
"topP": 0.9, // Optional: Nucleus sampling (0-1). Consider only top P% probability mass. Use temperature OR topP.
"topK": 50, // Optional: Consider only the top K most likely tokens.
"frequencyPenalty": 0.2, // Optional: Penalizes frequently used tokens (0=no penalty). Range varies.
"presencePenalty": 0.1, // Optional: Penalizes tokens already present in prompt/response (0=no penalty). Range varies.
"stopSequences": ["\nUser:"], // Optional: Sequences that stop generation.
"seed": 12345, // Optional: Integer for deterministic results (if supported).
"useCustomApiKey": false // Optional: If true, requires user to provide API key in settings.
},
"search": { // Example: Configuration for a tool node (if needed)
"maxResults": 5
}
},
"chatSettings": { // Required: Settings for the chat interface
"historyPolicy": "lastN", // Optional: 'none', 'lastN', 'all' (default: 'lastN')
"historyLength": 20, // Optional: Number of messages if policy is 'lastN' (default: 50)
"initialMessages": [ // Optional: Messages shown when chat starts
"Hello! How can I help?"
],
"chatPrompts": [ // Optional: Suggested prompts shown in UI
"What can you do?"
]
},
"options": { // Optional: Additional agent-level options
"maxSteps": 10 // Example: Max tool execution steps per turn
}
}
Key Configuration Fields
-
agentId
,name
,description
: Basic identification. -
personality
: Defines the system prompt and core behavior. Crucial for guiding the LLM. -
nodes
: Lists all capabilities (LLM provider node, tool nodes) the agent requires. -
nodeConfigurations
: Allows setting specific parameters for each node listed innodes
.- For LLM nodes (e.g.,
llm.openai
), you must specify themodel
. - You can optionally override default LLM behavior by setting parameters like
temperature
,maxTokens
,topP
,topK
,frequencyPenalty
,presencePenalty
,stopSequences
, andseed
. The exact behavior and valid ranges for these settings can vary between different LLM providers.
- For LLM nodes (e.g.,
-
chatSettings
: Controls the user interface behavior, initial state, and prompt suggestions.
For detailed explanations of the common LLM settings (temperature
, topP
, maxTokens
, etc.) and their effects, refer to the Vercel AI SDK Settings Documentation.
Featured Agents
Agent | Description | GitHub |
---|---|---|
Cognitive Reasoner | Tackles complex problems using a suite of cognitive enhancement tools and structured reasoning. Features different operational modes including Research, Problem-Solving, Evaluation, Comparison, Ideation, and Debate. Uses the think tool for step-by-step reasoning. | View Code |
Dr. House | Medical diagnostician inspired by the TV character, specializing in advanced medical diagnostics and rare disease identification. Leverages comprehensive medical knowledge and medical databases. | View Code |
Science Translator | Makes complex scientific papers accessible by finding and translating them into simple language without sacrificing accuracy. Utilizes PubMed access and multi-database scientific research capabilities. | View Code |
Calorie Vision | Analyzes food images to provide precise calorie and nutrient breakdowns using visual recognition technology. Integrates with visual analysis tools to process and evaluate food content from photos. | View Code |
Harvey Specter | Legal strategist and negotiator inspired by the Suits character, specializing in contract review, case strategy, and negotiation tactics. Accesses legal databases to provide accurate and actionable legal insights. | View Code |
Orchestrated Agent | Demonstrates advanced agent orchestration by combining multiple specialized agents and tools in a cohesive workflow with dynamic branching. Shows how different agents can be combined and orchestrated. | View Code |
Agent Planner | Specialized agent for designing and implementing AI agents using the AgentDock framework and RFA system. Provides agent ideation, architecture design, implementation guidance, and RFA system integration. | View Code |
Tenant Rights Advisor | Guides renters through housing issues like repairs, evictions, and deposit disputes based on general housing regulations. | View Code |
Consumer Rights Defender | Helps consumers navigate issues with refunds, warranties, defective products, and unfair billing practices. | View Code |
Small Claims Court Guide | Assists with small claims court navigation including filing paperwork, preparing evidence, and collecting judgments. | View Code |
Agent File Structure
For detailed implementation examples, clone the AgentDock repository and explore the agents/
directory.
agents/
└── agent-name/
├── template.json # Core configuration (required)
├── README.md # Documentation (recommended)
└── assets/ # Optional assets (e.g., avatar.png)
Usage
These templates can be:
- Tested directly: Try them out via the chat interface by clicking the agent links above (if running the client).
- Examined for patterns: Study their implementations to learn configuration techniques.
- Used as starting points: Copy and modify them to create your own specialized agents.