---
schema_version: "1"
id: c7109086a4bca9f9e4854fa85d054619cabd3bbc96ad8000bc3ea61cfbf68c6f
title: Generalist Agent (Beta) in Agentforce Operations
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/platform/264-0-0/automate_afsc_ai_agents_generalist.md
canonical_url: https://help.salesforce.com/s/articleView?id=platform.automate_afsc_ai_agents_generalist.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 8ce1d9572fd68e2c47ffb0dc8984a6fc6a7355260bfca7b6df56aa68b8ea5e3d
description: Use the Generalist Agent (beta) to automate a broad range of tasks in Agentforce Operations. Supported tasks include routing decisions, calculations, data source queries, table operations, and document processing.
products:
  - Cross Cloud
release: "264"
---
# Generalist Agent (Beta) in Agentforce Operations

Use the Generalist Agent (beta) to automate a broad range of tasks in Agentforce Operations. Supported tasks include routing decisions, calculations, data source queries, table operations, and document processing.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
      <colgroup>
        <col>
      </colgroup>
      <thead class="slds-text-title_caps ">
        <tr class="">
          <th scope="colgroup" class="slds-cell-wrap" colspan="1" style="text-align:left;vertical-align:top;" id="d30312e35">License Required</th>
        </tr>
      </thead>
      <tbody>
        <tr class="">
          <td data-label="License Required" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e35 ">
            <p>This feature is a workspace that’s external to your Salesforce org and requires
              an Agentforce Operations license. </p>
            <p style="margin-bottom:0;">To purchase an Agentforce Operations license, contact your Salesforce account
              executive.</p>
          </td>

        </tr>
      </tbody>
    </table>

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-agentforce_operations-264-0-0-production-enus/dce314e6-0a31-4a8b-98f7-3d2a3fd02ee2/images/icon_note.png)

