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.