AI Catchup

Scheduled AI Coding Agents in 2026: Claude Code Routines vs Cursor Automations vs Codex vs Warp vs Gemini CLI

By 20 min read

Five AI coding platforms schedule and trigger agents differently. Claude Code Routines and Cursor Automations ship schedules, API calls, and native source-control events; Cursor's trigger set is widest. OpenAI's ChatGPT scheduled tasks add Gmail, Slack, and GitHub pull-request event triggers on web and mobile, but no API or webhook trigger. Warp orchestrates other vendors' agents. Gemini CLI ships no scheduler.

The April 2026 wave of AI coding tooling brought a new question into every team's planning meeting: which platform should run your unattended agents? In the last six weeks, Claude Code Routines shipped, Cursor Automations launched, Codex added recurring tasks, Warp wrapped four CLI agents under one cloud platform, and Gemini CLI doubled down on headless mode. Five vendors, five different answers. This guide compares all five so you can pick the one that fits your existing stack and the triggers you actually need.

Update, August 22, 2026. Every claim below has been re-checked against the five vendors' own documentation, and four months moved several of them. OpenAI's product is no longer called Codex Automations: the page at developers.openai.com/codex/app/automations now redirects to ChatGPT scheduled tasks, which added RFC 5545 recurrence rules and minute-level intervals inside a chat, plus Gmail, Slack, and GitHub pull-request event triggers on the web and mobile for eligible plans (not in the desktop app), but still no API or webhook trigger. Cursor's trigger set has grown further than any other platform's, adding GitLab, Bitbucket Cloud, Sentry, and a dozen more GitHub events. Claude Code Routines' per-plan daily run numbers are no longer published by Anthropic. Gemini CLI's free quota was wrong on this page and is corrected: a Google account gets 1,000 model requests per day, not 25. Warp's 20-credit figure was also wrong -- it is a minimum balance, not a per-run charge. The matrix and the pricing section below carry the corrected figures; the original claims are named where they mattered.

Key Takeaways

  • Routines and Cursor Automations are the only "full triple" managed products
  • Cursor has the widest trigger set by a wide margin: three Git providers, Slack, Linear, Sentry, PagerDuty, webhooks
  • ChatGPT scheduled tasks (formerly Codex Automations) adds Gmail, Slack, and GitHub PR event triggers on web and mobile, but still no API or webhook trigger
  • Warp adds scheduling around other vendors' agents (universal wrapper model)
  • Gemini CLI offloads scheduling to the OS -- DIY only, and the only free option
  • Pick by: trigger types you need, plan you already have, agents you already use

Why Scheduled Agents Matter in 2026

The shift from "agent you start" to "agent that starts itself" is the biggest behavioral change in AI coding tooling this year. A scheduled agent does not need you at the keyboard, so it can sweep stale PRs at 3am, classify issues as they land, verify deploys hourly, and post a digest before standup. Work that used to require a person opening a terminal can now happen on its own and surface only when there is something to look at.

Triggered agents go a step further. An agent wired to a webhook or a GitHub event reacts to the world: a release ships, the agent writes the notes; a PR opens, the agent labels and assigns it; an alert fires, the agent triages and posts a summary. The agent stops being a tool you reach for and becomes a workflow component other systems can call.

The five platforms in this guide reach for that outcome with different shapes. Two ship the full trigger set in one managed product, one ships schedules plus a narrow set of app-event triggers, one wraps other agents under its own scheduler, and one provides the agent and leaves scheduling to you. Picking well is mostly about matching the platform to your existing stack and to the triggers you need, not about which has the smartest model.

The Five Contenders

Claude Code Routines is Anthropic's managed scheduler-and-trigger product, launched April 14, 2026 and still a research preview as of August 22, 2026. A Routine is a saved Claude Code configuration -- a prompt, one or more repos, and a set of MCP connectors -- that Anthropic runs in the cloud, or on your organization's self-hosted environment, whenever a trigger fires. Routines support cron schedules (1-hour minimum interval, plus one-off runs at a single future time), an HTTP API endpoint with a per-routine bearer token, and direct GitHub event subscriptions for pull request and release only, with filters on author, title, body, branches, labels, draft state, and merged state. Setup happens at claude.ai/code/routines or through the Claude Code CLI via /schedule (aliased /routines); the account needs Claude Code on the web enabled. GitHub triggers require the Claude GitHub App, and during the research preview webhook events carry per-routine and per-account hourly caps that drop excess events rather than queueing them. Routines is available on Pro, Max, Team, and Enterprise with a daily per-account run cap Anthropic reports in-product rather than in its documentation. No free tier.

