docs: restructure schedules IA (app-first), add Orchestration category

This commit is contained in:
Mohamed Boudra
2026-07-08 13:43:59 +02:00
parent 1a03171f0c
commit c72bcb49e5
7 changed files with 148 additions and 103 deletions
+20 -100
View File
@@ -1,114 +1,34 @@
---
title: Schedules
description: Run Paseo agents on intervals or cron.
nav: Schedules
order: 31
category: Automation
description: Run Paseo agents on a schedule — every few minutes or on a cron.
nav: Overview
order: 25
category: Schedules
---
# Schedules
Schedules let agents come back later.
Think of a schedule as a standing instruction: at this cadence, run this prompt, in this repo, with this agent target.
A schedule runs an agent for you on a cadence: at this interval or cron time, run this prompt, in this repo, with this agent.
The target can be:
- A new agent each time, useful for fresh daily jobs and long-running watchers.
- An existing agent, useful when you want continuity.
- The same agent that created the schedule, useful for heartbeats from inside an agent.
- A new agent each run — fresh daily jobs and long-running watchers.
- An existing agent — when you want continuity.
- The agent that created the schedule — heartbeats from inside an agent.
Schedules can use interval cadence, like every 30 minutes, or cron cadence, like every weekday morning. Runs are recorded, can be inspected later, and can be paused, resumed, triggered once, updated, or deleted.
Cadence is either an interval, like every 30 minutes, or a cron expression, like every weekday morning. Every run is recorded, and you can pause, resume, run once, update, or delete a schedule at any time.
## Uses
## What it's for
- **Overnight refactoring loops:** wake an agent every 30 minutes to continue a scoped refactor, run checks, and leave notes.
- **Heartbeats:** have the same agent periodically reassess state and keep moving.
- **Long build babysitting:** check CI, EAS, Docker, or release builds until they pass.
- **Daily GitHub triage:** scan issues, PRs, notifications, and flaky checks every morning.
- **Maintenance sweeps:** refresh dependencies, audit docs, clean stale branches, or summarize repo health.
- **Overnight refactors:** wake an agent every 30 minutes to continue a scoped refactor, run checks, and leave notes.
- **Heartbeats:** have an agent periodically reassess state and keep moving.
- **Build babysitting:** check CI, EAS, Docker, or release builds until they pass.
- **Daily triage:** scan issues, PRs, and failing checks every morning.
- **Maintenance sweeps:** refresh dependencies, audit docs, or clean stale branches.
## Setup Examples
## Ways to create one
Overnight refactor on Codex:
```bash
paseo schedule create \
--every 30m \
--name overnight-refactor \
--provider codex/gpt-5.5 \
--cwd ~/dev/my-app \
--max-runs 16 \
--expires-in 10h \
"Continue the refactor. Run the focused checks. Leave a short status note."
```
Long build babysitter on Claude:
```bash
paseo schedule create \
--every 5m \
--name build-watch \
--provider claude/opus-4.7 \
--cwd ~/dev/my-app \
--max-runs 24 \
"Check the release build. If it failed, inspect logs, fix the cause, and rerun."
```
Daily GitHub triage on GLM through OpenCode:
```bash
paseo schedule create \
--cron "0 14 * * 1-5" \
--timezone UTC \
--run-now \
--name github-triage \
--provider opencode/openrouter/glm-5.1 \
--cwd ~/dev/my-app \
"Triage GitHub issues, PRs, and failing checks. Summarize what needs attention."
```
Morning triage at 9 AM in New York, including daylight saving time changes:
```bash
paseo schedule create \
--cron "0 9 * * 1-5" \
--timezone America/New_York \
--name morning-triage \
--provider codex/gpt-5.5 \
--cwd ~/dev/my-app \
"Review overnight CI failures and summarize anything urgent."
```
Heartbeat the current agent:
```bash
paseo schedule create \
--every 20m \
--target self \
--name heartbeat \
"Check the current task state and continue with the next useful step."
```
## Managing Schedules
```bash
paseo schedule ls
paseo schedule inspect <id>
paseo schedule logs <id>
paseo schedule pause <id>
paseo schedule resume <id>
paseo schedule run-once <id>
paseo schedule update <id> --every 10m --max-runs 6
paseo schedule delete <id>
```
Use `--every <duration>` for intervals and `--cron "<expr>"` for 5-field cron. Cron schedules default to UTC. Pass `--timezone <IANA>` to interpret cron fields in a local wall-clock time zone, for example `--timezone America/New_York`. The persisted `nextRunAt` is still a UTC instant, but it is computed from that local time zone so recurring jobs stay at the same local time across daylight saving time changes.
Interval schedules run once immediately by default; pass `--no-run-now` to wait for the first interval. Cron schedules wait for the next matching time; pass `--run-now` to fire once immediately.
When targeting a remote daemon with `--host`, pass `--cwd`; your local working directory may not exist on the remote machine.
## MCP
Agents can create and manage schedules through [Paseo MCP](/docs/mcp).
- **In the app** — open the Schedules view and create one with an agent, a cadence, a repo, and a prompt. This is the main way to create and manage schedules.
- **[From chat](/docs/schedules-chat)** — ask the agent in a chat and it sets the schedule up for you.
- **[From the CLI](/docs/schedules-cli)** — `paseo schedule create`, for headless boxes and scripts.
- **[Over MCP](/docs/mcp)** — agents create and manage schedules programmatically.