skills/macos/macos-automation/SKILL.md
AppleScript, JXA, Shortcuts, Automator, osascript, System Events, accessibility API
npx skillsauth add alphaonedev/openclaw-graph macos-automationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill automates tasks on macOS using tools like AppleScript, JXA, Shortcuts, Automator, osascript, System Events, and the accessibility API, enabling script-based control of apps and system functions.
Application('Finder').activate().open command.tell application "System Events" to click button "OK" of window "Main".osascript -e 'tell application "Finder" to make new folder at desktop' to create a folder; handle errors by checking the exit code.const app = Application('Safari'); app.activate(); app.documents[0].url = 'https://example.com'; to open and navigate a URL.shortcuts run "My Shortcut" -i '{"input": "text"}'; pass inputs as JSON for parameterized execution.tell application "Automator" to run workflow "path/to/workflow".osascript -e 'tell application "System Events" to keystroke "a" using {command down}' to simulate Command+A.osascript path/to/script.applescript; for JXA, use ES6 modules in .js files.$ export APPLESCRIPT_PATH='/path/to/script' and run via osascript $APPLESCRIPT_PATH.npm install osa and use const OSA = require('osa'); OSA.runAppleScript('...').$ACCESSIBILITY_ENABLED=1 after granting permissions in System Preferences.$osascript_API_KEY (though rare); more commonly, handle macOS permissions via tccutil CLI, e.g., tccutil reset AppleEvents com.example.app to reset access.osascript -e 'script' 2>&1 and parse stderr for messages like "Execution error: ...".try { Application('Finder').activate(); } catch (e) { console.error(e.message); } to handle app not found errors.shortcuts run "Name" --wait-for-result and check output for failures.sudo osascript -e '...', and handle permission errors by prompting users to adjust settings.osascript -e 'tell application "Safari" to open location "https://example.com"' followed by 'tell application "Safari" to activate'. This is useful for daily workflows; extend by adding error checks.shortcuts run "Resize Window" -i '{"app": "Finder", "width": 800}'. Combine with JXA for dynamic inputs, e.g., in a script: Application('Shortcuts').run('Resize Window', {input: JSON.stringify({app: 'Finder'})}).tools
Root web development: project structure, tooling selection, deployment decisions
development
WebAssembly: Rust/Go/C to WASM, wasm-bindgen, Emscripten, WASM Component Model
development
Vue 3: Composition API script setup, Pinia, Vue Router 4, SFCs, Vite, Nuxt 3
tools
Tailwind CSS 4: utility classes, config, JIT, arbitrary values, darkMode, plugins, shadcn/ui