Agents Reference

Agents are defined as directories containing configuration and behavior instructions.

Directory Structure

@myagent/ ├── config.json # Configuration └── system.md # Behavior instructions

config.json Schema

{ "model": "claude-sonnet-4-20250514", "tools": ["bash", "memory", "delegate"], "skills": ["customer-service"], "trust": "standard" }

Fields

FieldTypeDefaultDescription
model string (global default) LLM model to use
tools string[] [] Enabled tools
skills string[] [] Attached skills
trust string "standard" Trust level for sandbox

Tools

Available tools to enable for agents:

ToolDescription
bash Execute shell commands in sandbox
memory Store and retrieve persistent facts
delegate Delegate tasks to other agents
ticket Create and manage tickets
file Read and write files in workspace

Trust Levels

LevelDescription
minimal No filesystem or network access
standard Workspace access only (default)
elevated Additional bind mounts, network access

system.md Format

The system prompt defines agent behavior. Use markdown for structure.

Recommended Structure

# Agent Name Brief description of the agent's purpose. ## Role Detailed explanation of what this agent does. ## Guidelines - Guideline 1 - Guideline 2 - Guideline 3 ## Output Format Description of expected output format. ## Examples Example inputs and outputs if helpful.

Example: Email Triager

# Email Triage Agent You categorize and prioritize incoming emails. ## Categories - **urgent**: Requires immediate response - **important**: Respond within 24 hours - **routine**: Respond when convenient - **spam**: Ignore or delete ## Output Format For each email, output JSON: ```json { "category": "urgent|important|routine|spam", "priority": 1-5, "summary": "Brief summary", "suggested_action": "What to do" } ``` ## Guidelines - Default to lower priority when uncertain - Flag anything mentioning legal or security - Preserve original sender intent in summaries

Example Configurations

Minimal Agent

// config.json { "model": "claude-sonnet-4-20250514" }

Agent with Tools

// config.json { "model": "claude-sonnet-4-20250514", "tools": ["bash", "file"], "trust": "standard" }

Agent with Skills

// config.json { "model": "claude-sonnet-4-20250514", "skills": ["customer-service", "email-etiquette"] }

Full Configuration

// config.json { "model": "claude-opus-4-20250514", "tools": ["bash", "memory", "delegate", "file"], "skills": ["research", "analysis"], "trust": "elevated" }

Agent Location

Agents are searched in this order:

  1. ~/.config/ayo/agents/@name/ — User agents
  2. ~/.local/share/ayo/agents/@name/ — Built-in agents

User agents override built-in agents with the same name.