Claude routines: Claude Code's scheduled tasks, setup and limits

Claude Code routines, now called scheduled tasks: run a prompt on your repos on a schedule, a GitHub event or an API call, with connectors, limits and /loop.

Updated

Short answer

A routine is a saved Claude Code prompt that runs on its own in Anthropic's cloud, on a schedule, when something happens on GitHub, or when you call its URL. In late October 2026 Anthropic renamed routines to scheduled tasks. Create one with /schedule in the CLI, under Scheduled in the desktop app's Code tab, or at claude.ai/code/routines. It needs a Pro, Max, Ultra, Team or Enterprise plan and a claude.ai login, and runs count against your plan's usage. For a prompt that repeats inside the session you have open, use /loop.

Routines are now scheduled tasks

Claude Code's docs now call them scheduled tasks, "formerly routines" (Claude Code docs). The old name stays in a few places: the claude.ai/code/routines address, the /routines command, which still works, the /fire API, and the admin setting "Scheduled tasks (Was Routines)". This page says routines for the cloud ones, to keep them apart from the two other ways to schedule:

Routines (cloud scheduled tasks) Desktop scheduled tasks /loop
Runs on Anthropic's cloud, with a fresh clone of your repos Your computer, in the Claude desktop app Your open Claude Code session
Computer asleep Runs anyway Skipped; one catch-up run when it wakes Doesn't run
Starts on A schedule, a GitHub event or an API call A schedule An interval
Reaches Repos, claude.ai connectors Your local files, tools and MCP servers Whatever the session can
Lasts Until you turn it off Until you turn it off 7 days at most

Create a routine

All three ways save to the same account:

  • CLI: run /schedule with what and when, such as /schedule daily PR review at 9am or /schedule in 2 weeks, remove the old feature flag.
  • Desktop app: open the Code tab, then Scheduled.
  • Web: go to claude.ai/code/routines, where the Templates tab has examples.

A routine holds a prompt, one or more repositories, the connectors it may use, a cloud environment, and a model and effort level. Write the prompt as instructions for a run nobody watches: what to check, what to change, where to report.

Triggers

Trigger How it works
Schedule Hourly, daily or weekly, a custom cron (at most hourly; UTC unless you set CRON_TZ=), or once at a set time. New schedules start a few minutes past the hour, since runs on the hour can start late
GitHub A pull request, release or issue event, with filters for pull requests. Needs the Claude GitHub App
API A POST to the routine's /fire URL with its own bearer token. An optional text field, up to 65,536 characters, reaches the run as untrusted input. Set up on the web only

Plans and limits

Routines come with Pro, Max, Ultra, Team and Enterprise, and need a claude.ai login. With an API key, Amazon Bedrock or Google Vertex, /schedule doesn't appear. Team and Enterprise owners can turn routines off.

Runs count against your subscription like interactive sessions. Instead of the daily run caps from launch, Anthropic now sets hourly ones (Claude Code docs):

Limit Per hour
Scheduled runs, per account 100
Runs of one routine (Run now, API calls and one-off runs together) 30
Run now, per account 100
API calls, per account 100

Extra usage lets runs continue past your plan's limit. Each run gets about 4 CPUs, 16 GB of memory and 30 GB of disk (cloud environments).

Connectors and MCP servers in routines

A routine can use the connectors on your claude.ai account, including custom ones you added at claude.ai/customize/connectors. All of them are included by default, with their write tools; remove the ones a routine doesn't need. Calls go through Anthropic, and anything a routine does shows up as you: commits, Slack posts and emails come from your accounts.

Servers you added with claude mcp add stay on your computer and don't reach routines. To use one, add it at claude.ai as a custom connector. A .mcp.json committed to the repo also loads, but a server there that needs an interactive sign-in can't complete it in an unattended run.

For API keys a run needs, use the environment's network secrets, which a proxy adds to requests so Claude never sees the value. Plain environment variables are visible to anyone who uses the environment.

What a routine may do on its own

Runs start in auto mode, where a classifier blocks risky actions. A run pauses for you when it hits an ask rule, or after 3 blocked actions in a row or 20 in total; open the run to answer it. The routine's prompt can't approve anything on your behalf. If your organization set a connector tool to ask, it asks in routines too (MCP docs).

