mac-automationSkill mac-automation

这是一个Mac自动化技能,通过AppleScript脚本语言实现对macOS系统及应用程序的自动化控制。核心功能包括邮件操作、日历提醒管理、Safari浏览器控制、Finder文件操作、系统音量亮度调节、通知中心管理以及第三方应用自动化。该技能适用于需要批量处理、定时任务或简化重复性Mac操作的用户,提供高效的系统级自动化解决方案。关键词:Mac自动化,AppleScript脚本,macOS系统控制,邮件日历自动化,Safari浏览器脚本,Finder文件管理,系统音量调节,通知中心,第三方应用集成,自动化工作流。

0 次安装 0 次浏览 更新于 2/28/2026

name: mac-automation description: “此技能应在用户请求通过AppleScript进行Mac自动化时使用,包括:邮件操作、提醒事项/日历管理、Safari控制、Finder操作、系统控制(音量、亮度、通知、应用启动)、第三方应用(开发工具、任务管理、媒体播放器),或提及"AppleScript"或"自动化Mac"。” author: 7Sageer, Claude version: 0.0.5

通过AppleScript实现Mac自动化

此技能通过osascript命令执行AppleScript,实现对macOS应用程序和系统功能的控制。

核心原理

使用Bash工具通过osascript执行AppleScript命令:

osascript -e 'AppleScript代码在此'

对于多行脚本:

osascript <<'EOF'
tell application "应用名称"
    -- 命令在此
end tell
EOF

支持的应用程序和功能

1. 邮件

  • 发送带主题、正文、收件人的电子邮件
  • 读取未读邮件
  • 搜索邮件
  • 创建草稿

2. 提醒事项

  • 创建带截止日期的提醒
  • 按列表列出提醒
  • 完成/删除提醒
  • 创建提醒列表

3. 日历

  • 创建带时间、地点、备注的事件
  • 列出今天/即将发生的事件
  • 删除事件
  • 创建日历

4. 通知中心

  • 显示系统通知
  • 自定义标题、副标题、消息
  • 声音提醒

5. Safari

  • 打开URL
  • 获取当前页面信息
  • 执行JavaScript
  • 管理标签页和窗口

6. Finder

  • 打开文件夹
  • 获取/设置文件信息
  • 移动、复制、删除文件
  • 创建文件夹
  • 显示文件

7. 系统控制

  • 音量控制(静音、设置级别)
  • 亮度(通过外部工具)
  • 打开应用程序
  • 系统信息查询
  • 睡眠/重启/关机(谨慎使用)

8. 第三方应用程序

许多第三方应用支持AppleScript。常见类别包括开发工具(iTerm2、VS Code)、任务管理(OmniFocus、Things)、媒体播放器(Spotify)、浏览器(Chrome)和通信工具。要检查应用是否支持AppleScript,请打开脚本编辑器浏览其词典,或尝试基本命令如tell application "AppName" to get name

执行指南

安全注意事项

  1. 权限提示:首次使用某些应用会触发macOS权限对话框。如果自动化因权限失败,请通知用户。

  2. 敏感操作:对于破坏性操作(删除、关机),在执行前与用户确认。

  3. 隐私敏感数据:读取邮件或日历事件时,仅显示用户明确请求的内容。

错误处理

常见错误和解决方案:

  • "Application not found" → 检查应用名称拼写
  • "Not authorized" → 引导用户至系统偏好设置 > 隐私与安全性
  • "Can't get..." → 资源不存在,优雅处理

最佳实践

  1. 使用确切的应用名称:“Mail”、“Reminders”、“Calendar”、“Safari”、“Finder”
  2. 转义特殊字符:在字符串中使用\"表示引号
  3. 处理Unicode:AppleScript原生支持中文/Unicode
  4. 检查应用状态:某些操作要求应用正在运行

快速参考

通知

osascript -e 'display notification "消息内容" with title "标题"'

