skills/mac-reminder/SKILL.md
Manage personal todos via macOS Reminders.app. ⚠️ MUST use when user asks to "add a todo", "remind me", "记一下", "加个待办", "待办列表", "完成待办", "查看待办", or any personal task/reminder management. 🔴 Trigger even when user doesn't explicitly say "reminder" if the intent is personal task tracking. Use todowrite for session-level coding steps; use dev-flow for product plans.
npx skillsauth add sampx/agent-tools mac-reminderInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Manage personal daily tasks via macOS Reminders.app. Not for coding todos or product plans.
| User Intent | Skill |
|-------------|-------|
| Personal reminders, daily tasks, "remind me to..." | This skill |
| Session coding steps, tracking implementation | todowrite tool |
| Product/feature plans, Issue-driven development | dev-flow skill |
reminder.sh with appropriate command./scripts/reminder.sh list [status]
# status: pending (default) | done | all
Output:
☐ Buy milk
☐ Call dentist
☑ Submit report
When: User asks to "看看待办", "show my todos", "what do I need to do"
./scripts/reminder.sh add "<name>"
Output:
Added: Buy milk tomorrow (id: x-apple-reminder://...)
When: User says "帮我记一下...", "add a todo", "remind me to..."
./scripts/reminder.sh complete "<query>"
Features:
Output:
Completed: Buy milk
When: User says "xxx完成了", "mark xxx as done", "complete xxx"
./scripts/reminder.sh delete "<query>"
Features: Same fuzzy matching as complete
Output:
Deleted: Old task
When: User says "删除xxx", "remove xxx", "don't need xxx anymore"
| Variable | Default | Description |
|----------|---------|-------------|
| REMINDER_LIST | 提醒 | Target Reminders list |
Override with environment variable:
REMINDER_LIST="Work" ./scripts/reminder.sh list
Automation Permission: First run triggers macOS permission prompt
iCloud Sync: Changes sync to iPhone/iPad automatically (1-2 min delay)
Default List: Script uses "提醒" list by default; create in Reminders.app if missing
When user says relative time words, default to reasonable hours:
| User says | Interpreted as | |-----------|---------------| | 明天/后天/下周X | That day at 9:00 AM | | 今晚/今天晚上 | Today at 20:00 | | 今天下午 | Today at 14:00 | | 今天上午 | Today at 9:00 |
Never use 0:00 — humans sleep at night. Use current date + N days then set hours to 9.
Always execute from skill root directory:
cd .agents/skills/mac-reminder
./scripts/reminder.sh <command>
| User Prompt | Command |
|-------------|---------|
| "帮我记一下明天买牛奶" | ./scripts/reminder.sh add "明天买牛奶" |
| "看看我的待办" | ./scripts/reminder.sh list |
| "买牛奶完成了" | ./scripts/reminder.sh complete "牛奶" |
| "删除旧的待办" | ./scripts/reminder.sh delete "旧" |
| "显示已完成的" | ./scripts/reminder.sh list done |
| "所有待办" | ./scripts/reminder.sh list all |
For AppleScript patterns and performance optimization, see references/applescript.md.
These verify skill quality after implementation:
Add and List
./scripts/reminder.sh list shows "☐ 明天买牛奶"Complete
./scripts/reminder.sh list done shows "☑ 明天买牛奶"Delete
List Filter
tools
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
testing
Master specification for WopalSpace. [MUST LOAD FIRST] — Load this skill when Wopal is uncertain how to proceed, task intent is ambiguous, or performing ontology/space maintenance. Triggers: Ambiguous task intent, "what workflow to use", "what skill to load", skill management (install/remove/search), space maintenance (worktrees, sync, PR contribution, promote), multi-space management. [CRITICAL] MUST LOAD whenever interacting with ontology repo operations (update/sync/contribute/promote/PR), even if the user does not explicitly say "upstream sync".
development
Workspace-level Git worktree management — create, list, remove, and prune isolated development environments. Use this skill whenever the user needs to create a worktree, set up an isolated workspace, work on multiple features in parallel, list existing worktrees, check what worktrees exist, remove or delete a worktree, clean up stale worktrees, or manage git working trees in any way. Triggers include "create worktree", "new worktree", "list worktrees", "show worktrees", "remove worktree", "delete worktree", "clean up worktree", "prune worktree", "isolated environment", "parallel development", "worktree for <project>", or any request involving git worktree operations.
development
Issue/Plan-driven development workflow. Tasks must be backed by a GitHub Issue or Plan. Trigger: issue references like #14, creating issues, creating plans, implementing plans, executing plans, checking plans, verifying plans, Plan lifecycle transitions (approve/complete/verify/archive), decomposing PRDs into Issues. Skip: spec-driven workflows, research/discussion/explanation only, small ad-hoc changes that don't need an Issue or Plan.