Skip to main content

shortcuts:cli

Running and managing Apple Shortcuts via the macOS shortcuts CLI. Use when the user wants to run, list, or inspect shortcuts.

Stars
13
Source
bendrucker/claude
Updated
2026-05-31
Slug
bendrucker--claude--cli
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/bendrucker/claude/HEAD/plugins/shortcuts/skills/cli/SKILL.md -o .claude/skills/cli.md

Drops the SKILL.md into .claude/skills/cli.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Shortcuts CLI

The shortcuts command manages and runs shortcuts on macOS.

Run

shortcuts run "My Shortcut"
shortcuts run "My Shortcut" -i input.txt
shortcuts run "My Shortcut" -o output.txt
echo "data" | shortcuts run "My Shortcut"

Run by identifier (stable across renames):

shortcuts run "01C97432-525A-4BF6-94DF-C35458FCD21A"

Get identifiers with shortcuts list --show-identifiers.

Headless behavior

Shortcuts with GUI actions (alerts, menus, input prompts) fail with "Running was cancelled" when run from the CLI. Only non-interactive shortcuts work headlessly.

Permissions

First-time actions (notifications, location, contacts, etc.) trigger a macOS permission dialog. The shortcut pauses until the user approves. Inform the user when running a shortcut that may trigger permission prompts.

List

shortcuts list
shortcuts list --show-identifiers
shortcuts list -f "Folder Name"
shortcuts list --folders

View

Opens a shortcut in the Shortcuts app editor:

shortcuts view "My Shortcut"

Sign

Sign a .shortcut file for import (requires network — contacts Apple's signing service):

mkdir -p out
shortcuts sign -i "My Shortcut.shortcut" -o "out/My Shortcut.shortcut"

Sign into an output directory to preserve the unsigned binary. The filename (minus .shortcut) becomes the shortcut name on import — do not add suffixes.

Import

There is no shortcuts import command. Open the signed file to trigger import:

open "out/My Shortcut.shortcut"

The user confirms import in the Shortcuts app GUI.