Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计通过

automating-mac-apps自动化 Mac 应用程序

Agent Skill

automating-mac-apps 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

3,006

周安装

124

GitHub Stars

28

下载量

982
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:automating-mac-apps(自动化 Mac 应用程序)
来源仓库:https://github.com/spillwavesolutions/automating-mac-apps-plugin
仓库路径:skills/automating-mac-apps
安装命令:
npx skills add https://github.com/spillwavesolutions/automating-mac-apps-plugin --skill automating-mac-apps
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/spillwavesolutions/automating-mac-apps-plugin --skill automating-mac-apps

简介

用于查找、检索和筛选 macOS 应用自动化相关信息,适合快速定位候选结果。

  • 适用于 Apple Events、AppleScript 和 JXA 跨应用工作流搭建。
  • 使用时需注意 TCC 权限和沙箱限制,推荐使用 PyXA 作为现代替代方案。
  • 安装方式:通过 npx skills add 从 GitHub 仓库安装,支持 Codex、Claude、Cursor、Gemini CLI。
  • 建议确认权限范围和维护状态,避免绕过系统安全机制。

SKILL.md

Automating macOS Apps (Apple Events, AppleScript, JXA)

Technology Status

JXA and AppleScript are legacy (last major updates: 2015-2016). Modern alternatives:

  • PyXA: Active Python automation (see installation below)
  • Shortcuts App: Visual workflow builder
  • Swift/Objective-C: Production-ready automation

macOS Sequoia 15 Notes

Test scripts on target macOS due to:

  • Stricter TCC permissions
  • Enhanced Apple Events security
  • Sandbox improvements

Core framing (use this mental model)

  • Apple Events: The underlying inter-process communication (IPC) transport for macOS automation.
  • AppleScript: The original DSL (Domain-Specific Language) for Apple Events: best for discovery, dictionaries, and quick prototypes.
  • JXA (JavaScript for Automation): A JavaScript binding to the Apple Events layer: best for data handling, JSON, and maintainable logic.
  • ObjC Bridge: JavaScript access to Objective-C frameworks (Foundation, AppKit) for advanced macOS capabilities beyond app dictionaries.

When to use which

  • Use AppleScript for discovery, dictionary exploration, UI scripting, and quick one-offs.
  • Use JXA for robust logic, JSON pipelines, integration with Python/Node, and long-lived automation.
  • Hybrid pattern (recommended): discover in AppleScript, implement in JXA for production use.

When to use this skill

  • Foundation for app-specific skills (Calendar, Notes, Mail, Keynote, Excel, Reminders).
  • Run the automation warm-up scripts before first automation to surface macOS permission prompts.
  • Use as the base reference for permissions, shell integration, and UI scripting fallbacks.

Workflow (default)

  1. Identify target app + dictionary using Script Editor.
  2. Prototype a minimal command that works.

- *Example*: tell application "Finder" to get name of first item in desktop

  1. Decide language using the rules above.
  2. Harden: add error handling, timeouts, and permission checks.

- *JXA*: try {...} catch (e) {console.log('Error:', e.message);} - *AppleScript*: try... on error errMsg... end try

  1. Validate: run a read-only command and check outputs.

- *Example*: osascript -e 'tell application "Finder" to get name of home' - Confirm: Output matches expected (e.g., user home folder name)

  1. Integrate via osascript for CLI or pipeline use.
  2. UI scripting fallback only when the dictionary is missing/incomplete.

- *Example UI Script*: tell application "System Events" to click button 1 of window 1 of process "App" - *Example JXA*: Application('System Events').processes.byName('App').windows[0].buttons[0].click()

Validation Checklist

  • Automation/Accessibility permissions granted (System Settings > Privacy & Security)
  • App is running: Application("App").running() returns true
  • State checked before acting (e.g., folder exists)
  • Dictionary method used (not UI scripting)
  • Delays/retries added for UI operations
  • Read-only test command succeeds
  • Output matches expected values

Automation permission warm-up

  • Use before first automation run or after macOS updates to surface prompts:

- All apps at once: skills/automating-mac-apps/scripts/request_automation_permissions.sh (or .py). - Per-app: skills/automating-<app>/scripts/set_up_<app>_automation.{sh,py} (calendar, notes, mail, keynote, excel, reminders). - Voice Memos (no dictionary): skills/automating-voice-memos/scripts/set_up_voice_memos_automation.sh to activate app + check data paths; enable Accessibility + consider Full Disk Access.

  • Run from the same host you intend to automate with (Terminal vs Python) so the correct app gets Automation approval.
  • Each script runs read-only AppleScript calls (list accounts/calendars/folders, etc.) to request Terminal/Python control; click “Allow” when prompted.

Modern Python Alternatives to JXA

PyXA (Python for macOS Automation) - Preferred for new projects:

PyXA Features

  • Active development (v0.2.3+), modern Python syntax
  • App automation: Safari, Calendar, Reminders, Mail, Music
  • UI scripting, clipboard, notifications, AppleScript integration
  • Method chaining: app.lists().reminders().title()

