Agent skill

MetaBot Scheduler

by xvirobotics in xvirobotics/metabot

Schedules persistent cron and one-shot tasks on the MetaBot server that survive Claude session restarts and can be managed by other bots.

MITAuto-check passedProductivity & Automation

Install MetaBot Scheduler

skills CLI
$ npx skills add xvirobotics/metabot --skill metaschedule -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install xvirobotics/metabot metaschedule --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/xvirobotics/metabot.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/skills/metaschedule .claude/skills/metaschedule && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
metaschedule
GitHub stars
994
Token cost
~1k tokens
SKILL.md length
167 words
Files
1
Skills in repo
5
Repo updated
First seen
Licence
MIT

At a glance

Schedules persistent cron and one-shot tasks on the MetaBot server that survive Claude session restarts and can be managed by other bots.

  • Creating a task that must outlive the current Claude session
  • Calls curl; needs METABOT_API_SECRET
  • Setting up a recurring cron job that other bots or operators can pause or cancel
  • Scheduling a one-time delayed prompt for a bot

What it does

metaschedule is MetaBot's persistent server-side scheduler, covering both cron and one-shot tasks, as an opt-in skill that is not installed by default. It suits schedules that must outlive the current Claude session, that other bots or operators need to list, pause or cancel, or that should run inside MetaBot's PM2 process. For short, session-scoped scheduling the skill points to Claude Code's own CronCreate and loop tools instead.

Tasks are managed through the preinstalled metabot CLI or through the local HTTP API with a bearer token. The API can create one-time and recurring tasks, update the prompt, delay or cron expression, pause and resume recurring ones, and cancel them. Cron uses five fields, and the default time zone is Asia/Shanghai. To enable the skill for one bot, its folder is copied into that bot's .claude/skills directory.

When your agent uses it

  • Creating a task that must outlive the current Claude session
  • Setting up a recurring cron job that other bots or operators can pause or cancel
  • Scheduling a one-time delayed prompt for a bot
  • Listing, updating or cancelling existing scheduled tasks

Example prompts

  • “Schedule a daily 8am summary for this bot using the MetaBot scheduler.”
  • “List all scheduled tasks and pause the one that runs every 30 minutes.”
  • “Cancel the weekday report schedule.”

Requirements

  • The metabot CLI and a running MetaBot server
  • METABOT_API_SECRET for direct API calls

What it can do on your machine

Read from SKILL.md and the folder at commit 916637e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use curl, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • METABOT_API_SECRET

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

MetaBot Scheduler loads about 1k tokens when it runs. Until then it costs about 71 tokens; SKILL.md has 167 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~71
When it runs · the whole SKILL.md, loaded when a task matches
~1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from xvirobotics/metabot at commit 916637e, republished under its MIT licence (© xvirobotics). 167 words, ~1,039 tokens.

Download SKILL.mdSave it as .claude/skills/metaschedule/SKILL.md (or your agent's skills folder).
name
metaschedule
description
MetaBot's persistent server-side scheduler (cron + one-shot). Optional skill — not installed by default. Use when the user wants tasks that survive Claude session restarts, are visible to other bots, or need to run in MetaBot's PM2 process rather than this Claude session.

MetaBot Scheduler

Persistent server-side scheduler. Use this when:

  • The schedule needs to outlive the current Claude session.
  • Another bot or operator may need to list, pause, or cancel it.
  • You want it to run inside MetaBot's PM2 process (not Claude's).

For ad-hoc, session-scoped scheduling, prefer the Claude Code native tools CronCreate and /loop instead — they're faster, in-process, and need no MetaBot server call.

Quick Commands (metabot CLI)

The metabot CLI is pre-installed and handles auth automatically.

bash
# One-time delayed tasks
metabot schedule list                                       # List all scheduled tasks
metabot schedule add <bot> <chatId> <delaySec> <prompt>     # Schedule a one-time future task
metabot schedule cancel <id>                                # Cancel a scheduled task

# Recurring (cron)
metabot schedule cron <bot> <chatId> '<cronExpr>' <prompt>  # Create recurring task
metabot schedule pause <id>                                 # Pause a recurring task
metabot schedule resume <id>                                # Resume a paused recurring task

Cron format: minute hour day month weekday (5 fields). Examples:

  • 0 8 * * * → daily at 8am
  • 0 8 * * 1-5 → weekdays at 8am
  • */30 * * * *→ every 30 minutes Default timezone: Asia/Shanghai.
