Agents

Overview

An Agent is an executable component that combines required system instructions and an LLM configuration with optional typed inputs, outputs, and tools. It uses an iterative ReAct-style model-and-tool loop in which the model selects available tools, receives validated results, and continues until producing a final response or reaching an error or execution limit. Unlike a Flow, which follows a predetermined graph, an Agent provides bounded, goal-directed autonomy with dynamic tool selection, iterative refinement, runtime validation, privilege enforcement, and traceable model and tool activity.

Read More: Overview

Define an Agent

Defining an Agent requires a component type, unique identifier, name, supported LLM configuration, and system prompt, with optional inputs, outputs, tools, toolboxes, human participation, and referenced component definitions. The example order-support Agent accepts a request, uses separate order lookup and return-eligibility tools, and returns a response through symbolically resolved components whose references and identifiers must match exactly. Its system prompt may include case-sensitive input variables such as {{request}}, but instructions do not grant permissions; runtime validation, database privileges, credentials, network controls, tool contracts, and model-and-tool round limits govern execution.
Read More: Define an Agent