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

# Building blocks of an Agent

> The triggers, inputs, instructions, outputs, tools, context, and settings that make up an Agent

An Agent is a single document made of a body of instructions and the properties it needs to run: triggers, inputs, outputs, tools, context, and settings. An Agent can also run Workflows you've built as steps.

You find them on the Agent's settings panel, in this order: **Run triggers**, **Inputs**, **Instructions**, **Outputs**, **Tools**, **Context**, and a collapsed **Advanced settings** section. Edit them directly, or describe the change to Aim in the Agent's chat. Changes apply to the Agent right away.

## Inputs

Information a person provides each time they run the Agent, such as a URL, a topic, or a client name. Most Agents take an input, but they don't have to: an Agent that always does the same job, like getting data from a connected tool, needs none.

Each input has a type, a label, and an optional description, and you can mark it as required (inputs are optional by default). When someone runs the Agent, it asks for the inputs before it starts.

Input types include text, numbers, URLs, dates and date ranges, lists, dropdowns, true/false values, Documents, Sheets, file uploads, and Profound data: assets, categories, topics, prompts, regions, and tags.

## Instructions

The body of the Agent: what it should do, in what order, which tools and Workflows it should use, and any other guidance you have for the Agent.

Aim drafts the instructions when you describe the Agent, and updates them when you ask for changes. To ask Aim about part of the instructions, select the text and choose **Ask in chat**.

Switch the **Instructions** card to **Execution steps** to see the flow Aim works out from your instructions as a list of steps. To change the steps, ask Aim in the chat, or select **Regenerate steps** after you edit the instructions.

### Add items with / and @

Type **/** anywhere in the instructions to open the insert menu. Pick a category, or keep typing to search. The item appears in the instructions as a pill, so the Agent knows exactly what to use at that step. The categories are:

* **Inputs**, **Outputs**, and **Tools**: refer to the Agent's inputs, outputs, and tools in the step that uses them, for example, "Save the summary as \[Output]."
* **Agents**: run a published Workflow as a step. Learn more in [Run a Workflow as a step](#run-a-workflow-as-a-step) below.
* **Skills**: point the Agent to a Skill at the step where it should apply it.
* **Documents**, **Sheets**, and **Knowledge Bases**: point the Agent to reference material in Profound.
* **Basic blocks**: formatting for the instructions, such as headings and lists.

Type **@** to mention an item the Agent already has, such as a tool or an input.

### Run a Workflow as a step

Have the Agent run a Workflow you've built in the Workflow Builder as one of its steps. Use it for the parts of a task that must run the same way every time, such as fixed calculations, code, API calls, or integrations that Agents can't use as tools yet.

* **Add a Workflow:** in the instructions, type **/**, open **Agents**, and pick the Workflow, or type its name to search. It appears as a pill with the Workflow's name. Place it in the step where the Agent should run it, for example, "Run \[Workflow] for each topic, then summarize the results."
* **What happens during a run:** the Agent starts a run of the Workflow, fills in its inputs, waits for it to finish, and uses its results in the next steps. The Workflow's run shows in the Agent's chat, and you can open it to see what each node returned.
* **Remove a Workflow:** hover over its pill in the instructions and select the **×**.

Only published Workflows that you have access to are listed. Anyone who runs the Agent needs access to the Workflows it uses, so share them along with the Agent. An Agent can run Workflows, but not other Agents.

## Outputs

The artifacts the Agent produces: a Document, a Sheet, an HTML file, a CSV, or a PDF. Declare an output when you want a file at the end of every run. Each output can be visible to **Everyone** or **Private**. Outputs are saved under **Artifacts** at the top of the Agent's page. Some Agents don't produce any artifacts (for example, an Agent that creates a Linear issue whenever your Visibility Score drops).

## Tools

The apps the Agent can use while it works, such as G2, Notion, or Linear. Each tool is a connection to an account in that service, so the Agent acts with that account's permissions and asks before it changes anything in the connected service. Your Profound data is available to every Agent without setup. Learn more in [Tools in Agents](/agents/tools-in-agents).

## Triggers

Conditions that start an Agent run on their own:

* A **Schedule** trigger runs an Agent on a recurring schedule.
* An app trigger, listed under the app's name (for example, **Slack**), runs an Agent when an event happens in that app, such as a new channel message.
* A **Monitor** trigger watches the web for a change or an event (for example, a competitor publishes a new blog post) and runs an Agent when it happens. Monitors check the web as often as every hour.
* A **Profound data** trigger watches your Profound data and runs an Agent when a metric crosses a threshold, including FactCheck metrics such as the inaccurate claim count.

The switch next to **Run triggers** turns all of the Agent's triggers on or off at once. Without a trigger, the Agent runs only when someone selects **New run**. Learn more in [Triggers in Agents](/agents/triggers-in-agents).

## Context

Material the Agent draws on during every run: Knowledge Bases, Skills, Profound Documents, and Sheets. Select **Add** next to **Context** to attach them, then mention them in the instructions so the Agent knows when to use them.

## Advanced settings

Expand **Advanced settings** to set:

* The **Default model** and **Default effort**.
* **Capabilities**: turn **Browser**, **Web search**, and **Image generation** on or off. Turn off what the Agent doesn't need.
* **Behavior**: **Allow self-updates** lets the Agent modify its own instructions; **Allow questions** lets it pause to ask the person running it for input; **When a tool needs approval** sets whether it asks (**Ask**), approves automatically (**Approve**), or refuses (**Deny**).

## Next steps

* Learn how to create an Agent in [Get started with Agents](/agents/getting-started).
* Learn when to use a Workflow inside an Agent in [Agents and Workflows: when to use which](/agents/agents-vs-workflows).
* Check out the [Agents FAQ](/agents/faq).
