← 返回 Skills 市场
qy-zhang

macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage)

作者 Fitzwilliam Zhang · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
277
总下载
0
收藏
2
当前安装
1
版本数
在 OpenClaw 中安装
/install macos-applescript-fallback
功能描述
Reliable macOS AppleScript fallback for creating Apple Reminders, Apple Notes, Apple Calendar events, and sending iMessage when direct tool/plugin routes are...
使用说明 (SKILL.md)

macOS AppleScript Fallback

Use local shell + AppleScript for 4 tasks:

  1. Create reminder (Reminders)
  2. Create note (Notes)
  3. Create calendar event (Calendar)
  4. Send iMessage (Messages)

Prefer bundled scripts in scripts/ over ad-hoc inline AppleScript for consistency and compatibility.

Quick Start

Run these scripts directly:

# reminder
./scripts/create_reminder.sh "今晚8点吃晚饭" "2026-03-22 20:00:00"

# note (HTML body required)
./scripts/create_note.sh "\x3Ch1>武汉三日游\x3C/h1>\x3Cp>Day1 黄鹤楼...\x3C/p>" "iCloud"

# calendar
./scripts/create_calendar_event.sh "跑步" "个人" "2026-03-23 08:00:00" "2026-03-23 08:30:00"

# iMessage
./scripts/send_imessage.sh "[email protected]" "武汉下周末天气:..."

Workflow

Step 1: Clarify user intent + required fields

  • Reminder: title, optional datetime
  • Note: title/body content (render as HTML), optional account name
  • Calendar: title, calendar name, start datetime, end datetime
  • iMessage: recipient (phone or Apple ID), message text

If missing required fields, ask one concise follow-up question.

Step 2: Execute script (not plugin)

Always call the corresponding script in scripts/.

Why:

  • avoids low-version parser differences
  • centralizes fallback logic
  • easier to debug and publish

Step 3: Confirm result to user

  • If script returns an object/id or sent, report success.
  • If no output but exit code is 0, still report success and suggest user verify in app UI.

Step 4: On failure, diagnose quickly

Use checks from references/troubleshooting.md.

Most frequent root causes:

  • macOS Automation permission prompt not approved
  • locale-dependent date parsing format
  • Messages iMessage service/account not initialized
  • target calendar/account name mismatch

Compatibility Rules (important)

  1. Avoid locale-fragile date strings where possible.
  2. Messages: resolve service by service type = iMessage, not by hard-coded service name.
  3. Calendar: if named calendar doesn’t exist, fallback to first calendar.
  4. Notes: if account iCloud is missing, fallback to default account.
  5. Notes body uses HTML (\x3Ch1>, \x3Cp>) for stable rendering.

Output style to user

Keep concise and concrete:

  • what was created/sent
  • key details (time/target)
  • returned ID (if any)
  • one-line next step if verification needed

Bundled Resources

scripts/

  • create_reminder.sh
    • args: \x3Ctitle> ["YYYY-MM-DD HH:MM:SS"]
  • create_note.sh
    • args: \x3Chtml-body> [account-name]
  • create_calendar_event.sh
    • args: \x3Ctitle> \x3Ccalendar-name> \x3Cstart> \x3Cend>
  • send_imessage.sh
    • args: \x3Cbuddy(phone/appleid)> \x3Cmessage>

references/

  • troubleshooting.md
    • permission/automation prompts
    • date parsing and locale issues
    • Messages service/account init
    • calendar/account fallback checks
    • diagnostic commands
安全使用建议
This skill appears to do exactly what it claims: run local AppleScript via osascript to create Reminders, Notes, Calendar events, and send iMessage. Before installing/using it: (1) review the small shell scripts yourself (they are present in the package and only call osascript); (2) be prepared to grant macOS Automation permission to the terminal/host app so these scripts can control Reminders/Notes/Calendar/Messages — that permission allows the host to automate those apps, so only grant it in a trusted environment; (3) ignore the troubleshooting suggestion to grant Full Disk Access unless you understand why your environment requires it (it's broader than needed for the listed tasks); (4) test on safe data first (e.g., create a dummy note/reminder) to confirm behavior; (5) do not expect any network exfiltration from these scripts — they operate locally and do not contact remote endpoints.
功能分析
Type: OpenClaw Skill Name: macos-applescript-fallback Version: 1.0.0 The skill bundle provides a set of macOS automation scripts using AppleScript (via osascript) to manage Reminders, Notes, Calendar events, and iMessages. The implementation in files like `scripts/send_imessage.sh` and `scripts/create_note.sh` is straightforward, matches the stated purpose in `SKILL.md`, and includes appropriate error handling and compatibility fallbacks without any signs of malicious intent, data exfiltration, or unauthorized execution.
能力评估
Purpose & Capability
Name/description match the provided artifacts: the skill bundles four small shell wrappers that call /usr/bin/osascript to create reminders, notes, calendar events, and send iMessage. There are no unrelated binaries, no external service credentials, and no surprising capabilities requested.
Instruction Scope
SKILL.md instructs the agent to always run the bundled scripts and to guide the user through minimal follow-ups; scripts only operate via AppleScript against local apps. The troubleshooting doc correctly points out the need to approve macOS Automation prompts. It also suggests granting Full Disk Access 'if your environment requires it' — Full Disk Access is not necessary for these actions in typical setups and is a broader permission than strictly required; treat that as an optional/advanced diagnostic step, not a default.
Install Mechanism
No install spec — instruction-only with bundled scripts. Scripts are small, present in the repo, and executed locally. No downloads, no package manager installs, and no code is fetched from external URLs.
Credentials
Skill requests no environment variables, no credentials, and no config paths. The only privilege implied is macOS Automation permission for the terminal/host app to control Reminders/Notes/Calendar/Messages, which is expected and proportional to the stated functionality.
Persistence & Privilege
always:false and no mechanisms to modify other skills or system-wide agent settings. The skill does not request persistent presence or elevated platform privileges beyond the standard macOS Automation permissions the scripts need to run.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install macos-applescript-fallback
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /macos-applescript-fallback 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
macos-applescript-fallback v1.0.0 - Initial release providing robust AppleScript-based fallback for creating Reminders, Notes, Calendar events, and sending iMessages on macOS. - Introduces shell scripts for each task, optimized for compatibility and easy troubleshooting. - Includes a structured workflow for clarifying intent, executing scripts, confirming results, and diagnosing errors. - Compatibility safeguards and fallbacks ensure reliable operation even on older or differently configured macOS systems. - Documentation added for user prompts, script arguments, troubleshooting, and best practices.
元数据
Slug macos-applescript-fallback
版本 1.0.0
许可证 MIT-0
累计安装 2
当前安装数 2
历史版本数 1
常见问题

macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage) 是什么?

Reliable macOS AppleScript fallback for creating Apple Reminders, Apple Notes, Apple Calendar events, and sending iMessage when direct tool/plugin routes are... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 277 次。

如何安装 macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage)?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install macos-applescript-fallback」即可一键安装,无需额外配置。

macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage) 是免费的吗?

是的,macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage) 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage) 支持哪些平台?

macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage) 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 macOS AppleScript Fallback (Reminders / Notes / Calendar / iMessage)?

由 Fitzwilliam Zhang(@qy-zhang)开发并维护,当前版本 v1.0.0。

💬 留言讨论