Skip to main content

Procedures Format

Procedures are YAML-based standard operating procedures (SOPs) that give agents step-by-step instructions for recurring tasks. They are stored as .proc files (mandatory extension) using UTF-8 encoding, and invoked by agents via the invoke_procedure tool.

File Location

procedures/
{agentName}/ # Agent-specific procedures
qualify-lead.proc
follow-up-sequence.proc
shared/ # Shared across all agents in the project
daily-standup.proc
weekly-report.proc
  • Agent-specific: procedures/{agentName}/ -- only available to the named agent.
  • Shared: procedures/shared/ -- available to all agents in the project.

Schema

name: qualify-lead
description: Qualify an inbound lead based on ICP criteria
inputs:
- name: lead_name
type: string
description: Full name of the lead
- name: company
type: string
description: Company name
outputs:
- name: qualified
type: boolean
description: Whether the lead meets ICP criteria
- name: score
type: number
description: Lead score (0-100)
tools_used:
- web_search
- create_task
steps:
- title: Research the company
details: Use web search to gather company info including size, industry, funding, and recent news.
- title: Check ICP criteria
details: Compare the gathered information against the ideal customer profile. Check for company size (50-500 employees), target industry, and budget signals.
- title: Score and record
details: Assign a lead score from 0-100 based on ICP fit. Create a follow-up task if the score is above 60.

Field Reference

FieldTypeRequiredDescription
namestringYesUnique identifier for the procedure (kebab-case)
descriptionstringYesHuman-readable summary of what the procedure does
inputslistNoExpected input parameters
outputslistNoExpected output values
tools_usedlistNoTools the procedure relies on (informational only -- not validated at runtime; the agent can use any available tool regardless of this list)
stepslistYesOrdered list of steps to follow

Input / Output Fields

FieldTypeRequiredDescription
namestringYesParameter name
typestringYesData type (string, number, boolean, object, array)
descriptionstringYesWhat this parameter represents

Step Fields

FieldTypeRequiredDescription
titlestringYesShort name for the step
detailsstringYesFull instructions for the agent to follow

How Procedures Are Invoked

Agents call procedures via the invoke_procedure tool:

invoke_procedure(name="qualify-lead", inputs={"lead_name": "Jane Smith", "company": "Acme Corp"})

The agent receives the procedure definition and follows the steps using its reasoning loop. Procedures are guidance, not rigid automation -- the agent uses judgment to adapt steps to the situation.

Managing Procedures

You can manage procedures in two ways:

  1. UI: Navigate to Agent Profile > Procedures tab to create, edit, or delete procedures.
  2. GraphQL API: Use the procedures mutations for programmatic management.
tip

Start with the procedures included in your agent's template, then customize them as you learn what works for your workflow.