Skip to content

Individual agent configurations define the behavior, capabilities, and settings for each agent in your manifest. Each agent entry in the agents dictionary represents a complete agent setup.

Overview

Agent configuration includes:

  • Model settings: LLM provider and model selection
  • System prompts: Define agent behavior and personality
  • Tools and toolsets: Capabilities available to the agent
  • Knowledge sources: Context and information access
  • Output types: Structured response definitions
  • Workers: Sub-agents for delegation
  • Connections: Message routing to other nodes
  • MCP servers: Model Context Protocol integrations
  • Triggers: Event-based activation

Configuration Reference

Agent Configuration

Configuration for a single agent in the system.

Defines an agent's complete configuration including its model, environment, and behavior settings.

Docs: https://phil65.github.io/agentpool/YAML%20Configuration/agent_configuration/

Agent Configuration (YAML)
type: native  # Top-level discriminator for agent type.
model:  # The model to use for this agent. Can be either a simple model name
  type: string
  identifier: openai:gpt-5-nano
  max_tokens: null
  temperature: null
  top_p: null
  timeout: null
  parallel_tool_calls: null
  seed: null
  presence_penalty: null
  frequency_penalty: null
  logit_bias: null
  stop_sequences: null
  extra_headers: null
  extra_body: null
tools: []  # A list of tools and toolsets to register with this agent.
session: null  # Session configuration for conversation recovery.
output_type: null  # Optional structured output type for responses. Can be either a reference to a response defined in ma...
retries: 1  # Number of retries for failed operations (maps to pydantic-ai's retries)
output_retries: null  # Max retries for result validation
end_strategy: early  # The strategy for handling multiple tool calls when a final result is found
avatar: null  # URL or path to agent's avatar image
system_prompt: null  # System prompt for the agent.
knowledge: null  # Knowledge sources for this agent.
workers: []  # Worker agents which will be available as tools.
usage_limits: null  # Usage limits for this agent.
model_providers: null  # List of model providers to use for model discovery.
tool_mode: null  # Tool execution mode:
requires_tool_confirmation: per_tool  # How to handle tool confirmation:
hooks: null  # Hooks for intercepting and customizing agent behavior at key lifecycle points.
environment: null  # Execution environment config for the agent's own toolsets.
name: null  # Identifier for the node. Set from dict key, not from YAML.
display_name: null  # Human-readable display name for the node.
description: null  # Optional description of the agent / team.
triggers: []  # Event sources that activate this agent / team
connections: []  # Targets to forward results to.
mcp_servers: []  # List of MCP server configurations:
input_provider: null  # Provider for human-input-handling.
event_handlers: []  # Event handlers for processing agent stream events.

Configuration Inheritance

Agents can inherit configuration from other agents or base configurations:

agents:
  base_agent:
    model: "openai:gpt-4o"
    retries: 2
    tools:
      - type: "resource_access"

  specialized_agent:
    model: "openai:gpt-4o"
    description: "Specialized version"
    system_prompt: "You are a specialized agent..."

Agents Section

Complete example of an agent configuration:

agents:
  web_assistant:                   # Name of the agent
    description: "Helps with web tasks"  # Optional description
    model: openai:gpt-5           # Model to use
    tools:
      open_browser:
        import_path: webbrowser.open
        description: "Opens URLs in browser"
    system_prompt:
      - "You are a web assistant."
      - "Use open_browser to open URLs."
    retries: 2                   # Number of retries for failed

Field Reference

Field Name Description
name Identifier for the agent (set from dict key, not from YAML)
config_file_path Config file path for resolving relative paths
display_name Human-readable display name for the agent
description Optional description of the agent
triggers Event sources that activate this agent
connections Targets to forward results to
mcp_servers List of MCP server configurations
input_provider Provider for human-input-handling
event_handlers Event handlers for processing agent stream events
model The model to use for this agent
toolsets Toolset configurations for extensible tool collections
session Session configuration for conversation recovery
output_type Name of the response definition to use
retries Number of retries for failed operations
output_retries Max retries for result validation
end_strategy The strategy for handling multiple tool calls when a final result is found
avatar URL or path to agent's avatar image
system_prompts System prompts for the agent
knowledge Knowledge sources for this agent
workers Worker agents which will be available as tools
requires_tool_confirmation How to handle tool confirmation (always/never/per_tool)
debug Enable debug output for this agent
environment Execution environment configuration for this agent
usage_limits Usage limits for this agent
tool_mode Tool execution mode (None/codemode)