API Reference

Auth header: -H "Authorization: Bearer $METABOT_API_SECRET" Base URL: !echo http://localhost:${METABOT_API_PORT:-9100}

Create one-time scheduled task:

bash
curl -s -X POST http://localhost:${METABOT_API_PORT:-9100}/api/schedule \
  -H "Authorization: Bearer $METABOT_API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"botName":"<bot>","chatId":"<chatId>","prompt":"<task>","delaySeconds":3600,"label":"Reminder"}'

Create recurring task (cron):

bash
curl -s -X POST http://localhost:${METABOT_API_PORT:-9100}/api/schedule \
  -H "Authorization: Bearer $METABOT_API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"botName":"<bot>","chatId":"<chatId>","prompt":"<task>","cronExpr":"0 8 * * 1-5","timezone":"Asia/Shanghai","label":"Daily report"}'

Update task (prompt, delay, or cron):

bash
curl -s -X PATCH http://localhost:${METABOT_API_PORT:-9100}/api/schedule/<id> \
  -H "Authorization: Bearer $METABOT_API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"updated prompt","delaySeconds":7200}'

curl -s -X PATCH http://localhost:${METABOT_API_PORT:-9100}/api/schedule/<id> \
  -H "Authorization: Bearer $METABOT_API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"cronExpr":"0 9 * * *","prompt":"Updated prompt","timezone":"Asia/Shanghai"}'

Pause / resume recurring task:

bash
curl -s -X POST http://localhost:${METABOT_API_PORT:-9100}/api/schedule/<id>/pause \
  -H "Authorization: Bearer $METABOT_API_SECRET"
curl -s -X POST http://localhost:${METABOT_API_PORT:-9100}/api/schedule/<id>/resume \
  -H "Authorization: Bearer $METABOT_API_SECRET"

Cancel:

bash
curl -s -X DELETE http://localhost:${METABOT_API_PORT:-9100}/api/schedule/<id> \
  -H "Authorization: Bearer $METABOT_API_SECRET"
Installation (opt-in)

This skill is not installed by default. To enable it for one bot, copy it into the bot's working directory:

bash
mkdir -p <bot-work-dir>/.claude/skills/metaschedule
cp $METABOT_HOME/src/skills/metaschedule/SKILL.md <bot-work-dir>/.claude/skills/metaschedule/SKILL.md
# Mirror for Codex bots:
mkdir -p <bot-work-dir>/.codex/skills/metaschedule
cp $METABOT_HOME/src/skills/metaschedule/SKILL.md <bot-work-dir>/.codex/skills/metaschedule/SKILL.md

Or install globally so every Claude session picks it up:

bash
mkdir -p ~/.claude/skills/metaschedule
cp $METABOT_HOME/src/skills/metaschedule/SKILL.md ~/.claude/skills/metaschedule/SKILL.md

© xvirobotics, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in src/skills/metaschedule of xvirobotics/metabot.

Open the folder on GitHubat commit 916637e

Compare with similar skills

MetaBot Scheduler next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

MetaBot Scheduler compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
MetaBot Scheduler this skillxvirobotics/metabot994—~1kAutomated safety check: PassMIT
Superset Automatesuperset-sh/superset15k—~1.4kAutomated safety check: PassCustom licence
Aeon Agent Setup and Managementaeonfun/aeon770—~9kAutomated safety check: WarnMIT
AI Automation WorkflowsNeverSight/learn-skills.dev2171 repos~2.6kAutomated safety check: PassNone
N8n Workflowsvibeeval/vibecosystem532—~3.3kAutomated safety check: PassMIT
Schedule Recipemohitagw15856/pm-claude-skills1.4k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Superset Automate

    superset-sh/superset

    Turns a recurring chore into a scheduled or event-triggered Superset agent, drafting its prompt, picking a target and trigger, and reviewing the first run.

    15k GitHub stars~1.4k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Sets up and manages an Aeon agent instance that runs skills on a schedule through GitHub Actions: starting, rescheduling, debugging, editing skills and mining chat history.

    770 GitHub stars~9k tokensUpdated yesterday
    Productivity & AutomationAuto-check: warnings
  • AI Automation Workflows

    NeverSight/learn-skills.dev

    Build automated AI workflows combining multiple models and services.

    217 GitHub starsUsed in 1 repo~2.6k tokens
    Productivity & AutomationAuto-check passed
  • N8n Workflows

    vibeeval/vibecosystem

    n8n otomasyon workflow'lari. An agent skill from vibeeval/vibecosystem.

    532 GitHub stars~3.3k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Schedule Recipe

    mohitagw15856/pm-claude-skills

    Turn 'run this every Friday at 4pm' into a working, copy-paste schedule on the user's actual runner.

    1.4k GitHub stars~1.1k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • n8n Workflow Patterns

    czlonkowski/n8n-skills

    Architecture patterns for n8n workflows covering webhooks, HTTP APIs, databases, AI agents, scheduled jobs and batch processing, with advice on choosing between them.

    6.4k GitHub stars~5.1k tokensUpdated yesterday
    Productivity & AutomationAuto-check passed

