Claude Code Routines vs Managed Agents Schedules: Where Recurring Agent Work Should Live

TL;DR
Claude Code Routines vs Managed Agents scheduled deployments: how triggers, pricing and limits differ, and where your recurring agent work should run.
Last updated: June 11, 2026
Anthropic now ships two first-party ways to run agents on a schedule, and they live in completely different parts of the product. Claude Code Routines attach a saved prompt, repos, and connectors to schedule, API, or GitHub triggers and bill against your claude.ai subscription. Managed Agents scheduled deployments attach a cron expression and timezone to an API-defined agent and bill per token plus $0.08 per session-hour.
Both answer the question we covered for OpenAI's stack in Codex Automations for recurring engineering work: where should the nightly triage job, the weekly docs sweep, and the post-deploy check actually run? The answer comes down to identity, billing, and how much plumbing you want to own.
What Claude Code Routines Give You#
A routine is a saved Claude Code configuration: a prompt, one or more GitHub repositories, and a set of MCP connectors, packaged once and run automatically on Anthropic-managed cloud infrastructure. You create and manage them at claude.ai/code/routines, from the Desktop app, or conversationally in the CLI with /schedule. Routines are in research preview and available on Pro, Max, Team, and Enterprise plans with Claude Code on the web enabled, per the official routines documentation.
Each routine can combine three trigger types:
- Scheduled: hourly, daily, weekdays, weekly, or a one-off run at a future time. Times are entered in your local zone and converted automatically. Custom cron expressions work via
/schedule update, with a minimum interval of one hour - anything more frequent is rejected. - API: a per-routine
/fireHTTP endpoint with a bearer token, shipped under theexperimental-cc-routine-2026-04-01beta header. The body accepts an optional freeformtextfield, so an alerting tool can pass a stack trace straight into the run. - GitHub: pull request and release events, with filters on author, title, body, branches, labels, draft state, and merge state, including regex matching.
Runs are full autonomous cloud sessions: no permission prompts mid-run, repos cloned from the default branch, pushes restricted to claude/-prefixed branches unless you opt out per repository. The documented sweet spots look a lot like the patterns in Boris Cherny's agent routines write-up: nightly backlog grooming, alert triage that opens a draft PR, code review checklists, deploy verification, docs drift detection.
Two constraints matter. Routines belong to your individual claude.ai account, and everything they do appears as you: commits carry your GitHub user, Slack and Linear actions use your linked accounts. And there is a per-account daily cap on runs during the research preview, with GitHub webhook events under additional hourly caps.
OpenAI now has a comparable event layer: ChatGPT Work tasks can start from Gmail, Slack or GitHub pull request activity, or from any plugin whose MCP server ships MCP events. We compare the two trigger models in ChatGPT MCP events and event-triggered tasks.
What Managed Agents Scheduled Deployments Give You#
Claude Managed Agents is Anthropic's hosted agent harness on the API side: you define an agent (model, system prompt, tools, MCP servers, skills) and an environment (Anthropic cloud sandbox or self-hosted), and sessions run inside it, per the Managed Agents overview. All endpoints require the managed-agents-2026-04-01 beta header. We dug into the product in our Managed Agents honest review; scheduled deployments are the piece that makes it a scheduler.
A scheduled deployment pairs an agent, an environment, and an initial user.message event with a schedule object containing a standard POSIX cron expression and an IANA timezone:
"schedule": {
"type": "cron",
"expression": "0 20 * * 5",
"timezone": "America/New_York"
}
Each time the schedule fires, the agent starts a fresh session and completes its task - no scheduler for you to build or host, as Anthropic put it in the June 9, 2026 announcement. The details are unusually well specified for a beta, based on the scheduled deployments documentation:
- Minute-level granularity, with the response echoing
upcoming_runs_attimestamps so you can confirm the schedule parsed correctly. Jitter of up to 10 seconds may apply. - DST uses literal wall-clock matching: a 2 AM job is skipped on spring-forward day and fires twice on fall-back day. The docs say to schedule outside the 1-3 AM window or use UTC if that matters.
- Every firing creates a deployment run record, success or failure, with typed errors like
session_rate_limited_errorandagent_archived_error, filterable viahas_error=true. - Lifecycle is explicit: pause suppresses future triggers while still allowing manual runs, unpause resumes without backfilling missed firings, and archive is terminal. A
runendpoint triggers an out-of-schedule session for testing. - Up to 1,000 scheduled deployments per organization.
The same announcement added environment-variable vaults: you register an API key with a variable name and the domains it can reach, the sandbox only holds a placeholder, and the real key is attached at the network boundary. That is how a scheduled agent authenticates CLIs like Notion or Sentry without the credential ever entering the model's context.
Head-to-Head: Routines vs Scheduled Deployments#
| Claude Code Routines | Managed Agents scheduled deployments | |
|---|---|---|
| Where it lives | claude.ai account (web, Desktop, /schedule CLI) | Claude Platform API (SDK, curl, ant CLI) |
| Status | Research preview | Public beta (managed-agents-2026-04-01 header) |
| Trigger types | Schedule, API endpoint, GitHub events | Cron schedule plus manual run endpoint |
| Schedule granularity | Presets; custom cron with 1-hour minimum interval | Standard POSIX cron, down to the minute |
| Timezone handling | Local wall-clock, auto-converted | Explicit IANA timezone field, documented DST semantics |
| Identity | Acts as you (your GitHub user, your connectors) | Acts as a service (API key, vault credentials) |
| Billing | Subscription usage plus daily run cap | Tokens at standard rates plus $0.08 per session-hour |
| Run records | Session list, green/red status | Typed deployment run records with error filtering |
| Scale ceiling | Per-account daily cap (varies by plan) | 1,000 deployments per org, rate limits per session |
| Mid-run steering | None (fully autonomous runs) | Send events to steer or interrupt a session |
| Compliance | Subscription data handling | Not currently eligible for ZDR or HIPAA BAA |
Pricing: Subscription Quota vs Metered Billing#
The billing models are the real fork in the road.
Routines have no separate price. They draw down your Pro, Max, Team, or Enterprise subscription usage like interactive sessions, plus a daily cap on how many runs can start per account (verified June 11, 2026, at the routines docs). One-off runs are exempt from the daily cap but still consume subscription usage. Past a limit, organizations with usage credits enabled spill into metered overage; otherwise runs are rejected until the window resets.
Managed Agents bills on two dimensions, per the official pricing page, all numbers verified June 11, 2026:
- Tokens at standard model rates - for example Opus 4.8 at $5 per million input and $25 per million output, with prompt caching multipliers applying identically.
- Session runtime at $0.08 per session-hour, measured to the millisecond and accrued only while the session status is
running. Idle, rescheduling, and terminated time is free, and session runtime replaces code execution container-hour billing entirely.
Anthropic's worked example on that page: a one-hour Opus 4.8 session consuming 50,000 input and 15,000 output tokens costs $0.705 total, of which runtime is $0.08 (verified June 11, 2026). A nightly job at that shape runs around $21 a month - predictable, itemized, and on the company card rather than your personal Max plan.
The honest framing: routines are effectively free if your subscription has headroom, and effectively capped if it does not. Managed Agents costs real money per run but never collides with your interactive quota - the same tension we hit in the overnight agents workflow.
Decision Guide by Persona#
Solo developer on Pro or Max. Use routines. You already pay for the subscription, /schedule daily PR review at 9am is the entire setup, and acting as your own GitHub identity is a feature, not a bug. Watch the daily run cap, and remember a green run status only means the infrastructure worked, not that the task succeeded.
Team lead automating team chores. Routines, with caveats. They are per-account, not shared, so the nightly triage routine lives on one person's account and posts as that person. If that ownership model bothers you, or an admin has disabled the org-level Routines toggle, you are looking at Managed Agents or CI instead.
Platform or product engineer. Managed Agents scheduled deployments. Typed failure records, pause and unpause semantics, explicit timezones, vault-scoped credentials, and a worked-out answer for archived resources (an archived agent auto-archives the deployment; an archived subagent records an agent_archived_error run and auto-pauses it so you can fix and resume). This is scheduling designed to be operated, not just used.
Anyone building a product on top of agents. Managed Agents, full stop. Routines' /fire endpoint is claude.ai-only and not part of the Claude Platform API surface. The Managed Agents harness is the supported substrate, and per Anthropic's engineering post, decoupling the model from sandboxes dropped p50 time-to-first-token roughly 60 percent and p95 over 90 percent.
Compliance-sensitive teams. Pause before either. Managed Agents is stateful by design and not currently eligible for Zero Data Retention or HIPAA BAA coverage, per the overview docs. Routines run in the cloud under your personal account with no mid-run approvals. Self-hosted sandboxes for Managed Agents are the most promising path here.
When to Skip Both#
Some recurring work should not move to either system yet:
- Anything that needs local state. Routines run cloud-only: no local files, no local env vars, nothing behind your firewall beyond the environment allowlist. If the job needs your laptop, a local loop like the patterns in Claude Code loops or Desktop scheduled tasks is still the right tool.
- Sub-hourly cadences on a subscription. Routines reject cron expressions more frequent than one hour. Managed Agents goes to the minute, but at that point check whether a plain cron job calling the Messages API is cheaper than a full agent session.
- Jobs already living happily in CI. A GitHub Actions workflow with caching, secrets, and team-owned identity is mature infrastructure. Migrate for a reason (connectors, persistent sandboxes, mid-run steering), not for novelty.
- Anything that cannot silently half-succeed. Both products run autonomously. Routines explicitly warn that a green status does not mean the task succeeded; Managed Agents gives you typed records you still have to read. Budget review time or do not schedule it.
One more reason to stay put: both surfaces are pre-GA. Routines is a research preview whose limits may change; Managed Agents breaking changes ship behind new dated beta headers. That is not a reason to avoid them - it is a reason to keep the prompt and config in version control so you can re-create the job anywhere.
FAQ#
What is the difference between Claude Code Routines and Managed Agents scheduled deployments?#
Routines are subscription-side: saved Claude Code configurations (prompt, repos, connectors) that run on schedule, API, or GitHub triggers under your claude.ai account. Managed Agents scheduled deployments are API-side: a cron expression plus IANA timezone attached to an API-defined agent, billed per token plus $0.08 per session-hour. Routines act as you; deployments act as a service.
How much do Claude Code Routines cost?#
There is no separate price. Routines draw down your Pro, Max, Team, or Enterprise subscription usage like any interactive session, subject to a per-account daily run cap during the research preview (verified June 11, 2026). Organizations with usage credits enabled can continue past limits on metered overage.
Can Claude Code Routines run more often than once an hour?#
No. The minimum schedule interval is one hour, and custom cron expressions that fire more frequently are rejected. Managed Agents scheduled deployments support minute-level cron granularity if you need tighter cadences.
Does the $0.08 per session-hour charge apply while a Managed Agents session is idle?#
No. Runtime accrues only while the session status is running, measured to the millisecond. Idle, rescheduling, and terminated time is not billed, and session runtime replaces the separate code execution container-hour charge (verified June 11, 2026, on the Claude pricing page).
Which should I use for a nightly issue-triage agent?#
An individual on a Claude subscription whose work flows through their own GitHub and Slack identity should use a routine - it is the fastest path. Team infrastructure that needs service credentials, typed failure records, and company billing belongs in a Managed Agents scheduled deployment.
Sources#
- Automate work with routines - Claude Code docs: https://code.claude.com/docs/en/web-scheduled-tasks (accessed June 11, 2026)
- Scheduled deployments - Claude Platform docs: https://platform.claude.com/docs/en/managed-agents/scheduled-deployments (accessed June 11, 2026)
- Claude Managed Agents overview - Claude Platform docs: https://platform.claude.com/docs/en/managed-agents/overview (accessed June 11, 2026)
- Pricing - Claude Platform docs: https://platform.claude.com/docs/en/about-claude/pricing (accessed June 11, 2026)
- New in Claude Managed Agents: schedules and vaults - Claude blog: https://claude.com/blog/whats-new-in-claude-managed-agents (accessed June 11, 2026)
- Scaling Managed Agents: decoupling the brain from the hands - Anthropic Engineering: https://www.anthropic.com/engineering/managed-agents (accessed June 11, 2026)
- Claude Code Routines: A Practical Guide - Nimbalyst: https://nimbalyst.com/blog/claude-code-routines-practical-guide/ (accessed June 11, 2026)
Continue Reading#
- Claude Code - plans, install routes, and alternatives on one page
- Best AI Agent Frameworks (2026) - other ways to run recurring agent work
Get the next comparison like this in your inbox
One email a week on claude-code and the rest of the AI dev stack. Free.
Read next on Claude Code
Subagents vs Agent Teams vs Workflows: Claude Code's Parallelism Primitives, Compared
Claude Code subagents vs agent teams vs workflows: who holds the plan, the hard limits from the docs, and which parallelism primitive fits your task.
9 min readCodex vs Claude Code in 2026: Which AI Coding Agent Should You Use?
Codex vs Claude Code in 2026: pick Claude Code for ambiguous multi-file work with skills and MCP, or Codex for well-scoped tasks and strong defaults.
12 min readpi vs Claude Code vs OpenCode: Picking Your Agentic CLI
pi vs Claude Code vs OpenCode vs Codex CLI: a verified capability matrix and pick-X-if verdicts for choosing your main agentic coding harness.
10 min readTechnical content at the intersection of AI and development. Building with AI agents, Claude Code, and modern dev tools - then showing you exactly how it works.








