Problem
The task-management skill in the productivity plugin handles "remind me to..." by adding a line to TASKS.md. This creates a static task — there's no time-based delivery, no notification, no recurrence. The user has to manually check the file to see their reminders.
In production, this is the #1 gap we hit. Sales reps say "remind me to call Acme Friday at 8am" and expect a notification at that time. Instead they get a bullet point in a markdown file that nobody checks.
What's needed
Time-based reminders that deliver themselves — via Slack DM, email, or calendar notification — when they come due. Key requirements from our production usage:
- Natural language time parsing ("next Tuesday at 2pm", "every weekday at 9am")
- Delivery via ~~chat at the scheduled time
- Recurrence (daily, weekly, weekdays, monthly)
- Cross-team: "remind Sarah to send the proposal" should notify Sarah, not just the sender
Current workaround
We built a full reminder system outside the plugin framework: database storage, 15-minute cron checker, Slack DM delivery, recurrence handling, and server-side date correction (Claude sometimes generates timestamps with the wrong year — see below).
PR submitted
PR #140 adds a proactive-reminders skill that documents this pattern, including the delivery mechanism, storage schema, date validation, and cross-team reminders. It complements task-management — tasks track what needs doing, reminders ensure it gets done on time.
Production lesson: date validation is critical
Claude's knowledge cutoff means it sometimes generates timestamps with the wrong year (e.g., 2025-03-25 instead of 2026-03-25). Reminders with past dates fire immediately. We had to add server-side auto-correction:
IF remind_at is in the past:
TRY replacing year with current year
TRY replacing year with next year (Dec→Jan edge case)
ELSE reject
Any reminder implementation needs this validation layer.
Problem
The
task-managementskill in the productivity plugin handles "remind me to..." by adding a line toTASKS.md. This creates a static task — there's no time-based delivery, no notification, no recurrence. The user has to manually check the file to see their reminders.In production, this is the #1 gap we hit. Sales reps say "remind me to call Acme Friday at 8am" and expect a notification at that time. Instead they get a bullet point in a markdown file that nobody checks.
What's needed
Time-based reminders that deliver themselves — via Slack DM, email, or calendar notification — when they come due. Key requirements from our production usage:
Current workaround
We built a full reminder system outside the plugin framework: database storage, 15-minute cron checker, Slack DM delivery, recurrence handling, and server-side date correction (Claude sometimes generates timestamps with the wrong year — see below).
PR submitted
PR #140 adds a
proactive-remindersskill that documents this pattern, including the delivery mechanism, storage schema, date validation, and cross-team reminders. It complementstask-management— tasks track what needs doing, reminders ensure it gets done on time.Production lesson: date validation is critical
Claude's knowledge cutoff means it sometimes generates timestamps with the wrong year (e.g.,
2025-03-25instead of2026-03-25). Reminders with past dates fire immediately. We had to add server-side auto-correction:Any reminder implementation needs this validation layer.