首页龙虾技能列表 › macOS Calendar — 苹果日历

macOS Calendar — 苹果日历

v1.2.0

管理macOS日历,包括创建、查询和修改日程事件。

4· 6,100·70 当前·73 累计
by @lucaperret (Luca)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/2/26
安全扫描
VirusTotal
无害
查看报告
OpenClaw
安全
high confidence
该技能的代码和指令与其所述目的(macOS日历管理)一致,它使用AppleScript或日历CLI进行交互,请求适当的配置,不请求无关的凭证或意外端点。
评估建议
此技能似乎确实做到了它声称的:macOS日历管理脚本,用于日程操作。安装或运行之前:1) 确认您对授予日历访问权限感到满意——该工具可以读取和修改您的日历。2) 仅在您信任的环境中运行,避免修改敏感日程。3) 技能不请求凭证,但注意不要向脚本传递敏感信息,除非您信任整个工具链。4) 如果您想要更高的保证,请在运行前在本地审查包含的脚本。...
详细分析 ▾
用途与能力
Name/description match the implementation. Required binaries (osascript, python3) are appropriate for AppleScript-driven Calendar automation and JSON parsing. No unrelated credentials, binaries, or config paths are requested.
指令范围
Runtime instructions and the script stay within the stated purpose (listing calendars, creating events via AppleScript). There are no network endpoints or unexpected data exfiltration. One privacy note: the script writes an append-only log (logs/calendar.log) containing timestamp, command, calendar, and summary — this can store sensitive event titles/descriptions locally and should be considered before installing.
安装机制
No install spec (instruction-only with an included shell script). This is low-risk because nothing is fetched from remote URLs or installed system-wide by the skill itself.
凭证需求
The skill requests no credentials or special environment variables. It uses SKILL_DIR (if present) to place logs; otherwise logs are written relative to the script location. No unrelated secrets or config paths are accessed.
持久化与权限
always:false and no system-wide configuration changes. The script will open Calendar.app if not running and writes a local log; it does not modify other skills or request persistent elevated privileges.
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

🖥️ OSmacOS

版本

latestv1.2.02026/2/18

初始版本,支持macOS日历管理

● 无害

安装命令 点击复制

官方npx clawhub@latest install macos-calendar
镜像加速npx clawhub@latest install macos-calendar --registry https://cn.clawhub-mirror.com

技能文档

Manage Apple Calendar events via $SKILL_DIR/scripts/calendar.sh. All date handling uses relative math (current date + N * days) to avoid locale issues (FR/EN/DE date formats).

Quick start

List calendars

Always list calendars first to find the correct calendar name:

"$SKILL_DIR/scripts/calendar.sh" list-calendars

Create an event

echo '' | "$SKILL_DIR/scripts/calendar.sh" create-event

JSON fields:

FieldRequiredDefaultDescription
summaryyes-Event title
calendarnofirst calendarCalendar name (from list-calendars)
descriptionno""Event notes
offset_daysno0Days from today (0=today, 1=tomorrow, 7=next week)
iso_dateno-Absolute date YYYY-MM-DD (overrides offset_days)
hourno9Start hour (0-23)
minuteno0Start minute (0-59)
duration_minutesno30Duration
alarm_minutesno0Alert N minutes before (0=no alarm)
all_daynofalseAll-day event
recurrenceno-iCal RRULE string. See references/recurrence.md

Interpreting natural language

Map user requests to JSON fields:

User saysJSON
"tomorrow at 2pm"offset_days: 1, hour: 14
"in 3 days"offset_days: 3
"next Monday at 10am"Calculate offset_days from today to next Monday, hour: 10
"February 25 at 3:30pm"iso_date: "2026-02-25", hour: 15, minute: 30
"every weekday at 9am"hour: 9, recurrence: "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR"
"remind me 1 hour before"alarm_minutes: 60
"all day event on March 1"iso_date: "2026-03-01", all_day: true
For "next Monday", "next Friday" etc: compute the day offset using the current date. Use date command if needed:

# Days until next Monday (1=Monday)
target=1; today=$(date +%u); echo $(( (target - today + 7) % 7 ))

Example prompts

These are real user prompts and the commands you should run:

"Remind me to call the dentist in 2 days"

"$SKILL_DIR/scripts/calendar.sh" list-calendars
Then:
echo '{"calendar":"Personnel","summary":"Call dentist","offset_days":2,"hour":9,"duration_minutes":15,"alarm_minutes":30}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"Schedule a team sync every Tuesday at 2pm with a 10-min reminder"

echo '{"calendar":"Work","summary":"Team sync","hour":14,"duration_minutes":60,"recurrence":"FREQ=WEEKLY;BYDAY=TU","alarm_minutes":10}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"Block July 15 as a vacation day"

echo '{"calendar":"Personnel","summary":"Vacances","iso_date":"2026-07-15","all_day":true}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"I have a doctor appointment next Thursday at 3:30pm, remind me 1 hour before"

# First compute offset_days to next Thursday (4=Thursday)
target=4; today=$(date +%u); offset=$(( (target - today + 7) % 7 )); [ "$offset" -eq 0 ] && offset=7
Then:
echo "{\"calendar\":\"Personnel\",\"summary\":\"Doctor appointment\",\"offset_days\":$offset,\"hour\":15,\"minute\":30,\"duration_minutes\":60,\"alarm_minutes\":60}" | "$SKILL_DIR/scripts/calendar.sh" create-event

"Set up a daily standup at 9am on weekdays for the next 4 weeks"

echo '{"calendar":"Work","summary":"Daily standup","hour":9,"duration_minutes":15,"recurrence":"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR;COUNT=20"}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"Add a biweekly 1-on-1 with my manager on Fridays at 11am"

echo '{"calendar":"Work","summary":"1-on-1 Manager","hour":11,"duration_minutes":30,"recurrence":"FREQ=WEEKLY;INTERVAL=2;BYDAY=FR","alarm_minutes":5}' | "$SKILL_DIR/scripts/calendar.sh" create-event

Critical rules

  • Always list calendars first if the user hasn't specified one — calendars marked [read-only] cannot be used for event creation
  • Never use hardcoded date strings in AppleScript — always use offset_days or iso_date
  • Confirm the calendar name with the user if multiple personal calendars exist
  • Never target a [read-only] calendar — the script will reject it with an error
  • For recurring events, consult references/recurrence.md for RRULE syntax
  • Pass JSON via stdin — never as a CLI argument (avoids leaking data in process list)
  • All fields are validated by the script (type coercion, range checks, format validation) — invalid input is rejected with an error message
  • All actions are logged to logs/calendar.log with timestamp, command, calendar, and summary
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务