Add schedule skill for managing cron-based agent tasks#69
Merged
Conversation
Adds a new skill that lets agents create, list, and delete cron jobs that send messages to the tinyclaw incoming queue with task context and target agent routing. https://claude.ai/code/session_01YA1x7fWbY9bYx2Djfk2B8T
- Replace grep -P (Perl regex) with POSIX-compatible sed for macOS BSD grep compatibility - Add platform detection to exit early with a clear message on Windows (CYGWIN, MINGW, MSYS) https://claude.ai/code/session_01YA1x7fWbY9bYx2Djfk2B8T
Replace schedule.sh (crontab-dependent) with schedule.py (pure Python 3, no external deps). Key changes: - Schedules stored in ~/.tinyclaw/schedules.json instead of system crontab - Built-in scheduler daemon via `run` command (60s check loop) - Pure-Python cron expression parser (wildcards, ranges, steps, lists) - Works on macOS, Linux, and Windows without any system dependencies https://claude.ai/code/session_01YA1x7fWbY9bYx2Djfk2B8T
…port" This reverts commit 81c6f6d.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Introduces a new "schedule" skill that enables users to create, list, and delete cron-based scheduled tasks. These tasks automatically send messages to the tinyclaw incoming queue at specified intervals, triggering target agents to perform recurring work.
Key Changes
schedule.sh CLI tool — Bash script providing three main commands:
create— Set up a new cron job with a 5-field cron expression, target agent, and task messagelist— Display all tinyclaw schedules, optionally filtered by agentdelete— Remove schedules by label or delete all at onceCron integration — Schedules are stored as system crontab entries tagged with
# tinyclaw-schedule:<label>comments for reliable identification and managementQueue message generation — When a cron job fires, it writes a JSON message to
queue/incoming/with proper routing (@agent_idprefix) so the queue processor invokes the correct agentSKILL.md documentation — Comprehensive guide covering:
queue-format.md reference — Documents the JSON schema for scheduled task messages, including field descriptions and routing behavior
Implementation Details
sched-<timestamp>-<pid>)https://claude.ai/code/session_01YA1x7fWbY9bYx2Djfk2B8T