Cursor Automations is Cursor's always-on cloud-agent product, launched March 5, 2026, and it has the widest trigger surface in this comparison by a large margin. Cursor's documentation covers scheduled triggers (presets or a raw cron expression), source-control triggers across GitHub, GitLab, and Bitbucket Cloud, Slack, Linear, Sentry, PagerDuty, and private webhook endpoints. On GitHub alone the events include PR opened, pushed, merged, draft opened, push to branch, comment added, PR label changed, issue label changed, issue comment, PR review comment, PR review submitted, review thread updated, CI completed, and workflow run completed. An automation can carry more than one trigger and runs when any of them fires. Configuration happens in the Agents Window, at cursor.com/automations, from a template in the Cursor Marketplace, or by describing the workflow to the /automate skill, which configures the triggers, instructions, and tools for you. Automations bill as cloud-agent usage on Cursor's paid plans; there is no free tier, and a team-owned automation bills the team pool through a shared service account rather than the creator.

ChatGPT scheduled tasks, documented as Codex Automations when this guide was first written, is OpenAI's recurring scheduled-task feature. The old URL now redirects and the product is presented as a ChatGPT surface rather than a Codex one. You name a task, attach a project, write a prompt, and pick a schedule; for cadences the presets do not cover you edit the task's RFC 5545 recurrence rule directly, for example RRULE:FREQ=MONTHLY;BYMONTHDAY=1;BYHOUR=9;BYMINUTE=0. Tasks scheduled inside an existing chat keep that chat's context and can run on minute-based intervals for active follow-up loops. Runs land in a Scheduled inbox with an unread indicator. On a Git repository you choose whether each run works in your local checkout or a dedicated worktree; a task scoped to a local project needs the computer on and the desktop app running.

The trigger set is schedules plus a narrow set of app events. On eligible plans, a scheduled task can run when a supported Gmail, Slack, or GitHub event occurs: new Gmail messages filtered by sender or subject, new Slack messages in selected channels, or GitHub pull request activity in a repository filtered by pull request, author, title, or label, with a choice of whether reviews, comments, commit updates, or only merges fire it. Event-triggered tasks are available in ChatGPT on the web and mobile only, not in the desktop app, Codex CLI, or the IDE extension, and one task cannot combine event triggers with a time-based schedule. There is still no general webhook and no API trigger on scheduled tasks. Two adjacent OpenAI products also react to GitHub events, and neither is the same thing: Codex code review posts an automatic review on every pull request once you turn it on, and the Codex GitHub Action (openai/codex-action@v1) runs codex exec from a workflow file you write and maintain. The first is a fixed review job, not an arbitrary prompt; the second is you owning the wiring, which is the same shape as the Gemini CLI row below. Scheduled tasks are bundled with the paid ChatGPT tiers.

Gemini CLI still does not ship a scheduler, and that is the one negative claim on this page that survived re-verification unchanged: there is no scheduling page anywhere in the CLI's documentation index as of August 22, 2026. The CLI is headless-capable through the -p flag, so the scheduling primitive is whatever your OS provides -- in practice a system cron entry running gemini -p "..." and piping output where you need it. It is the only path here that costs nothing: signing in with a Google account gives you 1,000 model requests per user per day at no charge, across whichever models the CLI routes to. Note that the Gemini app's scheduled actions and Gemini Enterprise's agent scheduling are separate products; this guide is about the CLI.

Warp cloud agents (Oz) take a different shape. Warp's Oz cloud platform (launched February 10, 2026) runs background agents on Warp's infrastructure or a self-hosted worker, triggered by schedules, integrations (Slack mentions, Linear issue updates, GitHub Actions workflow steps), the Oz API and SDK, or the oz agent run-cloud CLI command. A Skill is still a version-controlled config file defining a repeatable agent task, and Warp's Skills as Agents surface runs one from the CLI, web app, API, or a schedule. Crucially, Warp's Universal Agent Support released April 14, 2026 lets Warp drive somebody else's agent, and the scheduling layer stays Warp's own. That list differs by surface: Claude Code, Codex, OpenCode, Amp and others run as third-party CLI agents inside the Warp terminal, while the documented cloud harnesses are Warp Agent, Claude Code, and Codex. Pricing is credit-based, and running cloud agents requires a balance of at least 20 credits, not a 20-credit charge per run. Slack and Linear integrations additionally require a team on the Build, Max, or Business plan.

Trigger Comparison (Schedule, API, Event, Webhook)

