App Intents
Writes and reviews Swift App Intents code that exposes app actions and data to Siri, Shortcuts, Spotlight, widgets, Control Center, and Apple Intelligence. Use when adding AppIntent, AppEntity, OpenIntent, AppShortcutsProvider, EntityQuery, Focus Filters, AssistantEntity/AssistantIntent schemas, on-screen awareness, LongRunningIntent/CancellableIntent, EntityCollection, SyncableEntity, AppIntentsTesting, or when wiring SwiftData/networked data into intents.
- Skill ID
- n0an/app-intents-agent-skill/app-intents
- Publisher
- n0an
- Repository
- app-intents-agent-skill
- Installs
- 0
- Files
- 15
- License
- MIT
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
n0an/app-intents-agent-skill/app-intentsInstalls these files- SKILL.md
- agents/openai.yaml
- references/anti-patterns.md
- references/assistant-schemas.md
- references/dependencies.md
- references/entities.md
- references/fundamentals.md
- references/long-running-and-execution.md
- references/onscreen-awareness.md
- references/open-and-snippet-intents.md
- references/parameters.md
- references/shortcuts-and-siri.md
- references/siri-intelligence.md
- references/spotlight.md
- references/testing-intents.md
What this skill tells the agent
Write and review Swift code that exposes app functionality through the App Intents framework, ensuring correct protocol conformance, safe data flow, and idiomatic discoverability wiring.
Review process:
- Check intent fundamentals (protocol,
perform(), return types, dialog) usingreferences/fundamentals.md. - Validate parameters and parameter options using
references/parameters.md. - Validate entity types, display representations, and queries using
references/entities.md. - Check the
AppShortcutsProviderregistration and discoverability UI usingreferences/shortcuts-and-siri.md. - Validate
OpenIntentnavigation and snippet view return types usingreferences/open-and-snippet-intents.md. - Check dependency injection and the data-controller pattern using
references/dependencies.md. - Validate Spotlight indexing via
IndexedEntity,IndexedEntityQuery, and attribute sets usingreferences/spotlight.md. - Check
@AssistantEntity/@AssistantIntentschema adoption usingreferences/assistant-schemas.md. - Validate the Siri / Apple Intelligence integration (finding content, custom responses, donations, confirmation, ownership) using
references/siri-intelligence.md. - Check on-screen awareness and content transfer (view annotations,
IntentValueRepresentation, system-integration annotations) usingreferences/onscreen-awareness.md. - For intents that run past 30 seconds, handle cancellation, or target a specific process, use
references/long-running-and-execution.md. - If writing or reviewing tests for intents, use
references/testing-intents.md(covers the newAppIntentsTestingframework). - Catch common mistakes using
references/anti-patterns.md.
If doing partial work, load only the relevant reference files.
Task-based routing
Match the user's goal to the read order. Load only what you need.
"Create my first App Intent"
references/fundamentals.md- protocol,perform(), return typesreferences/shortcuts-and-siri.md- register it so it shows up
"Add a parameter the user picks in Shortcuts"
references/parameters.md-@Parameter, prompts, disambiguationreferences/entities.md- if the parameter is a domain entity
"Make my app's data searchable from Siri / Spotlight"
references/entities.md-AppEntity,IndexedEntity,@Propertyreferences/spotlight.md- indexing strategies, attribute setsreferences/shortcuts-and-siri.md- flexible matching, phrase rules
"Show a summary / interactive view when Siri runs my intent"
references/open-and-snippet-intents.md- inline vs indirect snippets,SnippetIntent,Button(intent:)references/fundamentals.md- return types and snippet design rules
"Open a specific thing in my app from Siri / Shortcuts"
references/open-and-snippet-intents.md-OpenIntent,URLRepresentableIntent,TargetContentProvidingIntentreferences/dependencies.md- navigator / scene routing
"Bring my app's content and actions to Siri / Apple Intelligence"
references/siri-intelligence.md- the integration model, finding content (semantic index / structured search / in-app search), custom responses, donations, confirmation/ownershipreferences/assistant-schemas.md- schema macros, domains, multi-schema requirements, Xcode snippetsreferences/onscreen-awareness.md- view annotations, content transfer, system-integration annotations
"Integrate with Apple Intelligence"
references/assistant-schemas.md- schema macros, domains, Use Model action, onscreen contentreferences/entities.md-@Property,Transferable(required for several schemas)
"Let Siri understand what's on screen"
references/onscreen-awareness.md- the 4 annotation APIs, content transfer,displayRepresentationsfast path, annotations on notifications/Now Playing/AlarmKitreferences/siri-intelligence.md- how onscreen context fits the larger Siri story
"Make my intent run longer than 30 seconds or target a process"
references/long-running-and-execution.md-LongRunningIntent,CancellableIntent,allowedExecutionTargets, background GPUreferences/fundamentals.md-ProgressReportingIntent,supportedModes
"Handle large numbers of entities efficiently / sync across devices"
references/parameters.md-EntityCollection(identifiers-only parameters)references/entities.md-SyncableEntityfor cross-device identity,RelevantEntitiesfor proactive suggestions
"Support Visual Intelligence / image search"
references/assistant-schemas.md-IntentValueQuery,SemanticContentDescriptor,@UnionValuereferences/entities.md-Transferable+OpenIntentpairing
"Build an interactive widget or Control Center control"
references/open-and-snippet-intents.md-Button(intent:),WidgetConfigurationIntent,ControlConfigurationIntent,ControlWidgetButtonreferences/dependencies.md- App Group shared storage, process boundaries
"Structure my app around App Intents"
references/fundamentals.md- intents as canonical action layerreferences/dependencies.md-@Dependency, cross-moduleAppIntentsPackagereferences/entities.md- entity-as-bridge pattern
"Test my App Intents"
references/testing-intents.md- theAppIntentsTestingframework (out-of-process integration), direct struct unit tests, mocking@Dependency, test-only intents, what you can't test
"I'm hitting build errors or runtime bugs"
references/anti-patterns.md- 35+ catches with before/after fixes
Decision trees
Quick orientation when you know the task but not the right API.
Which intent protocol should I conform to?
Generic action?
→ AppIntent
Opens the app to a specific entity?
→ OpenIntent (+ TargetContentProvidingIntent on iOS)
Renders an interactive view only, no business logic?
→ SnippetIntent
Needs to bring the app forward conditionally?
→ AppIntent with supportedModes (iOS 26+)
→ or ForegroundContinuableIntent (iOS 17-18)
Runs longer than 30 seconds (upload, sync, inference)?
→ LongRunningIntent + performBackgroundTask (iOS 27+)
Needs to clean up gracefully when cancelled (with the reason)?
→ CancellableIntent + withIntentCancellationHandler (iOS 26.4+)
Deletes entities with standard confirmation?
→ DeleteIntent
Routes a search query into the app?
→ ShowInAppSearchResultsIntent
Backs widget configuration?
→ WidgetConfigurationIntent (empty conformance, no perform)
Backs a Control Center control?
→ ControlConfigurationIntent
Has a universal-link URL representation?
→ URLRepresentableIntent + OpenIntent (no perform needed)
Matches an Apple Intelligence domain?
→ AppIntent + @AppIntent(schema: .domain.action)Which entity type should I use?
Fixed set known at compile time?
→ AppEnum
Dynamic data with a persistent id?
→ AppEntity
Entity must appear in Spotlight?
→ AppEntity + IndexedEntity
Entity IS a file (scan, voice memo, exported image)?
→ FileEntity
Computed / aggregated data with no stable id?
→ TransientAppEntity
Needs Apple Intelligence schema awareness?
→ AppEntity + @AppEntity(schema: .domain.type)
Supports cross-app sharing?
→ AppEntity + TransferableWhich query should my entity use?
Small fixed set, enumerable?
→ EnumerableEntityQuery (also gets a basic Find intent)
Large dataset, searchable by name?
→ EntityQuery + EntityStringQuery
Many queryable properties, user should build predicates?
→ EntityPropertyQuery (auto-generates Find intent with comparators + sort)
Simple id-only lookup, no search?
→ UniqueIDEntityQuery
Indexed in Spotlight and want reindexing support?
→ IndexedEntityQuery (iOS 27+)
Structured Siri search you can't index ahead of time?
→ IntentValueQuery (structured input, returns 1+ entity types via @UnionValue)
Visual intelligence / image search?More from n0an
Use this skill in a project
Open any RiverX project, search the Skills panel for n0an/app-intents-agent-skill/app-intents, and install it in one click.
