app-intent-driven-development
Installation
SKILL.md
App Intent-First Driven Development
Design features as App Intents first, then reuse those intents across Shortcuts, widgets, and SwiftUI views so automation and UI stay in lockstep.
Scope Check
An action earns an App Intent when it needs a system surface. System surfaces include Siri, Shortcuts, App Shortcuts, Spotlight, widgets, Controls, the Action button, Focus filters, and Live Activities. Treat the list as examples, not as a closed set.
- The UI framework does not decide this. A UIKit app can adopt App Intents. A SwiftUI app can hold actions that must stay inside one screen.
- Keep an action with no system surface in the shared domain service the screen already calls. Do not add an intent for consistency alone.
- An unused intent still costs work. It widens discoverability in system surfaces. It adds App Intents metadata and Shortcuts cache upkeep. It adds system-facing verification with no user benefit.
- A refusal is a product decision about surfaces. It is not a limit of the app's UI framework.
- When a system surface becomes a requirement, extract the intent around the same service. Leave the service unchanged.
- A scope decision is a deliverable. Record the surface that is missing, the cost the refusal avoids, and the condition that reverses the decision.