Overview

The Agent of All Agents API provides a standardized way to create, register, and execute various AI agents while allowing for modular extension through Unique Reserved Function Names (URFNs) or agentId and API augmentation patterns.

Key features:

  • Register custom agents with standardized interfaces
  • Extend functionality with modular functions
  • Augment the API with new endpoints
  • Maintain compatibility with existing AI agent standards

Core Concepts

Agents

Agents are the primary components that perform specific tasks. Each agent has a type, description, and implementation.

URFNs (Unique Reserved Function Names)

URFNs provide modular functionality that can be used by any agent. They follow a standard naming convention (urfn_*) and are registered in a central registry.

API Augmentation

API augmentation allows developers to extend the API with new endpoints without modifying core components.


The Agent model

An Agent represents a single prompt chain with an option to trigger system events. Agents do not hold memory of previous interactions, intead is functionally equivalent to a workflow. It is a single pass operation.

class Agent {
    id            String
    name          String
    description   String

    fields        Field[]

    variables     Dictionary<String, String>
    workflow      Node[]
}

id (String)
uuid4 id string that identifies this agent.

name (String)
name of the agent

description (String)
descriptions for the agent

fields (Array of Field)
The component schema used to define the input body that this agent expects for execution. This is used by a separate Client React SDK that is used to render a dynamic UI for making agent requests.

variables (Dict of String)
Corresponds to the templating string provided by runtime nodes like system and user parameters from PromptNode. Values stored here is referable to the promptChain, throughout the workflow runtime.

workflow (Array of Node)
Corresponds to the promptChain and workflow steps for this agent.