Note This feature is a pilot or beta service that is subject to the Beta Services Terms at [Agreements - Salesforce.com](https://www.salesforce.com/company/legal/agreements/) or a written Unified Pilot Agreement if executed by Customer, and applicable terms in the [Product Terms Directory](https://ptd.salesforce.com/). Use of this pilot or beta service is at the Customer's sole discretion.

## When to Use the Generalist Agent

The Generalist Agent uses Python to complete tasks, which makes it more flexible and accurate for complex logic, large datasets, and multi-step operations. It covers the capabilities of the Flash, Regrello, Tabular, and Document agents.

For document extraction tasks, use the [Document Reader Agent](https://help.salesforce.com/s/articleView?id=platform.automate_afsc_ai_agents_document_reader.htm&release=264.0.0&type=5 "Understand the capabilities, inputs, and limitations of the Document Reader agent (Beta) in Agentforce Operations."). To process tabular data in CSV files by using Excel, use the [Excel Agent](https://help.salesforce.com/s/articleView?id=platform.automate_afsc_ai_agents_excel_tabular_data_tasks.htm&release=264.0.0&type=5 "In tabular-data tasks, the Excel Agent processes a CSV file from an upstream task and stores tabular results as a CSV file. It can also store individual values, such as a total or count, in single-value fields.").

## Capabilities

The Generalist Agent supports a broad range of capabilities across logic and reasoning, document processing, table operations, and calculations.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col>
          <col>
          <col>
          <col>
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d30312e121">Category</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d30312e124">Capability</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d30312e127">Description</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d30312e130">Example</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Category" class="slds-cell-wrap" rowspan="4" style="vertical-align:top;" headers="d30312e121 ">General logic and reasoning</td>

            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Logic-based routing</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Deterministically evaluate logic conditions.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">If an invoice total is more than $50,000, require the finance team to review it before
              paying.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Rule-based decision making</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Triage or route based on configured conditions.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Identify which team to route an email to: Support for product issues, Finance for
              invoices, or Legal for contracts.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Document classification</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Triage or route tasks by evaluating document or image files by using simple
              logic.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Classify the type of damage shown in an image of a package: water damage, shortage,
              physical damage, or no damage.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Task approval</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Approve tasks based on conditions in the task description.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Approve only if invoice price equals contract price.</td>

          </tr>
          <tr class="">
            <td data-label="Category" class="slds-cell-wrap" rowspan="5" style="vertical-align:top;" headers="d30312e121 ">Document analysis and generation</td>

            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Document summary</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Summarize one or more documents.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Summarize the intellectual property clause of the provided contract.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Word template-based document generation</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Generate a .docx file from a Word template by replacing text placeholders with task
              field values. Text placeholders in the .docx template use the format <code>{{ field_name
         }}</code>.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Generate a contract document from a template by using a customer's name, the
              contract's start date, and the contract's end date.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Word document comparison</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Compare two .docx files and produce a table of all differences, including
              comments.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">List all differences between the originally proposed contract and the latest proposal
              returned from a customer.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">PDF generation</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Generate a PDF by formatting task field values and documents into structured
              output.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Format a supplier form, scores, and scoring rationale into a report with a summary at
              the top.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">PDF page extraction</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Extract pages from a PDF into a new PDF based on criteria in the task
              description.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Extract all pages in a contract that contain intellectual property terms into a new
              PDF.</td>

          </tr>
          <tr class="">
            <td data-label="Category" class="slds-cell-wrap" rowspan="9" style="vertical-align:top;" headers="d30312e121 ">Table operations</td>

            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Table filtering</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Create a table containing only the rows from the original table that meet conditions
              stated in the task description.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Create a table containing all rows from a comprehensive parts list where the country
              of origin isn’t the USA.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Calculated column generation</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Copy an existing table into a new CSV file and add one or more columns with values
              calculated from existing row data.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Copy a purchase order table into a new CSV file and add a <code>Total</code>
              column that contains each row's <code>Quantity</code> multiplied by its
              <code>UnitPrice</code>.
            </td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Column total calculation</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Calculate the sum of values in a numeric column of an existing table. Store the result
              in a <strong class="uicontrol">Request information</strong> number or currency field.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Calculate the sum of the <code>Total</code> column in a line items table and store
              the result in the <code>Subtotal</code> currency field.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Table merging</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Merge two or more tables that each have a column with an identical header and
              compatible data types. Store the combined data as a new CSV file. Optionally, store rows
              without a match in a separate CSV file.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Join the Item List CSV and the Tariff Rates CSV by using the <code>hs_code</code>
              column. Store the combined data in Combined Data CSV. Store any unmatched rows from Item
              List CSV in Item Exceptions CSV.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Table comparison</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Compare two versions of a table that each have at least one column with an identical
              header and compatible data. Store rows where values differ in a new CSV file. Store rows
              that exist in only one version in the same or a separate CSV file.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Compare the Original Pricing CSV and the Updated Pricing CSV by using the
              <code>ItemNumber</code> column. Store rows where <code>ItemPrice</code> values
              differ, and rows from Updated Pricing CSV with no matching <code>ItemNumber</code> in
              Original Pricing CSV, in Pricing Differences CSV.
            </td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Data aggregation</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Group rows by a shared value. Store one summary row per group with calculated values
              in a new CSV file.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Group rows by <code>Category</code> and store the <code>TotalAmount</code> for
              each category in a new CSV file.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Data source SQL operations</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Query rows from a data source by using SQL operations and store the results in a new
              CSV file.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Find all suppliers where <code>Country</code> is USA and
              <code>NAICSCode</code> is 54151 and store the results in a new CSV file.
            </td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Data source natural language search</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Search a data source for rows that match the meaning of a phrase and store the results
              in a new CSV file.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Search Customer Claims / Incident Notes for claims related to shipment damage and
              store the results in Damage Claims CSV.</td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Table format conversion</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Convert an existing CSV or .xlsx file to the other format. You can also output tabular
              data generated during the task as a CSV or .xlsx file.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Store the updated Tariff Rate table as an .xlsx file in Tariff Rate XLSX.</td>

          </tr>
          <tr class="">
            <td data-label="Category" class="slds-cell-wrap" rowspan="3" style="vertical-align:top;" headers="d30312e121 ">Other</td>

            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Numeric calculations</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Perform calculations by using standard arithmetic operators: +, -, *, /. Use
              parentheses to control the order of operations.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Calculate the landed cost by using the formula: (<code>ProductCost</code> +
              <code>Freight</code> + <code>Duties</code> + <code>Insurance</code> +
              <code>HandlingFees</code>) * <code>TariffRate</code>.
            </td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Date calculations</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Find the number of days between two dates, or add or subtract days from a
              date.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Calculate the contract end date by adding 365 days to
              <code>ContractStartDate</code> and store the result in
              <code>ContractEndDate</code>.
            </td>

          </tr>
          <tr class="">
            <td data-label="Capability" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e124 ">Text operations</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e127 ">Perform text operations on field values. Operations include combining strings,
              extracting substrings, counting characters, and converting numbers or dates to text.</td>

            <td data-label="Example" class="slds-cell-wrap" style="vertical-align:top;" headers="d30312e130 ">Combine <code>SupplierName</code> and <code>ContractNumber</code> to create a
              document title in the format <code>SupplierName</code>
              _<code>ContractNumber</code>.</td>

          </tr>
        </tbody>
      </table>

## Limitations

- The maximum size for an individual document in an agent task is 500 MB.
- The maximum combined size of all documents in a single agent task is 1 GB.
- If the task documents exceed either limit, the agent task fails with an error message.