Skip to content

Processes

A process is a markdown file in a team’s processes/ directory. It’s the unit an orchestrating agent runs toward completion.

---
name: Prospect Outreach
owner: growth
participants: [researcher, copywriter]
trigger:
type: manual
definitionOfDone: >
A research brief on the prospect exists AND a drafted outreach email
grounded in that brief has been queued for sending (pending human
approval).
approvals: [send_email]
budget:
tokens: 300000
usd: 5
turns: 6
---
Run outbound prospecting for a single named prospect.
1. Dispatch the researcher to produce a concise brief on the prospect.
2. Dispatch the copywriter to draft an outreach email grounded in that brief.
3. Queue the email for sending — this requires human approval.
Field Notes
name Display name
owner The agent that orchestrates this process
participants Other agents this process may dispatch tasks to
trigger manual, or schedule (cron or adaptive) — see Processes & scheduling
definitionOfDone What “done” means — the orchestrator checks progress against this, in plain language
approvals Tool names this process is expected to hit ask policy for
budget { tokens?, usd?, turns? } — a ceiling for the whole process run

The markdown body is the brief — instructions for the owning agent on how to run this process.

Terminal window
ravel run prospect-outreach --input prospect="Acme Corp"
  • --input key=value — repeatable; passed into the process
  • --file <path> — repeatable; attaches a file
  • --dry-run — tools skip their real handlers
  • --sync — block for a y/N approval instead of an async proposal