The single most important question when picking a platform is: which triggers do you need? Schedule covers cadenced work like nightly sweeps and hourly verifications. API triggers let any system that can POST to a URL fire the agent, covering release scripts, deploy hooks, and cross-tool chains. GitHub event triggers let the agent react to repo activity directly, without you owning the wiring. Custom webhooks give you the same reactivity for anything outside GitHub.

Trigger support as documented on August 22, 2026:

ToolScheduleAPIGit-provider eventCustom webhookFree tier
Claude Code RoutinesYes (1h minimum)YesGitHub only, PR and releasevia APINo (Pro+)
Cursor AutomationsYes (cron)via webhookGitHub, GitLab, Bitbucket CloudYesNo
ChatGPT scheduled tasksYes (RRULE)NoGitHub PR activity (web and mobile only)NoNo
Gemini CLIVia system cronDIYDIYDIYYes
Warp cloud agents (Oz)YesYesVia GitHub Actions stepYesCredit-based

The matrix tells the story, and the gap between the two leaders has widened since April. Claude Code Routines and Cursor Automations are still the only platforms that ship the full triple of schedule, API, and native event triggers in one managed product, but they are no longer close on breadth. Routines covers exactly two GitHub event categories through the Claude GitHub App. Cursor covers three Git providers, fourteen distinct GitHub events, and five external systems, and it is the only platform here that reacts to a CI or workflow run finishing. OpenAI's scheduled tasks sit at the narrow end: schedule, plus GitHub pull request activity (and Gmail and Slack messages) as event triggers on the web and mobile only, with no API trigger and no webhook; the trigger expansion this guide flagged as "on the roadmap" in April shipped in that limited form. Warp covers schedule, API, and webhooks, and reaches GitHub by running as a step inside your GitHub Actions workflow rather than subscribing to events directly. Gemini CLI is the outlier: no scheduler, every trigger on its row wired yourself.

The "via API" cells matter. A platform with a Routine-style HTTP endpoint can be glued to anything via one curl command, which means you can fake a webhook-style trigger by having the upstream system POST to the endpoint. That is how Routines reaches custom webhook use cases without shipping a webhook trigger of its own; the API endpoint is the webhook, just from the agent's side rather than the source's side. One security detail worth knowing before you wire one up: text posted to a Routine's /fire endpoint arrives wrapped in a <routine-fire-payload> block labelled as untrusted, so the Routine ignores instructions inside it unless the saved prompt explicitly tells Claude to act on the payload. Anyone holding the bearer token can send that text, which is exactly why the wrapper exists.

Pricing Comparison

Pricing on this list is unusually messy because four of the five products are bundled into broader subscriptions, and the fifth is credit-based.

Claude Code Routines is bundled into Anthropic's existing paid plans. Runs draw down normal subscription usage, and a daily cap additionally limits how many runs can start per account. Correction: this guide originally published a per-plan table -- Pro 5, Max 15, Team 25, Enterprise 25 runs per day. Anthropic's documentation no longer carries those numbers and instead points you at your live remaining-runs counter at claude.ai/code/routines or claude.ai/settings/usage, so any fixed figure quoted elsewhere should be treated as unverified. What the docs do state: once the cap is hit, accounts with usage credits turned on continue on metered overage and accounts without them are rejected until the window resets; a one-off run scheduled for a single future time does not count against the cap; and a run already in progress is never cut off. There is no free tier. The cap is enforced at the run level, not the trigger level, so a Routine wired to a noisy GitHub trigger can burn the day's allowance before lunch on a busy repo.

Cursor Automations runs on Cursor's paid plans as cloud-agent usage. There is no free tier for the Automations surface, and the cost shape mirrors Cursor's broader cloud-agent billing. If you are already paying for Cursor, Automations is incremental usage on the same account rather than a new line item. Who pays depends on the automation's permission scope: a Team Owned automation runs under a shared team service account and bills the team's usage pool, while Private and Team Visible automations bill the person who created them. Promoting an automation to Team Owned changes the identity it runs as, so webhook API keys have to be regenerated and any personal OAuth credentials re-pointed at the service account. Automations also always use each model's maximum context window, because they run as cloud agents; there is no context-window toggle to economize with.

ChatGPT scheduled tasks are bundled with ChatGPT's paid tiers. There is no separate SKU. If your team already pays for ChatGPT and uses Codex as the coding surface, scheduled tasks are included. One operational note that costs nothing but will break a task silently: a scheduled task pinned to gpt-5.4 or gpt-5.4-mini under ChatGPT sign-in must be moved to gpt-5.6-terra or gpt-5.6-luna before those models retire on August 31, 2026.

