> ## Documentation Index
>
> Fetch the complete documentation index at: https://lithi.ai/llms.txt
>
> Use this file to discover all available pages before exploring further.

---
title: Run work without a person present
description: >-
  Work that starts without you still needs a bounded identity, current policy and a fresh
  quote. A schedule is your intent, never a promise about capacity.
route: /docs/compute/automation
page_id: docs-compute-automation
page_type: hubIndex
content_layer: guided documentation
surface_profile: guided_docs
audience: Teams moving a proven workflow from manual runs to unattended runs
voice: D
reader_question: How does Compute start my work when nobody is there to approve it?
primary_action: Create your first schedule
source_locale: en-US
source_status: APPROVED
source_version: docs-compute-automation-en-us-2026-09-05-v1
last_updated: '2026-09-05'
robots: index
claim_registry_pinned: true
claim_registry_resync: "npm run governed:tsx -- scripts/build-compute-public-claim-registry.ts --write"
---

## What a schedule does and does not say

A schedule says when you intend work to start. It is a statement about your business, not about what Compute can serve at that moment.

Availability is decided separately, at admission, every single time. So an occurrence can be due and still be refused, and that refusal names its own reason and next action.

Keep the two ideas apart when you design an automation. Ask for the time you actually need, and plan for an occurrence that does not run.

## What every occurrence needs

Automation removes the person, not the checks. Each occurrence carries three things of its own.

- A bounded identity. Automation runs on its own scoped key, never a person's session.
- Current policy. Spend ceilings, approvals and profile values are read fresh at the occurrence, never remembered from setup.
- A fresh quote. Prices and limits are re-established for that run, so a stale estimate cannot admit work.

You approve the bound once, at activation. You do not approve each occurrence individually, which is exactly why the bound has to be one you would accept unattended.

## Pages in this group

- [Create a schedule](/docs/compute/automation/schedules) — time zone, daylight saving, overlap, misfire, catch-up and a maximum-runs bound.
- [Start work from an event](/docs/compute/automation/event-triggers) — provenance, a frozen snapshot and one occurrence identity.
- [Occurrences and replay](/docs/compute/automation/occurrences-and-replay) — what stays the same on a replay, and what makes new work.
- [Trigger from your own scheduler](/docs/compute/automation/customer-schedulers) — external orchestrators as clients, not authorities.
- [Receive webhooks safely](/docs/compute/automation/webhooks) — verify on raw bytes, then fetch canonical state.
- [Pause, revoke and recover](/docs/compute/automation/pause-revoke-and-recover) — stopping new work without breaking work in flight.