PyXA Installation {#pyxa-installation}

# Install PyXA
pip install mac-pyxa

# Or with pip3 explicitly
pip3 install mac-pyxa

# Requirements:
# - Python 3.10+ (check with: python3 --version)
# - macOS 12+ (Monterey or later recommended)
# - PyObjC is installed automatically as a dependency

# Verify installation
python3 -c "import PyXA; print(f'PyXA {PyXA.__version__} installed successfully')"
Note: All app-specific skills in this plugin that show PyXA examples assume PyXA is installed. See this section for installation.

PyXA Example (Safari Automation)

import PyXA

# Launch Safari and navigate
safari = PyXA.Safari()
safari.activate()
safari.open_location("https://example.com")

# Get current tab URL
current_url = safari.current_tab.url
print(f"Current URL: {current_url}")

PyXA Example (Reminders)

import PyXA

reminders = PyXA.Reminders()
work_list = reminders.lists().by_name("Work")

# Add new reminder
new_reminder = work_list.reminders().push({
    "name": "Review PyXA documentation",
    "body": "Explore modern macOS automation options"
})

PyXA Official Resources:


PyObjC (Python-Objective-C Bridge) - For Low-Level macOS Integration:

PyObjC Capabilities

  • Direct Framework Access: AppKit, Foundation, and all macOS frameworks
  • Apple Events: Send Apple Events via Scripting Bridge
  • Script Execution: Run AppleScript or JXA from Python
  • System APIs: Direct access to CalendarStore, AddressBook, SystemEvents

Installation

pip install pyobjc
# Installs bridges for major frameworks

PyObjC Example (AppleScript Execution)

from Foundation import NSAppleScript

# Execute AppleScript from Python
script_source = '''
tell application "Safari"
    return URL of current tab
end tell
'''

script = NSAppleScript.alloc().initWithSource_(script_source)
result, error = script.executeAndReturnError_(None)

if error:
    print(f"Error: {error}")
else:
    print(f"Current Safari URL: {result.stringValue()}")

PyObjC Example (App Control via Scripting Bridge)

from ScriptingBridge import SBApplication

# Control Mail app
mail = SBApplication.applicationWithBundleIdentifier_("com.apple.Mail")
inbox = mail.inboxes()[0]  # Access first inbox

# Get unread message count
unread_count = inbox.unreadCount()
print(f"Unread messages: {unread_count}")

PyObjC Official Resources:


JXA Status

JXA has no updates since 2016. Use PyXA for new projects when possible.

When Not to Use

  • Cross-platform automation (use Selenium/Playwright for web)
  • Full UI testing (use XCUITest or Appium)
  • Environments blocking Automation/Accessibility permissions
  • Non-macOS platforms
  • Simple shell scripting tasks (use Bash directly)

Related Skills

  • App-specific automation (create automating-[app] skills as needed)
  • ci-cd-tcc for advanced permission management in automated environments
  • mastering-applescript for AppleScript-focused workflows

Security Best Practices

Permission Management:

  • Request minimal required permissions to reduce security risks
  • Use code signing for production scripts (Developer ID certificate)
  • Store credentials securely (Keychain, not hardcoded)
  • Validate all inputs to prevent injection attacks

Official Apple Security Guidance:

Output expectations

  • Keep examples minimal and runnable.
  • JSON Output: For CLI pipelines, use JSON.stringify(result) in JXA.

- *Example*: console.log(JSON.stringify({files: files, count: files.length}))

  • Exit Codes: Ensure osascript exits with 0 for success, non-zero for failure.

What to load

Tier 1: Essentials (Start Here)

  • JXA Syntax & Patterns: automating-mac-apps/references/basics.md
  • AppleScript Basics: automating-mac-apps/references/applescript-basics.md
  • Cookbook (Common Recipes): automating-mac-apps/references/recipes.md

Tier 2: Advanced & Production

  • JXA Cookbook (Condensed): automating-mac-apps/references/cookbook.md
  • Performance Patterns: automating-mac-apps/references/applescript-performance.md
  • CI/CD & Permissions: automating-mac-apps/references/ci-cd-tcc.md
  • Shell Environment: automating-mac-apps/references/shell-environment.md
  • UI Scripting Inspector: automating-mac-apps/references/ui-scripting-inspector.md

Tier 3: Specialized & Reference

  • PyXA Core API Reference (complete class/method docs): automating-mac-apps/references/pyxa-core-api-reference.md
  • PyXA Basics: automating-mac-apps/references/pyxa-basics.md (Modern Python automation fundamentals)
  • AppleScript → PyXA Conversion: automating-mac-apps/references/applescript-to-pyxa-conversion.md (Migration guide with examples)
  • Translation Checklist (AppleScript → JXA): automating-mac-apps/references/translation-checklist.md (Comprehensive guide with examples and pitfalls)
  • JXA Helpers Library: automating-mac-apps/references/helpers.js
  • whose Batching Patterns: automating-mac-apps/references/whos-batching.md
  • Dictionary Strategies: automating-mac-apps/references/dictionary-strategies.md
  • ASObjC Helpers: automating-mac-apps/references/applescript-asobjc.md

Related Skills:

  • web-browser-automation: Complete browser automation guide (Chrome, Edge, Brave, Arc)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

33.86%
按下载量换算333

Claude

29.86%
按下载量换算293

Cursor

21.14%
按下载量换算208

Gemini CLI

8.76%
按下载量换算86

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills