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

# Building Agents

> Create Agents with filters, actions, Mentions, and trigger settings

This guide covers the full Agent builder - filters, actions, field mapping with Mentions, trigger configuration, and execution modes.

## Key concepts

| Concept         | Description                                                                 |
| --------------- | --------------------------------------------------------------------------- |
| **Integration** | A connected external system (Salesforce, Snowflake, CSV, etc.)              |
| **Filter**      | A condition that selects records (e.g., "Email is empty")                   |
| **Action**      | What BonData does for each matching record (create, update, notify, export) |
| **Task**        | One action for one record. 20 matching records = 20 tasks                   |
| **Bond**        | A link between fields in different systems, used for cross-system filters   |

## Create an Agent

<Steps>
  <Step title="Open the Agent builder">
    Go to **Agents** in the sidebar, then click **Create New Agent**. Give it a name and optional description.
  </Step>

  <Step title="Define filters">
    Add filter nodes to specify which records the Agent should act on.

    **Filter logic:**

    * **AND** - chain multiple filter nodes sequentially (use **Then +**)
    * **OR** - add conditions within the same node (use **+ Add condition**)
    * **Field comparison** - compare fields across systems (e.g., HubSpot "Company Name" ≠ Salesforce "Account Name")

    Use **Filter Insights** (button on the filter's right side) to see how many records match. Requires saving the Agent first.
  </Step>

  <Step title="Choose actions">
    Available actions:

    * **Create Record** - in any connected system
    * **Update Record** - modify fields on matching records
    * **Slack notification** - post to a channel
    * **Generate CSV / Google Sheet** - export matching data
    * **HTTP Request** - call an external API
  </Step>

  <Step title="Set execution mode">
    * **Automatic** - tasks execute immediately
    * **Manual** - tasks queue for individual approval
  </Step>

  <Step title="Activate">
    Click **Activate** to start the Agent on your defined schedule.
  </Step>
</Steps>

## Mentions: field mapping between systems

**Mentions** let you dynamically reference a field from one system when creating or updating records in another.

### Basic usage

1. In an Action config, click **Mention**
2. Select the source integration and object
3. Choose the field

BonData inserts that field's value into the target action for each matching record.

**Example:** Importing a CSV into Salesforce - mention the CSV's "Account Name" column in the Salesforce Account "Name" field. Each row creates a new account using that row's values.

### Conditional Mentions

Transform values before writing them to the target system.

**Example:** A CSV has an "OptedOut" column with values `0`, `1`, or `null`. Salesforce needs "Yes" or "No":

* If OptedOut = 1 → "Yes"
* Else → "No"

### Default values

Set a fallback for when the source field is empty. This prevents blank fields in the target system.

## Trigger settings

Access trigger settings from the top-left of the Agent editor.

### Trigger behavior

| Mode                 | Behavior                                                                                |
| -------------------- | --------------------------------------------------------------------------------------- |
| **Change** (default) | Tasks only generate for new or changed records that match filters                       |
| **Always**           | Every run creates tasks for all matching records, regardless of whether they've changed |

<Note>
  With **Always** mode: if 20 accounts match on Monday, a daily alert shows all 20 each day. A new match on Tuesday shows 21 on Tuesday. Use **Change** mode to see only new matches.
</Note>

### Run frequency

* Default: every 15 minutes (when Agent is set to automatic)
* Customizable to any interval, including cron expressions
* All times are in **UTC**

## Save, Test, Run

* **Save** - persist your configuration
* **Test** - simulate the Agent without triggering real actions
* **Run** - activate the Agent on your schedule

<Warning>
  New Agents may need a brief loading period before first execution. BonData must fetch both metadata and data for the entities involved. Check [Monitoring & Troubleshooting](/guide/agents/monitoring-troubleshooting) for details.
</Warning>

## FAQ

<AccordionGroup>
  <Accordion title="Can one Agent have multiple actions?">
    Yes. Each matching record can trigger multiple tasks (e.g., update a record AND send a Slack notification).
  </Accordion>

  <Accordion title="Can an Agent span multiple integrations?">
    Yes. Filters and Mentions can reference any connected system.
  </Accordion>

  <Accordion title="How do I undo a change?">
    Check the Task logs for affected records, then revert changes in the source system. BonData doesn't store your full dataset.
  </Accordion>
</AccordionGroup>

## Node reference

For a detailed guide to every node type - including Data Normalization, Find Duplicates, AI Enrichment, Web Search, and more - see the [Nodes Overview](/guide/nodes/overview) reference.

## Best practices

* **Start simple** - one filter, one action, one field at a time
* **Use Test mode** - validate before activating
* **Review periodically** - data fields and business rules change
* **Watch task volumes** - unexpected spikes may indicate overly broad filters
