Use Case Ideas
Daily personalized newsletter
Daily personalized newsletter
Company dashboard updates
Company dashboard updates
Aggregate metrics from various sources (analytics, CRM, support tickets) and update a dashboard document with the latest numbers.
Task hygiene
Task hygiene
Move overdue tasks, archive completed ones, or flag items that have been stuck too long.
Email triage
Email triage
Scan incoming emails, categorize them, and create tasks for ones that need action.
Documentation updates
Documentation updates
A CI job that reviews code changes and updates relevant documentation, keeping docs in sync with code.
Release notes collection
Release notes collection
Automatically compile release notes from merged PRs and commit messages before each release.
Meeting prep
Meeting prep
Before recurring meetings, gather relevant context from your documents and prepare talking points.
Option 1: GitHub Actions
The simplest way to run scheduled agents - no infrastructure to manage, and it’s free for public repos (with generous limits for private repos).Basic Scheduled Workflow
Create.github/workflows/daily-agent.yml:
With a Specific Sub-Agent
Weekday-Only Schedule
For work-related tasks, run only on weekdays:Setting Up Secrets
- Go to your repository → Settings → Secrets and variables → Actions
- Add these secrets:
CRAFT_ANTHROPIC_API_KEY- Your Anthropic API keyCRAFT_MCP_URL- Your workspace MCP URL (from Craft Agents setup)
GitHub Actions runs on UTC time. Adjust the cron expression for your timezone.
Debugging Workflow Runs
Add a debug step to see what happened:Option 2: Cloud Hosting with Cron
For more control or complex scheduling, deploy Craft Agents to a cloud platform with built-in cron support.Render
Render offers native cron jobs that run on a schedule. Setup:1
Create a cron job service
In Render dashboard, create a new Cron Job service.
2
Configure the build
- Environment: Docker or Native
- Build Command:
curl -fsSL https://agents.craft.do/install.sh | bash - Start Command: Your craft command (see below)
3
Set the schedule
Use cron syntax:
0 7 * * * for daily at 7am UTC4
Add environment variables
CRAFT_ANTHROPIC_API_KEY- Your API keyCRAFT_MCP_URL- Your workspace MCP URL
Railway
Railway also supports native cron jobs. Setup:1
Create a new project
In Railway dashboard, create a new project and add a service.
2
Configure as cron job
In service settings, enable Cron Schedule and set your expression.
3
Set the start command
4
Add environment variables
Add your API key and MCP URL in the Variables tab.
Railway cron jobs run in UTC. They may vary by a few minutes from the scheduled time.
Fly.io
Fly.io offers several options for scheduled tasks. Cron Manager (recommended): A small app that spins up temporary machines for each job, then tears them down. Each job runs in isolation. Supercronic: A simpler option - add cron behavior to any app with minimal setup. See Fly.io task scheduling guide for detailed setup instructions.Comparison
| Platform | Setup Complexity | Cost | Best For |
|---|---|---|---|
| GitHub Actions | Easiest | Free (limits apply) | Simple daily/weekly jobs |
| Render | Easy | ~$5/month minimum | Reliable scheduled tasks |
| Railway | Easy | Pay per use | Flexible scheduling |
| Fly.io | Moderate | Pay per use | Complex job orchestration |
Tips
Start with GitHub Actions
Start with GitHub Actions
It’s free and requires no infrastructure. Only move to cloud hosting if you hit limits or need more control.
Use appropriate timeouts
Use appropriate timeouts
Set
timeout-minutes in GitHub Actions or equivalent in cloud platforms. Agent runs typically complete in 1-5 minutes.Choose the right model
Choose the right model
Use Haiku for simple tasks (cheaper, faster). Use Sonnet or Opus for complex analysis.
Test manually first
Test manually first
Use
workflow_dispatch in GitHub Actions or manual triggers in cloud platforms to test before relying on the schedule.Monitor your runs
Monitor your runs
Check logs periodically to ensure jobs are completing successfully. Set up notifications for failures.