Skip to Content

Agents

Agents are AI personalities defined in .agent.md files. Each agent declares its domain expertise, available tools, preferred models, WAF alignment, and compatible solution plays. Agents are the interactive primitives of FrootAI β€” users invoke them in Copilot Chat for domain-specific assistance.

File Structure

Every agent lives in the agents/ directory (or .github/agents/ inside a solution play) and follows this structure:

agents/fai-rag-architect.agent.md
--- description: "RAG pipeline design β€” chunking, indexing, retrieval, reranking" name: "FAI RAG Architect" tools: - "codebase" - "terminal" model: ["gpt-4o", "gpt-4o-mini"] waf: - "security" - "reliability" plays: - "01" - "21" --- # FAI RAG Architect You are a RAG pipeline specialist focused on Azure AI Search...

The file has two parts:

  1. YAML frontmatter β€” metadata, tool configuration, WAF alignment
  2. Markdown body β€” the system prompt defining the agent’s behavior

Frontmatter Fields

FieldRequiredTypeValidation
descriptionβœ…string10+ characters
nameNostringDisplay name shown in Copilot Chat
toolsNostring[]Valid tool IDs: codebase, terminal, azure_development, github, fetch
modelNostring[]Preferred models in priority order
wafNostring[]Valid WAF pillar names
playsNostring[]2-digit solution play numbers

Valid WAF Pillars

Use these exact values β€” validation rejects misspellings:

  • security
  • reliability
  • cost-optimization
  • operational-excellence
  • performance-efficiency
  • responsible-ai

Builder β†’ Reviewer β†’ Tuner Triad

Each solution play has a dedicated agent triad that follows the build β†’ review β†’ tune workflow:

RoleNaming ConventionPurpose
Builderfai-play-NN-builderImplements the solution play
Reviewerfai-play-NN-reviewerReviews for security, WAF, quality
Tunerfai-play-NN-tunerValidates config and production readiness
Example: Play 01 Builder Agent
--- description: "Enterprise RAG implementation specialist β€” builds ingestion pipelines, retrieval APIs, and evaluation harnesses for Azure AI Search + GPT-4o." tools: ["codebase", "terminal", "azure_development"] waf: ["security", "reliability", "cost-optimization"] plays: ["01"] --- # FAI Enterprise RAG Builder You implement enterprise RAG solutions on Azure...
πŸ’‘

Agent Handoffs

Use @builder, @reviewer, or @tuner in Copilot Chat to trigger the triad workflow. The builder creates, the reviewer validates, and the tuner optimizes for production.

Agent Categories

FrootAI provides 238+ agents organized by domain:

  • RAG & Search β€” fai-rag-architect, fai-azure-ai-search-expert, fai-embedding-expert
  • Agent & Multi-Agent β€” fai-autogen-expert, fai-swarm-supervisor, fai-crewai-expert
  • Infrastructure β€” fai-architect, fai-landing-zone, fai-azure-openai-expert
  • Security & Compliance β€” fai-security-reviewer, fai-compliance-expert, fai-red-team-expert
  • DevOps & Tooling β€” fai-devops-expert, fai-test-generator, fai-github-actions-expert

Referencing Agents in fai-manifest.json

Wire agents into a solution play via the manifest:

solution-plays/01-enterprise-rag/fai-manifest.json
{ "primitives": { "agents": [ "../../agents/fai-rag-architect.agent.md", "./.github/agents/rag-builder.agent.md" ] } }

System Prompt Writing Guide

Structure your agent body in this order for maximum effectiveness:

  1. Opening paragraph β€” who the agent is, in one clear sentence
  2. Core Expertise β€” bullet list of specific knowledge areas (10–20 items)
  3. Your Approach β€” how the agent thinks and works (numbered steps)
  4. Guidelines β€” specific technical defaults and preferences
  5. Non-Negotiables β€” hard rules prefixed with NEVER/ALWAYS
  6. Response Format β€” how to structure outputs
⚠️

One Expertise Per Agent

An agent should be β€œRAG architect” not β€œfull-stack developer.” Narrow expertise produces better responses. Use the triad pattern for broader coverage.

Naming Convention

PatternExampleUse Case
fai-{domain}-expertfai-azure-openai-expertDomain expert
fai-play-{nn}-builderfai-play-01-builderPlay builder
fai-{pillar}-reviewerfai-security-reviewerWAF specialist

All filenames must be lowercase-hyphen β€” no underscores or camelCase.

Validation

npm run validate:primitives

This checks that every agent has:

  • description with 10+ characters
  • Valid waf pillar names
  • Correct lowercase-hyphen filename

See Also

Last updated on