# Agent profiles

> Roles as data — a prompt, a model preset and an ordered tool list per agent.

In Enterprise, an [agent](https://pentagi.com/docs/glossary/#agent) is defined by a **profile**: its role, base prompt, model preset and the [tools](https://pentagi.com/docs/glossary/#tool) it may use. A planner chooses the profile for each [subtask](https://pentagi.com/docs/glossary/#subtask), so the specialist that runs matches the work.

## [Built-in profiles](https://pentagi.com/docs/enterprise/agent-profiles/#built-in-profiles)

| Group          | Profiles                                                                                                               |
| -------------- | ---------------------------------------------------------------------------------------------------------------------- |
| Working agents | `universal`, `pentester`, `coder`, `installer`, `researcher`, `recon`                                                  |
| Interactive    | `assistant`                                                                                                            |
| Pipeline       | `planner`, `subagent_planner`, `generator`, `refiner`, `reporter`, `enricher`, `report_planner`, `composer`, `reviser` |

[Plugins](https://pentagi.com/docs/glossary/#plugin) can ship their own profiles, and you can create custom ones in **Settings → Agent Profiles** — administrators for everyone, other users for themselves.

Working profiles have **On**, **Default** and **Off** switches: administrators set the **Default for users**, and each user can override it under **My state** for built-in profiles or **My override** for custom ones. **Default** follows `PROFILES_ENABLEMENT_MODE` — `auto`, the default, offers the profile to the planner, while `manual` offers it only once it is switched **On**. With no working profile enabled, the [task](https://pentagi.com/docs/glossary/#task) stops with an error.

![Agent profiles in Settings](https://pentagi.com/images/product/ee-agent-profiles.webp)

## [Planner and execution monitor](https://pentagi.com/docs/enterprise/agent-profiles/#planner-and-execution-monitor)

Before every subtask, the `planner` chooses the working profile, the plugins and a short checklist. It always runs — Enterprise has no `AGENT_PLANNING_STEP_ENABLED` — on the `adviser` model of the [flow](https://pentagi.com/docs/glossary/#flow)'s [provider](https://pentagi.com/docs/glossary/#provider), and after three invalid answers it falls back to `universal`.

Execution monitoring is on by default (`EXECUTION_MONITOR_ENABLED`). After 20 calls in a row to the same tool (`EXECUTION_MONITOR_SAME_TOOL_LIMIT`), 40 [tool calls](https://pentagi.com/docs/glossary/#tool-call) since the last check (`EXECUTION_MONITOR_TOTAL_TOOL_LIMIT`), or at half and three quarters of the subtask's time budget, a short check on the `simple_json` model decides whether the agent is stuck. Only then does the adviser review the agent's work — for profiles that carry the `advice` tool, and while at least five minutes of the budget remain.

## [Sub-agents and budgets](https://pentagi.com/docs/enterprise/agent-profiles/#sub-agents-and-budgets)

Working agents can start [sub-agents](https://pentagi.com/docs/glossary/#sub-agent) for parallel work inside a subtask with `spawn_agent`, follow them with `agent_status`, `agent_wait` and `agent_log`, and stop them with `agent_stop`. Time budgets handed down from the task to each subtask, a cap on subtasks per task and a ceiling on concurrent sub-agents keep delegation under control. Set them when you start a flow, together with a context preset — Compact, Balanced or Spacious — that the summarizer aims for.

A new flow's defaults come from `AGENT_TIME_BUDGET_SECONDS` (10800, three hours of agent work for each task), `AGENT_MAX_SUBTASKS` (15 per task), `AGENT_MAX_CONCURRENT_SUBAGENTS` (10) and `SUMMARIZER_PRESET`. On a running flow, change them under **Preferences**; changes apply from the next task. **Concurrent sub-agents** set to **Disabled** removes the sub-agent tools from every agent of the flow, the [assistant](https://pentagi.com/docs/glossary/#assistant) included.