calmly
使用 EventKit 从命令行管理 macOS 日历事件。在没有 AppleScript 对话框或 UI 提示的 macOS 上创建、列出或查看日历事件时使用。支持全天事件、多日事件和定时事件。适用于 iCloud、本地和 CalDAV 日历。
安装 / 下载方式
TotalClaw CLI推荐
totalclaw skills install shop:totalclaw:totalclaw~halbotley-calmlycURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~halbotley-calmly/file -o halbotley-calmly.md## 概述(中文) 使用 EventKit 从命令行管理 macOS 日历事件。在没有 AppleScript 对话框或 UI 提示的 macOS 上创建、列出或查看日历事件时使用。支持全天事件、多日事件和定时事件。适用于 iCloud、本地和 CalDAV 日历。 ## 原文 # calmly A calm CLI for macOS Calendar. Manage iCloud and local calendars without dialogs, prompts, or UI interruptions. ## Why calmly? - **AppleScript hangs** — Calendar scripting often freezes waiting for permissions - **ICS imports pop dialogs** — Can't automate without user interaction - **icalBuddy is read-only** — Can't create events calmly uses EventKit directly, so it works silently. ## Installation ```bash brew tap halbotley/tap brew install calmly ``` First run prompts for Calendar access (System Settings → Privacy → Calendars). One-time only. ## Commands ### List calendars ```bash calmly list ``` ### View upcoming events ```bash calmly events Work # Next 30 days calmly events Family 14 # Next 14 days ``` ### Create all-day event ```bash calmly add Work "Day Off" 2025-03-15 ``` ### Create multi-day event ```bash calmly add Family "Vacation" 2025-07-01 2025-07-14 ``` ### Create timed event ```bash calmly addtimed Work "Meeting" 2025-03-15 09:00 10:30 calmly addtimed Kids "Swim Practice" 2025-02-03 07:00 08:30 ``` ## Batch Event Creation For recurring events, loop in bash: ```bash # Morning practice every Tuesday/Thursday for 6 weeks for d in 2025-02-04 2025-02-06 2025-02-11 2025-02-13; do calmly addtimed Kids "🏊 AM Practice" "$d" 07:00 08:30 done ``` ## Date Verification Before creating events, verify day/date alignment: ```bash for d in 3 4 5 6 7; do date -j -f "%Y-%m-%d" "2025-02-0$d" "+%A %B %d"; done ``` ## Notes - Dates use `YYYY-MM-DD` format - Times use 24-hour `HH:MM` format - Calendar names are case-insensitive - Events sync to iCloud automatically - No delete command yet — delete via Calendar app or iCloud web