> ## Documentation Index
> Fetch the complete documentation index at: https://docs.platform.nora.my/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent block

> The reasoning core of every Flow — a role, a model, tools, and memory.

The **Agent block** is where your workflow does its thinking. Every Flow has at least one. Every Agent has four things you configure:

1. A **role** — plain-language instructions describing what it does.
2. A **model** — which underlying LLM to run.
3. **Tools & data** — what it's allowed to call and read.
4. **Limits** — safety rails on turns, tokens, and cost.

## Role and prompt

The role is the Agent's system prompt in natural language. Write it like you're onboarding a new hire:

* Who is the Agent talking to?
* What is it responsible for?
* What is out of scope?
* What tone should it use?
* How should it handle uncertainty?

Example:

> You are a customer support assistant for a fintech app. Answer questions about account balances, fee schedules, and transfer status. If a question touches on legal or tax advice, hand off to a human by triggering `escalate_to_human`. Always cite the specific policy document you used.

The prompt is edited inline on the block, or in a full-screen editor (`E` when the Agent is selected).

## Model selection

Pick from the models available in your workspace. Each has a shown speed / cost / quality profile so you can pick without guessing.

You can also set a **fallback model** — if the primary hits its limits, the Agent quietly retries on the fallback rather than failing the run.

## Tools

Attach one or more **Tool blocks** so the Agent can call them. The Agent decides which tool to invoke at runtime based on the tool's description — so tool descriptions are part of the Agent's effective prompt. Write them clearly.

Tools are attached from the Inspector's **Tools** section. Reorder to hint priority.

## Data sources

Attach **Documents** and **Memory spaces** so the Agent can retrieve from them. Attachments are per-Agent, not per-Flow — different Agents in the same Flow can have different knowledge.

See [Attach data to agents](/build/knowledge/attach) and [Memory spaces](/build/memory/spaces).

## Limits

Three knobs, all optional:

* **Max turns** — how many tool-call round-trips the Agent may take before the run terminates. Defaults to the Flow-level cap.
* **Max tokens** — total tokens across all model calls in a single run.
* **Max cost** — hard USD ceiling per run. Runs that would exceed this are stopped and marked in the Trace.

Set limits high enough to solve the task, low enough to protect you from a runaway loop.

## Approvals

Toggle **Require approval** to gate certain outcomes. When on, the Agent's response is held until a reviewer approves, rejects, or edits it in the Approvals queue. See [Approvals](/reliable/optimization/approve).

## Mode

Agents run in one of two modes:

* **Chat** — multi-turn, conversational, remembers prior turns of the same session.
* **Task** — single-turn: takes an input, produces an output, done. Good for pipeline steps.
