Extension Discovery
SuperCmd discovers installed extensions from multiple sources:Managed Extensions Directory
The primary location for extensions installed through SuperCmd:- macOS:
~/Library/Application Support/SuperCmd/extensions/ - Windows:
%APPDATA%/SuperCmd/extensions/ - Linux:
~/.config/SuperCmd/extensions/
Custom Extension Folders
You can add custom extension directories via settings or environment variables:Set
SUPERCMD_EXTENSION_PATHS environment variable to a colon-separated (macOS/Linux) or semicolon-separated (Windows) list of extension directories.Extension Commands
SuperCmd scans all extension directories and builds a catalog of available commands:Extension Preferences
Extensions can define preferences at two levels:Extension-Level Preferences
Shared across all commands in the extension:Command-Level Preferences
Specific to individual commands:Preference Types
SuperCmd supports all Raycast preference types:textfield
Single-line text input
password
Secure password field (hidden input)
checkbox
Boolean toggle
dropdown
Selection from predefined options
file
File path picker
directory
Directory path picker
Reading Preferences
Extensions access preferences via the runtime context:Platform-Specific Defaults
Preferences can have different default values per platform:Extension Metadata
SuperCmd extracts metadata from extension manifests:Extension Icons
Icons are converted to data URLs for efficient rendering:Uninstalling Extensions
Removing an extension is straightforward:Extension Support Directory
Each extension has a dedicated support directory for storing data:- macOS:
~/Library/Application Support/SuperCmd/extension-support/{extension-name}/ - Windows:
%APPDATA%/SuperCmd/extension-support/{extension-name}/ - Linux:
~/.config/SuperCmd/extension-support/{extension-name}/
Extensions use this directory through the
environment.supportPath API to store configuration files, databases, and other persistent data.Command Arguments
Commands can define arguments that users provide before execution:Background Commands
Some commands run in the background on an interval:mode: "menu-bar" and an interval property run periodically and update the menu bar.
Checking Installation Status
Next Steps
Overview
Learn how extensions work under the hood
Compatibility
Check which Raycast APIs are supported