# Agents Endpoint Object Structure

This page applies to the [`agents`](/docs/features/agents) endpoint.

## Example

```yaml filename="Agents Endpoint"
endpoints:
  agents:
    recursionLimit: 50
    disableBuilder: false
    # (optional) Agent Capabilities available to all users. Omit the ones you wish to exclude. Defaults to list below.
    # capabilities: ["execute_code", "file_search", "actions", "tools"]
```
> This configuration enables the builder interface for agents.

## recursionLimit

<OptionTable
  options={[
    ['recursionLimit', 'Number', 'Sets the maximum number of super-steps the graph can execute during a single execution.', 'Controls recursion depth to prevent infinite loops. When limit is reached, raises GraphRecursionError.'],
  ]}
/>

**Default:** `25`

**Example:**
```yaml filename="endpoints / agents / recursionLimit"
recursionLimit: 50
```

## disableBuilder

<OptionTable
  options={[
    ['disableBuilder', 'Boolean', 'Controls the visibility and use of the builder interface for agents.', 'When set to `true`, disables the builder interface for the agent, limiting direct manual interaction.'],
  ]}
/>

**Default:** `false`

**Example:**
```yaml filename="endpoints / agents / disableBuilder"
disableBuilder: false
```

## capabilities

<OptionTable
  options={[
    ['capabilities', 'Array/List of Strings', 'Specifies the agent capabilities available to all users for the agents endpoint.', 'Defines the agent capabilities that are available to all users for the agents endpoint. You can omit the capabilities you wish to exclude from the list.'],
  ]}
/>

**Default:** `["execute_code", "file_search", "actions", "tools"]`

**Example:**
```yaml filename="endpoints / agents / capabilities"
capabilities:
  - "execute_code"
  - "file_search"
  - "actions"
  - "tools"
```
**Note:** This field is optional. If omitted, the default behavior is to include all the capabilities listed in the default.

## Agent Capabilities

The `capabilities` field allows you to enable or disable specific functionalities for agents. The available capabilities are:

- **execute_code**: Allows the agent to execute code.
- **file_search**: Enables the agent to search and interact with files.
- **actions**: Permits the agent to perform predefined actions.
- **tools**: Grants the agent access to various tools.

By specifying the capabilities, you can control the features available to users when interacting with agents.

## Example Configuration

Here is an example of configuring the `agents` endpoint with custom capabilities:

```yaml filename="Agents Endpoint"
endpoints:
  agents:
    disableBuilder: false
    capabilities:
      - "execute_code"
      - "actions"
```

In this example, the builder interface for agents is disabled, and only the `execute_code` and `actions` capabilities are enabled.

## Notes

- It's not recommended to disable the builder interface unless you are using [modelSpecs](/docs/configuration/librechat_yaml/object_structure/model_specs) to define a list of agents to choose from.
