agentleFS
eddmanneddmann/jeeves/skills/reminders/SKILL.md

reminders

Skill2 starsChanged 9 months agoMITView on GitHub

Manage reminders — one-off and recurring. Use when the user says "remind me", "set a reminder", "what reminders do I have", "cancel that reminder", or needs time-based nudges. Wraps the cron system with history and categories.

17 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use calendar.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • jacobraskSkill

    calendar

    Interact with Apple Calendar via AppleScript. Use when the user asks to check calendar, view events, create events, manage schedule, find free time, or list calendars. Triggers include "my calendar", "my schedule", "calendar events", "create event", "add to calendar", "what's on my calendar", "free time", "available slots", "upcoming events", "today's events". Requires macOS with Calendar.app.

    Also in 4 projects that use this

The file

We split this skill into the rules it gives an agent

1 rule. 0 are common, 1 is distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 16 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use the cron tool to create the actual job:

    line 28

“Common” is measured: kept by at least 6 in 10 of the 16 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Reminders

Thin wrapper around the cron at/cron system. SQLite stores metadata, history, and categories. Cron handles actual delivery.

Creating a Reminder

Two steps — database record + cron job:

Step 1: Record in database

echo '{"text": "Take out the bins", "due": "2026-03-02T10:00:00Z", "category": "home"}' | uv run workspace/skills/reminders/scripts/create.py

Fields:

  • text (required): What to remind about
  • due (required): ISO 8601 datetime
  • recurring (optional): "daily", "weekly", or cron expression. Omit for one-off.
  • category (optional): For grouping — home, health, work, etc.

Step 2: Create the cron job

Use the cron tool to create the actual job:

  • One-off: schedule_type: "at", schedule_value: <due>, delete_after_run: true
  • Daily: schedule_type: "cron", schedule_value: "M H * * *"
  • Weekly: schedule_type: "cron", schedule_value: "M H * * D"

The cron message should include: "Reminder: {text}. Then run: uv run workspace/skills/reminders/scripts/fired.py {id}"

Step 3: Link the cron job ID

echo '{"reminder_id": 1, "cron_job_id": "abc123"}' | uv run workspace/skills/reminders/scripts/link.py

When a Reminder Fires

The cron message tells you to run fired.py:

uv run workspace/skills/reminders/scripts/fired.py 1
  • One-off: marks as fired
  • Recurring: updates due to next occurrence, keeps status pending

For recurring daily reminders (e.g. bins), after firing and delivering, the cron system handles the next run automatically.

Listing Reminders

uv run workspace/skills/reminders/scripts/list.py              # pending
uv run workspace/skills/reminders/scripts/list.py history       # fired/cancelled
uv run workspace/skills/reminders/scripts/list.py all           # everything
uv run workspace/skills/reminders/scripts/list.py category home # by category

Cancelling

uv run workspace/skills/reminders/scripts/cancel.py 1

Then also remove the cron job: cron remove <cron_job_id>

Examples

One-off: "Remind me to call the dentist tomorrow at 9"

  1. create.py with due=tomorrow 09:00
  2. Cron at job for tomorrow 09:00
  3. link.py to connect them

Daily: "Remind me to take out the bins at 10am every day"

  1. create.py with due=tomorrow 10:00, recurring="daily"
  2. Cron job with expr "0 10 * * *"
  3. link.py to connect them

Errand reminder: "Remind me in 3.5 hours to pick up groceries"

  1. create.py with due=now+3.5hrs, category="home"
  2. Cron at job
  3. link.py to connect them

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.