Skip to main content

Launch Mac desktop applications by voice

Project description

Mac Application Launcher

Status: Security Fixes Only

Launch macOS applications by voice

NOTE: This skill only works on macOS systems!

About

Launch applications on macOS using voice commands through OVOS (Open Voice OS).

The skill automatically discovers applications by scanning standard macOS application directories and parsing .app bundles to extract application metadata including names, bundle identifiers, and versions.

Scanned directories:

  • /Applications
  • /System/Applications
  • /Applications/Utilities
  • /System/Library/CoreServices
  • /System/Applications/Utilities
  • ~/Applications

Examples

  • "Open Safari"
  • "Launch Calculator"
  • "Close Terminal"
  • "Switch to Finder"

Application Management

The skill provides comprehensive application management:

  • Launch: Start applications that aren't running
  • Switch: Bring running applications to the foreground
  • Close: Gracefully quit applications using AppleScript, falling back to process termination if needed
  • Status: Check if applications are currently running

The skill prioritizes graceful application closure using AppleScript's quit commands, which allows applications to save their state properly. If AppleScript fails, it falls back to process termination.

Configuration via settings.json

Customize the Application Launcher skill behavior by modifying these options in settings.json:

Option Type Default Value Description
aliases Dict[str, List[str]] {} Application aliases. Map app names to speech-friendly alternatives (e.g., {"Calculator": ["calc"]})
user_commands Dict[str, str] {} Custom application paths. Map app names to specific .app bundle paths
thresh float 0.85 Fuzzy matching threshold for application names. Lower values allow more lenient matches
blocklist List[str] [] Applications to exclude from voice control
extra_langs List[str] ["en-US"] Additional language codes for intent matching
disable_window_manager bool False If True, disables AppleScript-based window management
terminate_all bool False If True, terminates all matching processes when closing applications

Example configuration:

{
  "aliases": {
    "Calculator": ["calc", "calculator"],
    "Safari": ["browser", "web browser"],
    "Terminal": ["term", "console"]
  },
  "thresh": 0.85,
  "blocklist": ["System Preferences"],
  "terminate_all": false
}

Installation

Install from PyPI:

pip install skill-mac-application-launcher

Or install from source:

git clone https://github.com/OscillateLabsLLC/skill-mac-application-launcher
cd skill-mac-application-launcher
pip install .

Development

Note: This project is in Security Fixes Only status. We accept security fixes and critical bug fixes, but not new features.

For development, install with dev dependencies:

pip install -e .[dev]

Run tests:

pytest

Run type checking:

mypy skill_mac_application_launcher/

Run linting:

ruff check skill_mac_application_launcher/ tests/

See CONTRIBUTING.md for detailed development guidelines.

Category

Productivity

Tags

#macos #application-launcher #voice-control #ovos

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skill_mac_application_launcher-1.0.1.tar.gz (97.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skill_mac_application_launcher-1.0.1-py3-none-any.whl (27.1 kB view details)

Uploaded Python 3

File details

Details for the file skill_mac_application_launcher-1.0.1.tar.gz.

File metadata

File hashes

Hashes for skill_mac_application_launcher-1.0.1.tar.gz
Algorithm Hash digest
SHA256 60e3735607bf75c6e2c68e9873d907e9e4d3e4b466029044189b02e3ec69b873
MD5 06965519400fe0ebf74171eb748d9311
BLAKE2b-256 66164d491644ba6f2aaa32fe9a14be50e4773c6d24e1d9deac92edab15fbad82

See more details on using hashes here.

File details

Details for the file skill_mac_application_launcher-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for skill_mac_application_launcher-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 621bbfcd45cc41e519bdc54b1090b1bae0ae0790084d118c27c97b8a9db02a79
MD5 9526949d0ed5e528d0c351335b239c77
BLAKE2b-256 d674e5a2612938ae446ca4233e7025c6a1c6246ed987386720898f1bdf43dc94

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page