More from xvirobotics/metabot

  • Generates Chinese speech audio from text using Volcengine's Doubao TTS API, for narration, voiceovers or multi-voice podcasts.

    994 GitHub stars~1.1k tokensUpdated 25 days ago
    Auto-check: notes
  • MetaBot Agent Teams CLI

    xvirobotics/metabot

    Documents the metabot teams command surface for creating durable teams, spawning teammates, dispatching tasks and inspecting their runs across engine sessions.

    994 GitHub stars~693 tokensUpdated 25 days ago
    Auto-check passed
  • MetaBot CLI

    xvirobotics/metabot

    Documents the unified `metabot` CLI for personal memory, the skill hub, durable agent messaging, the agent registry, T5T status and scheduling.

    994 GitHub stars~573 tokensUpdated 25 days ago
    Auto-check passed
  • Agent Team And Skill Builder

    xvirobotics/metabot

    Decides whether a request wants a full agent team, one agent, or one skill, then follows the matching flow file to generate it.

    994 GitHub stars~628 tokensUpdated 25 days ago
    Auto-check: notes

Questions about MetaBot Scheduler

What does MetaBot Scheduler do?

Schedules persistent cron and one-shot tasks on the MetaBot server that survive Claude session restarts and can be managed by other bots. metaschedule is MetaBot's persistent server-side scheduler, covering both cron and one-shot tasks, as an opt-in skill that is not installed by default. It suits schedules that must outlive the current Claude session, that other bots or operators need to list, pause or cancel, or that should run inside MetaBot's PM2 process.

When should I use MetaBot Scheduler?

MetaBot Scheduler fits situations like: creating a task that must outlive the current Claude session; setting up a recurring cron job that other bots or operators can pause or cancel; scheduling a one-time delayed prompt for a bot; listing, updating or cancelling existing scheduled tasks.

How do I install MetaBot Scheduler in Claude Code?

Run `npx skills add xvirobotics/metabot --skill metaschedule -a claude-code`. Or copy the skill folder (src/skills/metaschedule in xvirobotics/metabot) into .claude/skills/metaschedule in your project. Claude Code loads it when a task matches its description.

How do I install MetaBot Scheduler in Codex?

Run `npx skills add xvirobotics/metabot --skill metaschedule -a codex`. Or copy the skill folder (src/skills/metaschedule in xvirobotics/metabot) into .agents/skills/metaschedule in your project. Codex loads it when a task matches its description.

Can I use MetaBot Scheduler in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add xvirobotics/metabot --skill metaschedule -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/metaschedule, .gemini/skills/metaschedule, .github/skills/metaschedule and .opencode/skills/metaschedule in your project.

What does MetaBot Scheduler need to run?

Going by SKILL.md and its folder, MetaBot Scheduler needs the command-line tools its instructions call (curl) and credentials named METABOT_API_SECRET. Our summary lists: The metabot CLI and a running MetaBot server; METABOT_API_SECRET for direct API calls.

Does MetaBot Scheduler access the network?

SKILL.md contains no URLs. Its commands use curl, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is MetaBot Scheduler safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does MetaBot Scheduler use?

MetaBot Scheduler is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does MetaBot Scheduler use?

About 1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to MetaBot Scheduler?

Skills that share tags, products or a category with MetaBot Scheduler: Superset Automate (superset-sh/superset, 15k stars), Aeon Agent Setup and Management (aeonfun/aeon, 770 stars), AI Automation Workflows (NeverSight/learn-skills.dev, 217 stars) and N8n Workflows (vibeeval/vibecosystem, 532 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains MetaBot Scheduler?

xvirobotics (a GitHub organization) maintains it in xvirobotics/metabot, which has 994 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on September 15, 2026.

Source: xvirobotics/metabot on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.