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.