Procedures
Procedures are structured documents that encode repeatable company processes — expense reports, onboarding, content publishing, approvals — as executable state machines that your AI assistant can run.
The Idea
Every company has processes. "How do I submit an expense?" "What's the onboarding checklist?" "How do we evaluate a partnership?"
These processes usually live in someone's head, a stale wiki page, or a Slack thread that gets lost. Procedures turn them into structured documents that:
- Humans can read — They're markdown, stored in Notion
- AI can execute — The document IS the program
- Access is controlled — Only authorized people see run data, with automatic handoffs between steps
How It Works
There is no rigid workflow engine. The AI discovers available procedures from the tool description, fetches a summary (input requirements, step names — no execution details), collects input from the user, starts a tracked run, then executes steps one at a time using Gateway tools — posting in Slack, creating Linear issues, updating Notion. The AI only ever sees the current step's instructions, never the full document. In-flight run data lives in an internal database behind code-enforced access control, keeping your data private during execution. On completion, everything exports to a Notion database under the procedure page where admins can browse it.
Example
Here's what running an expense report looks like after a business trip:
You: "I need to expense my Denver conference trip — $2,400 total.
Flights were $680, hotel $1,200 for 3 nights, meals $320,
ground transport $200. Receipts are in the Drive folder I shared."
AI: [finds expense-report procedure in catalog]
[gets summary: needs expense, amount, category, receipt_url]
[starts tracked run, gets first step instructions]
[creates row in Expenses database: "travel: Denver conference trip — $2,400"]
[logs step, advances → amount > $1,000, routes to COO]
[posts approval request in #finance-approvals with receipt link]
[DMs you: "Expense logged: $2,400. Routing to COO for approval."]
[parks run — waiting for approval...]No spreadsheet. No tracking down who needs to approve what. The procedure knows that $2,400 requires COO sign-off, posts in the right channel, and follows up if nobody responds in 48 hours.
Key Concepts
| Concept | Description |
|---|---|
| Procedure | A markdown document defining a process as a state machine |
| Run | A single execution of a procedure (D1 during execution, exported to Notion on close) |
| Step | A named unit of work within a procedure |
| Transition | → next_step — how steps connect |
| Wait | Pause execution until a deadline or event |
| State | Data tracked during execution (D1 in-flight, Notion on export) |
| Access Control | Who can discover, invoke, and manage a procedure and its runs |
Getting Started
- Use existing procedures — Ask your AI:
"What procedures are available?"to see what's already set up - Author new ones — Follow the Authoring Guide to encode your processes
- See examples — Browse real procedure examples for patterns
Categories
Procedures are organized by category:
| Category | Covers |
|---|---|
| Finance | Expense reports, reimbursements, budget requests, invoice approval |
| People | Leave/PTO, onboarding, offboarding, role changes, performance reviews |
| Procurement | Software licenses, equipment, vendor onboarding, purchase orders |
| Access | Tool/repo access requests, permission grants, admin roles |
| Compliance | Policy acknowledgments, training, incident reports, audits |
| Operations | Reporting cycles, OKR check-ins, meeting prep, announcements |
| Custom | Team-specific or one-off procedures |