Skip to main content
Three scenarios showing how the primitives compose into real jobs, using what the platform does today (coming-soon pieces marked).

Nightly repo triage

A scheduled agent that wakes at 9:00 UTC, works, publishes a report, and sleeps. A deployment fires a fresh session on a cron tick; its computer clones the repo, runs the tests, and summarizes overnight changes into org-scoped Files.
Between fires, nothing is running — idle bills as storage. Each fire gets a fresh per-run budget; a run that would exceed the cap goes idle with stop_reason: "budget_paused", still reporting what it completed. The on_idle webhook pushes the result to you, and the published report stays in Files long after the fire.

A long report job on the cheap lane

A data-crunching run that takes hours and nobody is watching. An agent that delivers at nine has no reason to pay the immediate tariff — create the session with --window loose: same model, lowest price.
The event stream is keyed by sequence number, so it survives you: close your laptop, come back hours later, resume with --after-seq — no gaps, no duplicates. The durable runtime never depended on your connection anyway: wake, turn, commit, sleep. Send follow-up turns with vetta session send; the finished report lands in Files as a durable artifact.

An always-reachable ops agent

An agent that costs storage while it waits, and acts when the world calls. An ops agent holds an identity — ops@acme.com and a phone number. A customer emails ops@acme.com; the mail passes SPF/DKIM/DMARC, is stored on the identity’s message feed, and wakes the agent that owns the inbox. The agent reads it, checks the runbook skill, acts through its connections under policy, and answers with email.send from that inbox once you approve (or its policy allows it) — then sleeps at storage cost until the next call. A text to the number wakes the agent the same way, but it cannot answer one: no agent tool sends a text yet.
The wake is automatic and guarded against floods and reply loops (Inbound events); outbound webhooks (session.idle, message.completed, budget.exceeded) are live for pushing results back to your systems.

Next: quickstart

Create an agent, run it, and read the meter in under five minutes.