Business automation, the bounded way — a use-case catalog

Fourteen working patterns for putting an AI agent on real business work: phones, leads, tickets, invoices, incidents, contracts, hiring, orders, audits, inboxes, and ledgers. Each is a short article for a general audience plus a validated sample workflow you can read in one sitting and run with your own keys.

They all share one architecture, and it's the reason any of them is deployable: the model contributes judgment inside a single bounded step; everything that acts — routes, sends, executes, pays — is a declared graph under a fail-closed policy. The AI can be wrong; what it can do about it is enumerated before anything runs. Human sign-off is a durable checkpoint where it belongs, not a hope.

The catalog

Use caseTriggerThe pattern in one lineStatus
AI voice receptionistTwilio webhookspeech → intent → declared routing → native TwiML reply; the caller can't talk the graph into anythingRuns today, end to end (v1.2.0: respond + form bodies + basic auth)
Lead deep-researchCRM webhookbounded agent_loop investigates allowlisted sources → brief lands in CRMRuns today
Support triageHelpdesk webhookclassify + draft → confidence gate → send or human reviewRuns today
Invoice approvalWatched folderschema'd extraction → threshold gate → book or controller sign-offRuns today
Executive digestCron 07:00metrics → narrative → Slack + dated archive; zero inbound surfaceRuns today
Churn early-warningCron weeklyscore → structural diff vs last week → alert only on movementRuns today
Content localizationWatched folderparallel fan-out per locale → all-or-nothing join → editor's vetoRuns today
Incident copilotAlert webhookread → hypothesize → post → human resume → one argv-pinned mitigationRuns today
Contract reviewWatched folderplaybook clause extraction → deviations pause for counselRuns today
Resume screeningATS webhookrubric scoring; advances flow, every decline needs a humanRuns today
Order fraud reviewOrder webhookthree risk lanes: fulfill / queue / hold; "why" attached to eachRuns today; idempotency gap named
Compliance evidenceCron monthlypinned posture check → control mapping → signed-process evidence bundleRuns today
Inbox conciergeEmail webhookcategory + confidence gates → send / pause / drop spam silentlyRuns today; multipart gap named
Data reconciliationCron nightlydeclared SQL via MCP → structural diff → LLM explains drift onlyRuns today

"Runs today" means: the sample validates against the real binary in CI, and executes on a build with the listed Cargo features — most need intel-remote (hosted models), schema (enforced outputs), and tools-http-tls (HTTPS to SaaS APIs, new in v1.1.0). Where a use case hits a genuine runtime gap, the article says so and links the gap analysis — which is the honest map of what's missing and what we propose to do about it.

How to read these

Each article runs the same arc:

  1. The problem — why this work is painful and why naive automation (scripted or AI-freeform) fails at it.
  2. What the agent does — the steps, concretely.
  3. Why you can trust it — the part that's usually hand-waved: which structural property (policy allowlist, schema enforcement, durable human gate, declared argv, budget) forecloses which failure.
  4. Honest limits — what this doesn't do, and whether that's a gap (linked) or a design choice (defended).

Run one in five minutes

# Build with the capability set the catalog uses
cargo build --release -p agentd \
  --features "intel-remote,schema,tools-http-tls,trigger-cron,trigger-fs-watch"

# Validate any sample (no keys needed)
agentd --config examples/use-cases/support-triage.toml --validate-only

# Walk a graph with every side effect stubbed
agentd --config examples/use-cases/churn-monitor.toml --mode once \
       --start weekly --dry-run

# Run for real: export your keys, then
ANTHROPIC_API_KEY=… agentd --config examples/use-cases/exec-digest.toml

New to agentd entirely? Start with the quickstart, then come back and pick the use case that hurts most.