Agent Taxonomy

Every agent in YAAAF is classified according to its role in the artifact flow. This classification helps the planner build valid workflows and helps you understand what each agent does.

The Four Roles

Agents are classified into four primary roles based on how they handle artifacts:

EXTRACTOR

Purpose: Pull data from external sources into the system.

Extractors are the starting points of workflows. They reach outside YAAAF to retrieve data from databases, APIs, documents, or users. They produce artifacts but do not consume them.

Characteristics:

  • No artifact inputs (they are sources)

  • Produce artifacts from external data

  • Examples: SqlAgent, DocumentRetrieverAgent, BraveSearchAgent

[External Source] ──── EXTRACTOR ────► [Artifact]

TRANSFORMER

Purpose: Convert artifacts from one form to another.

Transformers take artifacts as input and produce new artifacts as output. They change the shape, format, or content of data without creating final outputs.

Characteristics:

  • Accept one or more artifacts as input

  • Produce one artifact as output

  • Do not interact with external systems (except tools)

  • Examples: MleAgent, ReviewerAgent, ToolAgent

[Artifact A] ──── TRANSFORMER ────► [Artifact B]

SYNTHESIZER

Purpose: Combine multiple artifacts into unified outputs.

Synthesizers merge information from multiple sources into coherent wholes. They are used when a query requires information from different agents to be brought together.

Characteristics:

  • Accept multiple artifacts as input

  • Produce a single unified artifact

  • Often used near the end of complex workflows

  • Examples: AnswererAgent, UrlReviewerAgent, PlannerAgent

[Artifact A] ───┐
                ├──── SYNTHESIZER ────► [Combined Artifact]
[Artifact B] ───┘

GENERATOR

Purpose: Create final outputs or side effects.

Generators produce artifacts that are typically the end goal of a workflow - visualizations, files, or system effects. They represent the “sinks” in the data flow.

Characteristics:

  • Accept artifacts as input

  • Produce final output artifacts

  • May have side effects (file creation, system changes)

  • Examples: VisualizationAgent, BashAgent

[Artifact] ──── GENERATOR ────► [Final Output]

Additional Classifications

Beyond the primary data flow role, agents have two additional classifications:

Interaction Mode

How the agent interacts during execution:

Mode

Description

AUTONOMOUS

Executes without human intervention

INTERACTIVE

May pause to request user input

COLLABORATIVE

Coordinates with other agents

Output Permanence

What happens to the agent’s output:

Permanence

Description

EPHEMERAL

Output exists only for the current workflow

PERSISTENT

Output is saved (files, trained models)

STATEFUL

Maintains state across interactions

Complete Agent Classification

Here is every agent with its full classification:

Agent

Data Flow

Interaction

Permanence

SqlAgent

EXTRACTOR

AUTONOMOUS

EPHEMERAL

DocumentRetrieverAgent

EXTRACTOR

AUTONOMOUS

EPHEMERAL

BraveSearchAgent

EXTRACTOR

AUTONOMOUS

EPHEMERAL

DuckDuckGoSearchAgent

EXTRACTOR

AUTONOMOUS

EPHEMERAL

UrlAgent

EXTRACTOR

AUTONOMOUS

EPHEMERAL

UserInputAgent

EXTRACTOR

INTERACTIVE

EPHEMERAL

MleAgent

TRANSFORMER

AUTONOMOUS

PERSISTENT

ReviewerAgent

TRANSFORMER

AUTONOMOUS

EPHEMERAL

ToolAgent

TRANSFORMER

AUTONOMOUS

EPHEMERAL

NumericalSequencesAgent

TRANSFORMER

AUTONOMOUS

EPHEMERAL

AnswererAgent

SYNTHESIZER

AUTONOMOUS

EPHEMERAL

UrlReviewerAgent

SYNTHESIZER

AUTONOMOUS

EPHEMERAL

PlannerAgent

SYNTHESIZER

AUTONOMOUS

EPHEMERAL

VisualizationAgent

GENERATOR

AUTONOMOUS

PERSISTENT

BashAgent

GENERATOR

INTERACTIVE

PERSISTENT

How the Planner Uses Taxonomy

The planner uses taxonomy information to build valid workflows:

  1. Source identification: Only EXTRACTORS can start a workflow (they have no inputs)

  2. Type matching: The planner ensures artifact types flow correctly between agents

  3. Goal mapping: The planner identifies which GENERATOR or SYNTHESIZER can produce the desired output type

  4. Path finding: The planner works backwards from the goal to find valid paths through TRANSFORMERS to EXTRACTORS

For example, if the goal is an image:

  1. Planner identifies VisualizationAgent (GENERATOR) produces images

  2. VisualizationAgent accepts tables

  3. SqlAgent (EXTRACTOR) produces tables

  4. Valid workflow: SqlAgent -> VisualizationAgent

Next Steps