Gemini CLI is the only free option, and this guide had the numbers wrong. Correction: the original text claimed "25 requests per day on Pro, 1500 per day on Flash". Google's published quotas as of August 22, 2026 are per user per day, by authentication method:

Sign-inTierRequests per user per day
Google accountGemini Code Assist (Individual), free1,000
Google accountGoogle AI Pro1,500
Google accountGoogle AI Ultra2,000
Gemini API keyFree tier, Flash model only250
Vertex AIExpress mode, free for 90 daysVaries

So the free path is 1,000 requests a day with a Google account, not 25, which is enough to run a lot more than "several scheduled scripts". The 1,500 figure exists but belongs to the paid Google AI Pro subscription, not to a free tier. The pricing tradeoff for "free" is the missing scheduler -- you write the cron, you maintain the host, you handle the failures.

Warp cloud agents (Oz) use Warp's credit model, and this guide overstated the cost. Correction: the original text said CLI and API runs "draw credits with a 20-credit minimum per run". Warp's documentation describes 20 credits as a balance requirement, not a per-run charge: an individual needs at least 20 credits available to run cloud agents at all, and a team needs the same balance plus a plan that supports add-on credits. If the balance reaches zero, cloud agent runs stop executing. Slack and Linear integrations are separately gated to a team on the Build, Max, or Business plan; teams can be created on any plan including Free, but the integrations are not. The credit shape still matters because Warp drives other vendors' agents -- the credits cover Warp's orchestration, and a third-party harness such as Claude Code or Codex calls its provider directly with your own Anthropic or OpenAI credential, so that spend is yours and separate.

The practical headline: if you already have a paid plan with Anthropic, OpenAI, Cursor, or Warp, you already have access to that vendor's automation product. The interesting question is rarely "which is cheapest" and almost always "which is included in something you already pay for."

Which to Pick (Decision Tree by Scenario)

The fastest way through this is to match your existing stack and your trigger needs against the five contenders, in order:

1. Already on a Claude paid plan and your triggers are pull requests, releases, or a cron? Pick Claude Code Routines. The GitHub App integration is direct, the API endpoint is per-routine, and the schedule trigger is built in. Two constraints to plan around: the daily run cap, which you read off your own account rather than a published table, and the two-category GitHub event list. If you need to react to a push, an issue, a check run, or a discussion, Routines cannot subscribe to it and you will be POSTing to the API endpoint from a GitHub Action instead. See the Routines deep-dive for setup walkthroughs and the five Routines worth building first.

2. Need richer event sources, a non-GitHub Git provider, or CI-completion triggers? Pick Cursor Automations. Cursor's event coverage is the broadest in this comparison and the gap has grown, so this is the right pick if your incident or product workflow runs through Slack, Linear, Sentry, or PagerDuty, if your code lives on GitLab or Bitbucket Cloud, or if you want an agent to react the moment a CI check finishes. It is also the only platform here that ships ready-made automation templates and a /automate skill that configures triggers and tools from a plain-language description. The cloud-agent shape is the same one you already use elsewhere in the Cursor product family. Webhook support handles anything outside the named integrations.

3. Already paying for ChatGPT and your use case is a schedule? Pick ChatGPT scheduled tasks. If all you need is "run this prompt every morning at 8am on this project," it is bundled and ready, and the RRULE editor covers cadences the presets do not. The event triggers that exist are narrow -- GitHub pull request activity, Gmail, and Slack, on the web and mobile only, and never combined with a schedule on the same task -- so if you need a webhook, an API trigger, or the desktop app reacting to a GitHub event, you will be migrating, or bolting on the Codex GitHub Action and maintaining a workflow file. For pure cron use, the simplicity wins.

4. Already in Warp and want a scheduling layer over your existing agent of choice? Pick Warp cloud agents. Warp's universal wrapper model is unique in this list. If you have settled on Claude Code or Codex and you want one scheduling, observability, and orchestration layer on top, Warp is the only platform that gives you that; check the harness list for the surface you actually need, since the terminal supports more third-party agents than the cloud does. The Skill-as-config-file shape also means your scheduled agents live in version control next to your codebase, which is a fit for teams that want change history on their agent definitions.

5. Want free and willing to wire it yourself? Pick Gemini CLI plus system cron. This is the path for solo developers and homelab tinkerers who do not want to add another paid SaaS. Write a cron entry that runs gemini -p "...", pipe the output to a log or to Slack via curl, and you have a scheduled agent for $0 of vendor cost. At 1,000 free requests per user per day on a Google account, the quota is not the binding constraint for most single-machine setups. The tradeoff is everything in the "DIY" column of the matrix -- you own the host, the scheduler, the failure handling, and the secrets.

