# Shortcuts

Bridges macOS Shortcuts.app into LifeOS: build a Shortcut once via computer use, then...

- Repository: https://github.com/danielmiessler/LifeOS (19669 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-28
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add danielmiessler/LifeOS --skill Shortcuts -g -a claude-code -y`
Codex: `npx skills add danielmiessler/LifeOS --skill Shortcuts -g -a codex -y`
Cursor: `npx skills add danielmiessler/LifeOS --skill Shortcuts -g -a cursor -y`
Gemini CLI: `npx skills add danielmiessler/LifeOS --skill Shortcuts -g -a gemini-cli -y`

## Description

Bridges macOS Shortcuts.app into LifeOS: build a Shortcut once via computer use, then call it as a CLI to reach Apple-only capabilities like HomeKit. USE WHEN build a shortcut, create a shortcut, macOS shortcut, shortcuts app, run a shortcut, automate a native mac task, HomeKit automation that needs a shortcut, thermostat shortcuts, control home from CLI, wrap an Apple-only action, no API for this app. NOT FOR web automation (Interceptor), shell-scriptable tasks (Bash), devices reachable by API (Home / Network).

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Shortcuts

Turn GUI-only macOS Shortcuts into callable LifeOS automation. Shortcuts reaches Apple-only surfaces (HomeKit/Home, native system actions, app intents) that have no other automation path. Computer use is slow and pixel-fragile, while the `shortcuts` CLI is fast and deterministic but can only run shortcuts, never build them. So each capability is built once (BuildShortcut) and is plain CLI from then on (RunShortcut, through `Tools/Shortcuts.ts`). This is CLI-first doctrine applied to the no-API problem.

## Ideal State

- Each Apple-only capability is built once as a Shortcut under the exact name its consumers call, and is proven by a `run` whose output matches the spec, never by how the editor looks.
- Every later use is plain CLI through `Tools/Shortcuts.ts` or `shortcuts run`, with no pixels and no computer use.
- A failed run or missing shortcut is diagnosed against the exact registered names, so a case or whitespace mismatch is caught before anything is rebuilt.

## Intent Routing

| Intent | Trigger | File |
|--------|---------|------|
| **BuildShortcut** | "build a shortcut", "create a shortcut", "set up the X shortcut" | `Intents/BuildShortcut.md` |
| **RunShortcut** | "run the X shortcut", "invoke X", any consumer calling a built shortcut | `Intents/RunShortcut.md` |
| **ListShortcuts** | "list shortcuts", "what shortcuts exist", "does X exist" | `Intents/ListShortcuts.md` |

| File | Read when |
|------|-----------|
| `Setup.md` | first-time setup, a worked example of adding your own shortcut, and the read-only proof commands |

## Gotchas

The rest: https://github.com/danielmiessler/LifeOS/blob/HEAD/LifeOS/install/skills/Shortcuts/SKILL.md