打开应用程序

osascript -e 'tell application "AppName" to activate'

音量控制

# 获取音量
osascript -e 'output volume of (get volume settings)'
# 设置音量(0-100)
osascript -e 'set volume output volume 50'
# 静音
osascript -e 'set volume output muted true'

系统命令

# 获取剪贴板
osascript -e 'the clipboard'
# 设置剪贴板
osascript -e 'set the clipboard to "text"'

附加资源

参考文件

有关按应用程序的详细AppleScript模式,请查阅:

  • references/mail-applescript.md - 邮件操作:发送、读取、搜索、草稿
  • references/reminders-applescript.md - 提醒事项操作:创建、列表、完成
  • references/calendar-applescript.md - 日历操作:事件、日历
  • references/safari-applescript.md - Safari操作:URL、标签页、JavaScript
  • references/finder-applescript.md - Finder操作:文件、文件夹
  • references/system-applescript.md - 系统控制:音量、应用、剪贴板

示例文件

examples/中的工作示例:

  • daily-briefing.applescript - 获取今日日历和未读邮件
  • quick-note.applescript - 从剪贴板创建提醒

实用脚本

scripts/中的脚本:

  • run-applescript.sh - 安全执行AppleScript的包装器

工作流模式

模式1:信息检索

  1. 执行AppleScript查询数据
  2. 解析输出
  3. 向用户呈现格式化结果

模式2:操作执行

  1. 如果是破坏性操作,与用户确认
  2. 执行AppleScript
  3. 验证成功
  4. 报告结果

模式3:多应用自动化

  1. 链式调用多个AppleScript
  2. 使用shell变量在调用间传递数据
  3. 在每个步骤处理错误

常见用户请求

用户请求 操作
“发送邮件给xxx” 使用邮件创建并发送
“提醒我明天…” 创建带截止日期的提醒
“添加日历事件” 创建日历事件
“打开xxx网站” Safari打开URL
“调低音量” 降低音量
“显示通知” 显示通知
“打开文件夹” Finder显示

故障排除

如果AppleScript失败:

  1. 检查应用是否安装
  2. 验证系统偏好设置中的权限
  3. 确保应用名称准确
  4. 先尝试手动运行应用
  5. 检查脚本中的语法错误

对于权限问题,引导用户至: 系统偏好设置 > 隐私与安全性 > 自动化

自我改进协议

当AppleScript执行失败或产生意外结果时,遵循此协议改进技能的参考文档:

1. 错误分析

  • 识别失败的根本原因
  • 确定是代码问题、权限问题还是概念误解
  • 检查错误是否可重现

2. 参考文件审查

  • references/目录中定位相关参考文件
  • 查看类似模式的现有示例
  • 识别错误是否源于不正确或不完整的示例

3. 文档更新

当您识别出参考文档中可修复的问题时:

对于不正确的示例:

  • 使用正确的实现更新示例代码
  • 添加内联注释解释修复
  • 测试更正后的代码以验证其工作

对于缺失的边缘情况:

  • 添加新示例演示正确方法
  • 包含解释性注释说明为何需要此方法

对于常见陷阱:

  • 添加"常见陷阱"或"重要说明"部分
  • 记录用户可能遇到的错误消息
  • 解释正确的解决方案

4. 更新指南

使用编辑工具修改参考文件:

编辑工具:references/{app}-applescript.md
- 修复不正确的代码示例
- 为已知问题添加警告说明
- 包含错误消息和解决方案

5. 文档标准

更新参考文件时,保持:

  • 清晰、可工作的代码示例
  • 复杂逻辑的内联注释
  • 错误消息及其解决方案
  • 重要修复的日期戳说明

6. 版本跟踪

重大改进后:

  • 更新SKILL.md前言中的版本号
  • 考虑在变更日志中记录主要修复

此协议确保技能根据实际使用和遇到的错误持续改进。