Desktop scheduled tasks

The desktop app's local tasks run on your computer with your files, tools and local MCP servers (desktop docs):

  • They run only while the app is open and the computer is awake. On waking, the app runs one catch-up for the latest missed run in the past 7 days.
  • Keep computer awake in settings helps, but closing the lid still sleeps it.
  • Each task has its own permission mode. In Manual, a run waits until you approve; Always allow saves an approval for later runs.
  • The prompt lives in ~/.claude/scheduled-tasks/<name>/SKILL.md.

/loop

/loop repeats a prompt or skill inside the session you have open (scheduled tasks docs):

/loop 5m check whether the deploy finished and tell me
  • With an interval, such as 10m, 2h or 1d, it runs on that schedule. Without one, Claude picks the pace, from a minute to an hour.
  • A bare /loop runs a built-in maintenance prompt, or .claude/loop.md if your repo has one.
  • It runs only while Claude Code is open and idle, and doesn't catch up on missed runs. A session holds up to 50 loops, and repeating ones end after 7 days.
  • Press Esc to stop a self-paced loop; ask Claude to cancel one with an interval. CLAUDE_CODE_DISABLE_CRON=1 turns loops off.

Ideas for routines

  • Morning triage: "Every weekday at 8, read new Sentry issues, open a draft PR for any with an obvious fix, and post the list to #eng."
  • PR review: on every pull request opened, "Review for security and missing tests; comment on the PR."
  • Dependency upkeep: "Every Monday, update minor dependency versions, run the tests, and open a PR if they pass."
  • Release notes: on every GitHub release, "Write customer-facing release notes from the merged PRs and post them to #releases."
  • From your own tools: call the /fire URL from an alert with the alert text, and have the routine investigate and report.

Why a routine didn't run

/schedule doesn't exist

You're logged in with an API key, Bedrock or Vertex, or your organization turned routines off. Log in with your claude.ai account.

A scheduled run didn't start

The routine's page shows a banner with the reason. If its GitHub connection is gone, runs are skipped for up to 72 hours, then the routine turns off; reconnect GitHub and turn it back on.

A run is paused

The classifier blocked actions, or a tool needed an approval. Open the run, answer it, and adjust the prompt or the connectors so the next run doesn't need you.

A connector is missing in the run

It was added with claude mcp add. Add it at claude.ai/customize/connectors instead.

The run says Succeeded, but the work failed

A run reports Succeeded when it finishes, not when the task worked. Read the transcript, and have the prompt report failures where you'll see them.

With Upsy

To give routines your Gmail, Google Calendar, Slack and other apps, add Upsy at claude.ai as a custom connector, not only with claude mcp add. Every routine can then use it:

  • Several accounts: up to five Gmail accounts and five Slack workspaces in one connector.
  • Read-only that holds: a routine runs in auto mode with no one watching. With Read-only access in Upsy, no run can send or delete, whatever the classifier decides.
  • History and alerts: every email and message a routine reads or sends is logged in Upsy, and Upsy emails you if one assistant sends 20 or more messages in 10 minutes.

A claude.ai connector shows up in Upsy as Claude, with Claude's access, so routines share it with Claude's chats and scheduled tasks. Your local sessions use the access you gave Claude Code.

FAQ

Are Claude routines and scheduled tasks the same thing?

Yes. In late October 2026, Anthropic renamed Claude Code's routines to scheduled tasks. The old URL and the /routines command still work.

How much do Claude Code routines cost?

Nothing extra. Runs come out of your Pro, Max, Ultra, Team or Enterprise usage, like any session, with extra usage past the limit.

How often can a routine run?

At most hourly on a schedule. A single routine can run up to 30 times an hour, counting Run now and API calls.

Do routines run when my computer is off?

Yes. Routines run in Anthropic's cloud. Desktop scheduled tasks and /loop need your computer awake and the app open.

Can routines use MCP servers?

Yes: the connectors on your claude.ai account, including custom ones, and servers in a repo's .mcp.json. Servers added only with claude mcp add aren't available.

Playbooks for these apps

Related guides