cronClaude Skill

Scheduled task management - create, query, delete scheduled tasks to automatically execute operations at specified times.

18.0k Stars
1.4k Forks
2025/08/07

Install & Download

Linux / macOS:

请登录后查看安装命令

Windows (PowerShell):

请登录后查看安装命令

Download and extract to ~/.claude/skills/

namecron
descriptionScheduled task management - create, query, delete scheduled tasks to automatically execute operations at specified times.

Scheduled Task Skill

You can manage scheduled tasks to automatically execute operations at specified times.

IMPORTANT RULES

  1. ONE task per conversation - Each conversation can only have ONE scheduled task
  2. Query and WAIT for result - Before creating a task, output [CRON_LIST] and WAIT for the system to return the result
  3. NEVER combine commands - Do NOT output [CRON_LIST] and [CRON_CREATE] in the same message. Query first, wait for result, then decide.
  4. ASK before delete - If a task exists, you MUST ask the user whether to replace it or keep it. NEVER delete without user's explicit confirmation.
  5. ALWAYS include closing tags - [CRON_CREATE] MUST end with [/CRON_CREATE]
  6. Output commands directly - Do NOT wrap commands in markdown code blocks

Workflow for Creating a Task

CRITICAL: This is a multi-turn workflow. Do NOT skip steps or combine them.

Step 1: Query existing tasks (STOP and wait) Output ONLY [CRON_LIST] and nothing else. The system will return the current task status. DO NOT proceed to Step 2 until you see the system response.

Step 2: Review the result and ask user (STOP and wait for user response) After receiving the [CRON_LIST] result:

  • If "No scheduled tasks" → proceed to Step 3
  • If a task already exists → You MUST ask the user what they want to do:
    • Option A: Delete the existing task and create a new one
    • Option B: Keep the existing task and cancel creating a new one
    • NEVER delete the existing task without explicit user confirmation
    • Wait for the user's response before proceeding

Step 3: Execute user's decision

  • If user chose to replace: First delete the old task with [CRON_DELETE: <job-id>], wait for confirmation, then create new task
  • If user chose to keep: Do NOT create a new task, inform user the existing task is retained

Step 4: Create the new task (only if no task exists or user confirmed deletion) Only after confirming no task exists (or after successfully deleting), output the [CRON_CREATE] block.

Create Scheduled Task

When user requests a timed reminder or periodic task, output this format DIRECTLY (not in code blocks):

[CRON_CREATE] name: Task name schedule: Cron expression schedule_description: Human-readable description of when the task runs message: Message content to send when triggered [/CRON_CREATE]

Required fields:

  • name: Short descriptive name for the task
  • schedule: Valid cron expression
  • schedule_description: Human-readable explanation of the schedule (e.g., "Every Monday at 9:00 AM")
  • message: The message to send when the task triggers

Example output (output EXACTLY like this, without code blocks):

[CRON_CREATE] name: Weekly Meeting Reminder schedule: 0 9 * * MON schedule_description: Every Monday at 9:00 AM message: Time for the weekly meeting! [/CRON_CREATE]

Query Scheduled Tasks

Output [CRON_LIST] directly (not in code blocks) to query scheduled tasks. The system will return the result in a follow-up message. Wait for the response before taking further action.

Delete Scheduled Task

Output [CRON_DELETE: <actual-job-id>] directly to delete a specific task. Replace <actual-job-id> with the real job ID (e.g., cron_abc123).

Cron Expression Reference

ExpressionMeaning
0 9 * * *Every day at 9:00 AM
0 9 * * MONEvery Monday at 9:00 AM
0 9 * * MON-FRIWeekdays at 9:00 AM
*/30 * * * *Every 30 minutes
0 */2 * * *Every 2 hours
0 0 1 * *1st of every month at midnight
0 18 * * FRIEvery Friday at 6:00 PM
0 9,18 * * *Every day at 9:00 AM and 6:00 PM

Cron Expression Format

┌───────────── minute (0-59)
│ ┌───────────── hour (0-23)
│ │ ┌───────────── day of month (1-31)
│ │ │ ┌───────────── month (1-12)
│ │ │ │ ┌───────────── day of week (0-6, SUN-SAT)
│ │ │ │ │
* * * * *

Special Characters

  • * - Any value
  • , - List separator (e.g., 1,3,5)
  • - - Range (e.g., MON-FRI)
  • / - Step (e.g., */15 for every 15)

Notes

  • Scheduled tasks are bound to the current conversation
  • When triggered, the message will be sent to this conversation
  • CRITICAL: [CRON_LIST] is an async query. You MUST wait for the system response before proceeding with [CRON_CREATE] or [CRON_DELETE]. Never output multiple commands in one message.

Similar Claude Skills & Agent Workflows