Automate Workflows with Claude Routine Runs
Back to Blog

Automate Workflows with Claude Routine Runs

I've been using Claude Code pretty much every day for a while now. It's become part of my default workflow. Writing functions, refactoring things, checking edge cases, even just explaining weird bugs.

So it was surprising to log into my Claude.ai settings page today just to check my usage and notice something I had never paid attention to before: a separate meter called "Daily included routine runs." The fact that it tracked usage separately made me curious enough to dig in. That's when I realized I had completely missed an entire feature that was already included in my subscription.

What it is

It turns out "routine runs" are automated executions of predefined Claude tasks, kind of similar to cron jobs that are AI-enabled, and you can access it directly from claude.ai/code/routines.

Instead of manually prompting Claude each time, you define a task once and it runs automatically at scheduled times. Each execution counts against your daily routine run quota.

A routine typically consists of:

  • a prompt defining what Claude should do
  • a trigger (schedule-based like daily, or event-based)
  • input data (logs, commits, files, etc.)
  • an output destination (Slack, email, etc.)

The key shift is that Claude is no longer purely reactive. You are not asking questions repeatedly. You are setting up recurring work that executes in the background.

Example of what it can do

A good example is a daily repository briefing for a codebase I'm working on.

Instead of manually checking everything in GitHub, I can define a routine like this:

You are a daily engineering briefing agent for this repository. Every day, generate a 
comprehensive summary of what happened in the last 24 hours and what work 
remains. Post this to Slack as a direct message.

Do the following:

1. RECENT ACTIVITY (last 24 hours):
   - List all merged pull requests with brief descriptions of what changed
   - List any newly opened issues and their descriptions
   - Note any new commits to main/master branch with commit messages
   - Flag any failed CI/CD runs or deployment issues
   - Highlight any comments or discussions on open PRs

2. CURRENT STATE:
   - List all open pull requests (show title, author, days open)
   - List all open issues (show title, priority if labeled, days open)
   - Identify any PRs or issues blocked or waiting on someone
   - Note any tasks/issues assigned to me specifically

3. ACTIONABLE NEXT STEPS:
   - What PRs need review from me?
   - What issues should I prioritize?
   - Are there any dependencies blocking other work?
   - What's the highest priority item?

Format the Slack message clearly with sections, emojis for visual scanning, 
and make it skimmable in under 2 minutes. Be concise but thorough.

When done, send this entire message as a direct message to #username on Slack.

Instead of manually assembling all of that context every day, the routine just runs and produces a structured summary at 9am every weekday.

The key difference is not convenience, it's consistency. It turns something I could do into something I no longer have to remember to do.