Help us improve
Share bugs, ideas, or general feedback.
From mactools
查询、创建、修改、删除 macOS 日历事件。当用户需要查看日程、创建会议、搜索日历事件时使用。Use when the user needs to view schedules, create meetings, or search calendar events. Keywords: 日历, Calendar, 日程, 会议, 事件, 安排.
npx claudepluginhub n0rvyn/indie-toolkit --plugin mactoolsHow this skill is triggered — by the user, by Claude, or both
Slash command
/mactools:calendarhaikuThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
通过 EventKit 框架连接 macOS Calendar,执行日历事件的查看、搜索、创建、删除操作。使用编译的 Swift 二进制,首次运行自动编译。
Guides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
通过 EventKit 框架连接 macOS Calendar,执行日历事件的查看、搜索、创建、删除操作。使用编译的 Swift 二进制,首次运行自动编译。
BASE="${CLAUDE_PLUGIN_ROOT:-${CODEX_HOME:-$HOME/.codex}}"
SKILLS_ROOT="$BASE/skills"
[ -d "$SKILLS_ROOT/calendar/scripts" ] || SKILLS_ROOT="$BASE/indie-toolkit/mactools/skills"
${SKILLS_ROOT}/calendar/scripts/calendar.sh
${SKILLS_ROOT}/calendar/scripts/calendar.sh today
${SKILLS_ROOT}/calendar/scripts/calendar.sh today -n 10
# Next 7 days (default)
${SKILLS_ROOT}/calendar/scripts/calendar.sh upcoming
# Next 14 days
${SKILLS_ROOT}/calendar/scripts/calendar.sh upcoming 14
# Next 3 days, max 5 results
${SKILLS_ROOT}/calendar/scripts/calendar.sh upcoming 3 -n 5
${SKILLS_ROOT}/calendar/scripts/calendar.sh search "Team Meeting"
${SKILLS_ROOT}/calendar/scripts/calendar.sh search "Standup" -n 5
Search scope: event title, location, and notes within 1 year back to 1 year ahead. Case-insensitive.
${SKILLS_ROOT}/calendar/scripts/calendar.sh calendars
# Timed event
${SKILLS_ROOT}/calendar/scripts/calendar.sh create "Team Meeting" "2026-02-10 09:00" "2026-02-10 10:00"
# Timed event with options
${SKILLS_ROOT}/calendar/scripts/calendar.sh create "Lunch" "2026-02-10 12:00" "2026-02-10 13:00" --calendar "Personal" --location "Restaurant" --notes "Bring gift"
# All-day event
${SKILLS_ROOT}/calendar/scripts/calendar.sh create "Vacation" "2026-02-15" "2026-02-16"
# All-day event on specific calendar
${SKILLS_ROOT}/calendar/scripts/calendar.sh create "Conference" "2026-03-01" "2026-03-03" --calendar "Work"
${SKILLS_ROOT}/calendar/scripts/calendar.sh delete "Team Meeting" "2026-02-10"
| Parameter | Description | Example |
|---|---|---|
-n <count> | Max results (default: 20) | -n 10 |
--calendar "Name" | Target calendar (create only) | --calendar "Work" |
--location "Place" | Event location (create only) | --location "Room A" |
--notes "Text" | Event notes (create only) | --notes "Bring laptop" |
| Format | Usage | Example |
|---|---|---|
YYYY-MM-DD HH:MM | Timed event start/end | "2026-02-10 09:00" |
YYYY-MM-DD | All-day event start/end | "2026-02-10" |
When both start and end use YYYY-MM-DD format (no time), the event is created as all-day.
Events are displayed as:
1. Event Title
Calendar: Work | Date: 2026-02-10 09:00 - 2026-02-10 10:00 | Location: Room A
2. Day Off
Calendar: Personal | Date: 2026-02-15 (all-day)
# What's on today?
${SKILLS_ROOT}/calendar/scripts/calendar.sh today
# What's coming this week?
${SKILLS_ROOT}/calendar/scripts/calendar.sh upcoming 7
# First check available calendars
${SKILLS_ROOT}/calendar/scripts/calendar.sh calendars
# Create the event
${SKILLS_ROOT}/calendar/scripts/calendar.sh create "Project Review" "2026-02-12 14:00" "2026-02-12 15:00" --calendar "Work" --location "Conference Room B" --notes "Q1 progress review"
# Search for the event
${SKILLS_ROOT}/calendar/scripts/calendar.sh search "Project Review"
# Delete it
${SKILLS_ROOT}/calendar/scripts/calendar.sh delete "Project Review" "2026-02-12"
| Issue | Solution |
|---|---|
Calendar access not granted | Enable in System Settings > Privacy & Security > Calendars |
Calendar "X" not found | Check exact calendar name with calendars command |
No matching event found | Event title must match exactly; verify with search first |
Invalid date format | Use YYYY-MM-DD HH:MM or YYYY-MM-DD |