A note on MCP. Four of the five platforms support MCP connectors at runtime, so the agent can talk to Slack, Linear, GitHub, Google Drive, and the rest of your stack without you wiring REST calls by hand. Pick from the MCP servers worth plugging in today before you build the first scheduled agent; the connector list is what turns "the agent runs" into "the agent does something useful."

What Changed Between April and August 2026

This section originally forecast three shifts. Four months later, one has come true only in a narrow form and the other two are still open, so it is worth reading as a scorecard rather than a roadmap.

The Codex trigger expansion shipped in a narrow form, and that prediction was only partly right. This guide said in April that when cloud-trigger support arrived, OpenAI's product would move from schedule-only into the same trigger band as Routines and Cursor Automations. The documentation now describes event triggers for Gmail, Slack, and GitHub pull request activity on eligible plans, available in ChatGPT on the web and mobile but not in the desktop app, Codex CLI, or the IDE extension, and not combinable with a time-based schedule on the same task. It still describes no webhook and no API trigger on scheduled tasks. Alongside that, OpenAI shipped schedule expressiveness -- RFC 5545 recurrence rules, minute-level intervals inside a chat, skills that create and update tasks -- plus event-driven work in two adjacent products, Codex code review and the Codex GitHub Action. Treat the trigger expansion as shipped for pull request activity on the web and mobile, and unshipped for everything else.

The trigger triple is a floor, and Cursor has moved past it. In April, shipping schedule plus API plus events looked like the definition of a complete product. Cursor now has three Git providers, fourteen GitHub events, Sentry, Slack, Linear, PagerDuty, webhooks, a template marketplace, and a skill that builds automations from a description. Routines is still on two GitHub event categories. If you were choosing on trigger breadth alone, that gap is now the deciding factor rather than a tie-break.

Universal wrapping versus native integration is still genuinely open. Warp's bet that one cloud platform can schedule any agent is different from the other four, which bet you pick a vendor and live in their automation surface. Nothing in four months has settled it -- Warp added harnesses and self-hosting, and every native platform deepened its own surface. Which one wins is downstream of whether teams standardize on one agent (favoring native integration) or multi-source their agents by task (favoring universal wrapping). The question for your team is which side of that split you sit on.

Pick by stack fit, trigger fit, and plan fit, in that order. The right answer is usually the one already included in something you already pay for -- with one caveat this update adds: check the actual trigger list before you commit, because the gap between "has GitHub triggers" and "has the GitHub trigger you need" is now four months wide.

Sources

Every trigger, quota, and billing figure in the tables above was re-fetched from the vendor's own documentation on 2026-08-22. Where this guide's April figures disagreed with what the vendors publish today -- Gemini CLI's free quota, Warp's credit minimum, and Anthropic's per-plan run caps -- the original claim is named in place rather than silently replaced, so a reader who planned around it can see what moved.

Frequently Asked Questions

Which AI coding tool can run on a schedule?

Four of the five, as of August 22, 2026. Claude Code Routines, Cursor Automations, ChatGPT scheduled tasks (the product formerly documented as Codex Automations), and Warp cloud agents all expose cron-style scheduling in their own UI. Gemini CLI still has no scheduler and relies on you wiring its headless mode into system cron yourself.

Can I trigger an AI coding agent from a GitHub event?

Yes, on Claude Code Routines and Cursor Automations. Routines subscribes to pull request and release events through the Claude GitHub App. Cursor is much wider: PR opened, pushed, merged, labeled, commented, reviewed, plus CI and workflow-run completion, across GitHub, GitLab, and Bitbucket Cloud. ChatGPT scheduled tasks trigger on GitHub pull request activity on web and mobile only.

Do I need to keep my laptop open for scheduled AI tasks?

Not for Claude Code Routines, Cursor Automations, or Warp cloud agents -- all three run on the vendor's infrastructure. A ChatGPT scheduled task scoped to a local project needs the computer on and the desktop app running. Gemini CLI plus system cron also needs a machine that stays on.

Is there a free option for scheduled AI agents?

Only Gemini CLI is free, and it ships no scheduler, so you bring your own cron. A Google account gets 1,000 model requests per user per day at no cost. Claude Code Routines, Cursor Automations, and ChatGPT scheduled tasks all require a paid plan. Warp needs a balance of at least 20 credits.

Get the weekly AI Catchup

Tools, practices, and what matters, in your inbox every week.