{
  "slug": "keyboard-maestro",
  "name": "Keyboard Maestro",
  "aliases": [],
  "vendor": { "name": "Stairways Software Pty Ltd", "slug": "stairways-software", "website": "https://www.stairways.com/" },
  "homepage_url": "https://www.keyboardmaestro.com/main/",
  "docs_url": "https://wiki.keyboardmaestro.com/",
  "pricing_url": "https://www.keyboardmaestro.com/main/",
  "product_type": "application",
  "product_status": "active",
  "summary": "Commercial macOS macro application that runs sequences of actions from hotkeys, typed strings, application, time, device and system triggers",
  "description": "Keyboard Maestro is a commercial macOS automation application from Stairways Software, sold as a one-time license with paid major upgrades and a free trial. Its unit of work is the macro: a list of actions grouped into macro groups that control when the macro is available, fired by triggers such as hot keys, typed strings, application launches, time schedules, USB or Wi-Fi changes, folder changes, clipboard changes or remote URL calls.\n\nThe action library covers window and application control, keystroke and mouse simulation, clipboard and text manipulation, image recognition on screen, web-form filling, file operations, variables, conditions and loops, and steps that run shell scripts, AppleScript, JavaScript for Automation or Swift. A palette and conflict-menu system lets many macros share a few keys. The wiki serves as the reference manual and a long-running forum carries community macros.\n\nIt suits Mac power users who want GUI-level automation with a visual editor rather than code, and it is often used alongside Hammerspoon or Alfred. It is proprietary, macOS-only (10.13 or later for the current version), and heavy GUI scripting via screen-image matching can be fragile when application layouts change.",
  "capabilities": ["Macros triggered by hot keys, typed strings, apps, time, devices and events", "Keystroke, mouse and window control with screen-image matching", "Clipboard, text and variable manipulation with conditions and loops", "Shell, AppleScript, JavaScript and Swift script actions", "Macro palettes and per-application macro groups", "Remote and URL triggers"],
  "workflows": ["Expand typed abbreviations into templates", "Set up window layouts when an external display connects", "Fill repetitive web forms with recorded steps"],
  "advantages": ["Visual editor with a very large action library", "One-time purchase, no subscription", "Mature product with extensive wiki and forum"],
  "limitations": ["macOS only and proprietary", "Image-based GUI automation breaks when interfaces change", "Paid upgrades between major versions"],
  "prerequisites": ["macOS 10.13 or later", "Accessibility permission"],
  "audiences": ["Mac power users", "Knowledge workers automating repetitive GUI tasks"],
  "alternatives": ["hammerspoon", "shortcuts", "alfred", "raycast"],
  "categories": [{ "slug": "macos-automation", "primary": true }],
  "tags": ["macos", "automation", "macros", "hotkeys", "proprietary"],
  "use_cases": ["automate-desktop-tasks"],
  "operating_systems": ["macos"],
  "execution_modes": ["local"],
  "interfaces": ["desktop"],
  "deployment_models": ["desktop"],
  "integrations": ["AppleScript", "Shell", "JavaScript for Automation", "Swift", "URL schemes"],
  "data_formats": [".kmmacros exports"],
  "languages": [],
  "source_model": "proprietary",
  "pricing_model": ["paid"],
  "pricing_checked_at": "2026-11-02",
  "self_hostable": false,
  "sources": [
    { "url": "https://www.keyboardmaestro.com/main/", "type": "official_site", "title": "Keyboard Maestro – Stairways Software", "supports": ["name", "summary", "pricing_model", "prerequisites"], "checked_at": "2026-11-02" },
    { "url": "https://wiki.keyboardmaestro.com/", "type": "official_docs", "title": "Keyboard Maestro Wiki", "supports": ["capabilities", "description"], "checked_at": "2026-11-02" }
  ],
  "confidence": "high",
  "discovery_method": "editorial-research",
  "depth": "standard",
  "editorial_status": "reviewed",
  "visibility": "public",
  "featured": false,
  "author": "batch-C"
}
