Skip to main content
An Agent Operating Procedure (AOP) is a reusable workflow with a prompt, inputs, and an agent configuration. Use an AOP when you repeat the same task with different inputs or want it to run after an event.

How to create an AOP, test it, and run it on a schedule

  1. Create an AOP
  2. Name it
  3. Write the prompt
  4. Run a test
  5. Add a schedule
  6. Set the day and time
  7. Check Runs

Market Analysis AOP Workflow

Each AOP contains intelligent prompts that guide AI behavior, dynamic parameters that adapt to different scenarios, tool integration for accessing Athena’s capabilities, and multiple execution modes based on your needs.

Configure inputs

AOP parameters define the inputs supplied for each run:

Variable Input

Simple text parameters for names, descriptions, and custom instructions
Example: [[company_name|type=text]]

File Selector

Select specific assets like documents, databases, or presentations
Example: [[documents|type=assetSelector|filterType=document]]

Text Options

Choose from predefined options for consistent results
Example: [[priority|type=textOptions|options=High,Medium,Low]]

AOP triggers

You can configure triggers to run your AOP on a schedule or after an event. Available triggers depend on your deployment and connected services.

Schedule trigger

Schedule your AOP to run automatically at specific times. You can configure the execution frequency (daily, weekly, or specific days of the week) and set the exact time for execution. The schedule respects your configured timezone.
AOP Schedule Trigger

Schedule Trigger Configuration

Email trigger

Configure email triggers to run your AOP when emails are sent to a specific address. Each AOP can have a custom email address in the format {custom-slug}@agent.athenaintel.com. You can optionally make the email trigger available to your entire workspace, allowing team members to trigger the AOP by sending emails to the configured address.
AOP Email Trigger

Email Trigger Configuration

Other triggers

In Triggers, choose the event you need:

Use the person who triggered a run

For email and SharePoint triggers, add [[ event.trigger_actor.email ]] or [[ event.trigger_actor.name ]] to your prompt. You can find them as Trigger actor email and Trigger actor name in Event variables.Email triggers use the sender. SharePoint triggers use the file’s creator for a new upload and its last modifier for a change to an existing file. The name can be empty when the source supplies only an email address. Use a fallback such as [[ event.trigger_actor.name | default=there ]] when your prompt needs a value.

Custom agent configuration

Configure AOPs with agent instructions, model selections, and tool access permissions. Customize how AOPs execute by selecting the appropriate AI model, defining the agent’s capabilities, and setting execution parameters to match your specific use case requirements.You can choose between using a pre-configured agent from your available agents or creating a custom agent configuration that overrides the default settings with custom tools, prompts, and model selections.
AOP Custom Agent Configuration

Custom Agent Configuration Panel

The configuration panel allows you to set the agent name, select the AI model (such as Claude 4.5 Sonnet), customize the system prompt, enable specific toolkits, and add additional tools as needed.
AOP Agent Configuration Override

AOP Agent Configuration Override

Spreadsheet Integration

AOPs can be executed directly on spreadsheet data, enabling automated data processing workflows. Use AOPs to analyze datasets, generate insights, create reports, or perform complex calculations on your Athena Sheets without manual intervention.
Learn how to use AOPs inside Athena Sheets here

User Interface Integration

Add AOPs to custom User Interfaces so users can run procedures from buttons or forms. Users can trigger AOPs through buttons, forms, or automated workflows within your custom dashboards, enabling self-service analytics and automated business processes.
Check out how to execute AOPs inside User Interfaces here

Configure output and follow-up runs

  1. In Advanced Options, open Structured Output Schema (optional). Add a JSON schema when another workflow needs a predictable response format. Leave it empty for a free-form response. The schema must be an object with at least one property; a Quick Example fills one in.
  2. In Notifications & Chaining, enable Notify on success or Notify on failure. Failure notices cover triggered executions. Notification Channels appear once a Notify toggle is on.
  3. Choose Email, Email the person who triggered the run, or Webhook. A webhook URL must use HTTPS. Trigger-person email requires an event that identifies the person.
  4. Under AOP Chaining, choose Chain on success or Chain on failure and select the next AOP. Fill its required inputs. Success chains can map top-level fields from the parent’s structured output. Failure chains use fixed input values. A chain runs at most three hops, and cycles are blocked.
Notification and chaining settings are saved per person. Other editors of the AOP keep their own.
A triggered run ends in success or failure. Each outcome can optionally notify by email, the triggering person or a webhook, and can optionally start a follow-up AOP; the two options are independent.

A triggered run can notify you and start different follow-up AOPs on success or failure.

How to configure structured output, notifications, and a chained AOP

  1. Open Structured Output Schema
  2. Apply a schema
  3. Name the output field
  4. Turn on Notify on success
  5. Turn on Email
  6. Chain an AOP on success
  7. Map a parent output field

Version control

AOPs include built-in version control that automatically saves your changes and allows you to run specific versions of your AOP.

Automatic versioning

Your edits autosave to one Latest version. Each autosave overwrites that version rather than preserving every edit as a separate version. Save a named version when you need to keep a configuration for later use.
Latest AOP version overwritten by autosaves while a separately saved named version remains available for a pinned run.

Autosave replaces Latest; separately saved versions preserve a configuration you can run again.

Run specific versions

You can execute a specific version of an AOP by using the versioned asset ID format. This is particularly useful when you want to ensure consistent execution or test changes before updating the main AOP.Versioned Asset ID Format: asset_<uuid>@<version_id>For example, if your AOP has the ID asset_abc123-def456-ghi789 and you want to run version btd48n, you would use:
Use Cases for Running Specific Versions:
  • Consistent Execution: Pin your automated workflows to a specific version to ensure consistent behavior even as you continue developing the AOP
  • Testing Changes: Test modifications to an AOP before updating the version used in production workflows
  • Rollback: Quickly revert to a previous version if a recent change causes issues
  • Audit Trail: Run the exact version of an AOP that was used at a specific point in time for compliance or debugging purposes

Execution modes

AOPs offer flexibility in how they’re executed:
  • API Mode: Direct execution with immediate results
  • Async API Mode: Background processing for long-running tasks
  • Chat Integration: Interactive execution with conversational feedback
  • SDK Integration: Programmatic execution via Python SDK

Good to know

You need edit permission to change an AOP or its triggers. Notifications and chaining are saved per user. Cycles are blocked, and a chain can run up to three hops. Meeting and video-session triggers wait for their transcript; ending the call alone is not enough.

FAQ

No. Retry starts a new run from the beginning with the same inputs. Check which external actions the failed run already completed before you retry.
No. Notifications and chaining are set per person. Each editor configures their own.
No. Autosave overwrites the Latest version. Save a named version when you want to keep a configuration you can run again.
No. Actions in other systems, such as sent email or updated records, stay done. Fix them in that system, and use review steps before actions you cannot reverse.