---
name: Cron Scheduling
slug: cron-scheduling
category: Automation
description: Cron Scheduling creates, lists, and removes persistent scheduled tasks from cron expressions. Use it when you need to set, reschedule, or cancel reminders with a timezone and message.
github: "https://github.com/SawyerHood/middleman/tree/main/apps/backend/src/swarm/skills/builtins/cron-scheduling"
language: TypeScript
stars: 181
forks: 21
install: "npx degit https://github.com/SawyerHood/middleman/tree/main/apps/backend/src/swarm/skills/builtins/cron-scheduling ~/.claude/skills/cron-scheduling"
installs_to: ~/.claude/skills/cron-scheduling
source_path: apps/backend/src/swarm/skills/builtins/cron-scheduling/SKILL.md
collection_size: 4
category_size: 2109
collection_url: "https://dirskills.com/collections/SawyerHood/middleman"
added: 2026-09-07T05:20:19.107Z
last_synced: 2026-09-07T05:20:19.107Z
canonical_url: "https://dirskills.com/skills/cron-scheduling"
---

# Cron Scheduling

Cron Scheduling creates, lists, and removes persistent scheduled tasks from cron expressions. Use it when you need to set, reschedule, or cancel reminders with a timezone and message.

**Install:**

```bash
npx degit https://github.com/SawyerHood/middleman/tree/main/apps/backend/src/swarm/skills/builtins/cron-scheduling ~/.claude/skills/cron-scheduling
```

## README

# Cron Scheduling

Use this skill when the user asks to schedule, reschedule, or cancel reminders/tasks for later.

Before creating a schedule, confirm:

- exact schedule timing (cron expression),
- timezone (IANA, for example `America/Los_Angeles`),
- task message content.

If the request is ambiguous, ask a follow-up question before adding a schedule.

## Commands

Use the embedded CLI. It talks to the backend schedule service and stores schedules in SQLite.

```bash
middleman schedule add \
  --cron "0 9 * * 1-5" \
  --message "Remind me about the daily standup" \
  --description "Daily standup reminder" \
  --timezone "America/Los_Angeles"
```

One-shot schedule (fires once at the next matching cron time):

```bash
middleman schedule add \
  --cron "30 14 * * *" \
  --message "Check deployment status" \
  --description "One-time deployment check" \
  --timezone "America/Los_Angeles" \
  --one-shot
```

Remove a schedule:

```bash
middleman schedule remove \
  "<schedule-id>"
```

List schedules:

```bash
middleman schedule list
```

Override manager context manually when needed:

```bash
middleman schedule list --manager "manager"
```

## Output

All commands return JSON:

- Success: `{ "ok": true, ... }`
- Failure: `{ "ok": false, "error": "..." }`
