Protocol Overview

Agent protocols define how an AI agent behaves. They're written in YAML and specify inputs, triggers, tools, and execution handlers.

Why Protocols?

Protocols provide:

  • Declarative definition — Define behavior, not implementation
  • Portable agents — Move agents between projects
  • Versioning — Track changes with git
  • Validation — Catch errors before runtime
  • Visualization — Debug execution flows

Agent Formats

Octavus supports two agent formats:

FormatUse CaseStructure
interactiveChat and multi-turn dialoguetriggers + handlers + agent
workerBackground tasks and pipelinessteps + output

Interactive agents handle conversations — they respond to triggers (like user messages) and maintain session state across interactions.

Worker agents execute tasks — they run steps sequentially and return an output value. Workers can be called independently or composed into interactive agents.

See Workers for the worker protocol reference.

Interactive Protocol Structure

yaml

File Structure

Each agent is a folder with:

text

settings.json

json
FieldRequiredDescription
slugYesURL-safe identifier (lowercase, digits, dashes)
nameYesHuman-readable name
descriptionNoBrief description
formatYesinteractive (chat) or worker (background)

Naming Conventions

  • Slugs: lowercase-with-dashes
  • Variables: UPPERCASE_SNAKE_CASE
  • Prompts: lowercase-with-dashes.md
  • Tools: lowercase-with-dashes
  • Triggers: lowercase-with-dashes

Variables in Prompts

Reference variables with {{VARIABLE_NAME}}:

markdown

Variables are replaced with their values at runtime. If a variable is not provided, it's replaced with an empty string.

Next Steps