axiom-integration
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseiOS System Integration
iOS系统集成
You MUST use this skill for ANY iOS system integration including Siri, Shortcuts, widgets, in-app purchases, background tasks, push notifications, and more.
当你集成任何iOS系统功能(包括Siri、Shortcuts、小组件、应用内购买、后台任务、推送通知等)时,必须使用本技能。
Quick Reference
快速参考
| Symptom / Task | Reference |
|---|---|
| Siri, App Intents, entity queries | See |
| App Shortcuts, phrases, Spotlight | See |
| App discoverability strategy | See |
| Core Spotlight indexing | See |
| Widgets, Live Activities, Control Center | See |
| Widget/Live Activity API reference | See |
| In-app purchases, subscriptions | See |
| StoreKit 2 API reference | See |
| Calendar events, reminders (EventKit) | See |
| EventKit API reference | See |
| Contacts, contact picker | See |
| Contacts API reference | See |
| Localization, String Catalogs | See |
| Privacy manifests, permissions UX | See |
| AlarmKit (iOS 26+) | See |
| Timer patterns, scheduling | See |
| Timer API reference | See |
| Background tasks, BGTaskScheduler | See |
| Background task debugging | See |
| Background task API reference | See |
| Push notifications, APNs | See |
| Push notification debugging | See |
| Push notification API reference | See |
| 症状/任务 | 参考文档 |
|---|---|
| Siri、App Intents、实体查询 | 查看 |
| App Shortcuts、快捷短语、Spotlight | 查看 |
| 应用可发现性策略 | 查看 |
| Core Spotlight索引 | 查看 |
| 小组件、Live Activities、控制中心 | 查看 |
| 小组件/Live Activity API参考 | 查看 |
| 应用内购买、订阅 | 查看 |
| StoreKit 2 API参考 | 查看 |
| 日历事件、提醒事项(EventKit) | 查看 |
| EventKit API参考 | 查看 |
| 联系人、联系人选择器 | 查看 |
| Contacts API参考 | 查看 |
| 本地化、String Catalogs | 查看 |
| 隐私清单、权限UX | 查看 |
| AlarmKit(iOS 26+) | 查看 |
| 计时器模式、调度 | 查看 |
| 计时器API参考 | 查看 |
| 后台任务、BGTaskScheduler | 查看 |
| 后台任务调试 | 查看 |
| 后台任务API参考 | 查看 |
| 推送通知、APNs | 查看 |
| 推送通知调试 | 查看 |
| 推送通知API参考 | 查看 |
Decision Tree
决策树
dot
digraph integration {
start [label="Integration task" shape=ellipse];
what [label="Which system feature?" shape=diamond];
start -> what;
what -> "skills/app-intents-ref.md" [label="Siri / App Intents"];
what -> "skills/app-shortcuts-ref.md" [label="Shortcuts / phrases"];
what -> "skills/app-discoverability.md" [label="discoverability\nstrategy"];
what -> "skills/extensions-widgets.md" [label="widgets / Live Activities\n/ Control Center"];
what -> "skills/in-app-purchases.md" [label="IAP / subscriptions"];
what -> "skills/eventkit.md" [label="calendar / reminders"];
what -> "skills/contacts.md" [label="contacts"];
what -> "skills/localization.md" [label="localization"];
what -> "skills/privacy-ux.md" [label="privacy / permissions"];
what -> "skills/alarmkit-ref.md" [label="alarms (iOS 26+)"];
what -> "skills/timer-patterns.md" [label="timers"];
what -> "skills/background-processing.md" [label="background tasks"];
what -> "skills/push-notifications.md" [label="push notifications"];
}- Siri / App Intents / entity queries? →
skills/app-intents-ref.md - App Shortcuts / phrases? →
skills/app-shortcuts-ref.md - App discoverability / Spotlight strategy? → ,
skills/app-discoverability.mdskills/core-spotlight-ref.md - Widgets / Live Activities / Control Center? → ,
skills/extensions-widgets.mdskills/extensions-widgets-ref.md - In-app purchases / StoreKit? → ,
skills/in-app-purchases.mdskills/storekit-ref.md - Calendar / reminders / EventKit? → ,
skills/eventkit.mdskills/eventkit-ref.md - Contacts / contact picker? → ,
skills/contacts.mdskills/contacts-ref.md - Localization? →
skills/localization.md - Privacy / permissions? →
skills/privacy-ux.md - Alarms (iOS 26+)? →
skills/alarmkit-ref.md - Timers? → ,
skills/timer-patterns.mdskills/timer-patterns-ref.md - Background tasks / BGTaskScheduler? → ,
skills/background-processing.md,skills/background-processing-diag.mdskills/background-processing-ref.md - Push notifications? → ,
skills/push-notifications.md,skills/push-notifications-diag.mdskills/push-notifications-ref.md - Want IAP audit? → Launch agent
iap-auditor - Want full IAP implementation? → Launch agent
iap-implementation - Camera / photos / audio / haptics / ShazamKit? → Use instead
axiom-media
dot
digraph integration {
start [label="Integration task" shape=ellipse];
what [label="Which system feature?" shape=diamond];
start -> what;
what -> "skills/app-intents-ref.md" [label="Siri / App Intents"];
what -> "skills/app-shortcuts-ref.md" [label="Shortcuts / phrases"];
what -> "skills/app-discoverability.md" [label="discoverability\nstrategy"];
what -> "skills/extensions-widgets.md" [label="widgets / Live Activities\n/ Control Center"];
what -> "skills/in-app-purchases.md" [label="IAP / subscriptions"];
what -> "skills/eventkit.md" [label="calendar / reminders"];
what -> "skills/contacts.md" [label="contacts"];
what -> "skills/localization.md" [label="localization"];
what -> "skills/privacy-ux.md" [label="privacy / permissions"];
what -> "skills/alarmkit-ref.md" [label="alarms (iOS 26+)"];
what -> "skills/timer-patterns.md" [label="timers"];
what -> "skills/background-processing.md" [label="background tasks"];
what -> "skills/push-notifications.md" [label="push notifications"];
}- Siri / App Intents / 实体查询?→
skills/app-intents-ref.md - App Shortcuts / 快捷短语?→
skills/app-shortcuts-ref.md - 应用可发现性 / Spotlight策略?→ 、
skills/app-discoverability.mdskills/core-spotlight-ref.md - 小组件 / Live Activities / 控制中心?→ 、
skills/extensions-widgets.mdskills/extensions-widgets-ref.md - 应用内购买 / StoreKit?→ 、
skills/in-app-purchases.mdskills/storekit-ref.md - 日历 / 提醒事项 / EventKit?→ 、
skills/eventkit.mdskills/eventkit-ref.md - 联系人 / 联系人选择器?→ 、
skills/contacts.mdskills/contacts-ref.md - 本地化?→
skills/localization.md - 隐私 / 权限?→
skills/privacy-ux.md - 闹钟(iOS 26+)?→
skills/alarmkit-ref.md - 计时器?→ 、
skills/timer-patterns.mdskills/timer-patterns-ref.md - 后台任务 / BGTaskScheduler?→ 、
skills/background-processing.md、skills/background-processing-diag.mdskills/background-processing-ref.md - 推送通知?→ 、
skills/push-notifications.md、skills/push-notifications-diag.mdskills/push-notifications-ref.md - 需要IAP审计?→ 启动agent
iap-auditor - 需要完整的IAP实现?→ 启动agent
iap-implementation - 相机/照片/音频/触觉反馈/ShazamKit?→ 请使用替代
axiom-media
Cross-Domain Routing
跨域路由
Widget + data sync (widget not showing updated data):
- Widget timeline not refreshing → stay here (extensions-widgets)
- SwiftData/Core Data not shared with extension → also invoke axiom-data (App Groups)
Live Activity + push notification:
- ActivityKit push token setup → stay here (extensions-widgets)
- Push delivery failures → also invoke axiom-networking (networking-diag)
- Entitlements/certificates → also invoke axiom-build
Push + background processing (silent push not triggering background work):
- Push payload and delivery → stay here (push-notifications-diag)
- BGTaskScheduler execution → stay here (background-processing)
Calendar/Contacts + data sync:
- EventKit/Contacts data issues → stay here
- Shared data with widget via App Groups → also invoke axiom-data
小组件+数据同步(小组件未显示更新后的数据):
- 小组件时间线未刷新 → 继续使用本技能(extensions-widgets)
- SwiftData/Core Data未与扩展共享 → 同时调用axiom-data(App Groups)
Live Activity + 推送通知:
- ActivityKit推送令牌设置 → 继续使用本技能(extensions-widgets)
- 推送送达失败 → 同时调用axiom-networking(networking-diag)
- 权限/证书问题 → 同时调用axiom-build
推送+后台处理(静默推送未触发后台任务):
- 推送负载与送达 → 继续使用本技能(push-notifications-diag)
- BGTaskScheduler执行 → 继续使用本技能(background-processing)
日历/联系人+数据同步:
- EventKit/Contacts数据问题 → 继续使用本技能
- 通过App Groups与小组件共享数据 → 同时调用axiom-data
Conflict Resolution
冲突解决
integration vs axiom-build: When system features fail with entitlement/certificate errors:
- Use axiom-build for signing and provisioning issues
- Use integration for API usage and permission patterns
integration vs axiom-data: When widgets or extensions can't access shared data:
- App Groups and shared containers → axiom-data
- Widget timeline, Live Activity updates → integration
integration vs axiom-media: When media features overlap with system features:
- Camera/photo/audio/haptics code → axiom-media
- Privacy manifests for camera/microphone → stay here (privacy-ux)
- Background audio mode → stay here (background-processing)
integration与axiom-build的分工:当系统功能因权限/证书错误而失败时:
- 签名和配置问题 → 使用axiom-build
- API使用和权限模式 → 使用integration
integration与axiom-data的分工:当小组件或扩展无法访问共享数据时:
- App Groups和共享容器 → axiom-data
- 小组件时间线、Live Activity更新 → integration
integration与axiom-media的分工:当媒体功能与系统功能重叠时:
- 相机/照片/音频/触觉反馈代码 → axiom-media
- 相机/麦克风的隐私清单 → 继续使用本技能(privacy-ux)
- 后台音频模式 → 继续使用本技能(background-processing)
Anti-Rationalization
误区纠正
| Thought | Reality |
|---|---|
| "App Intents are just a protocol conformance" | App Intents have parameter validation, entity queries, and background execution. |
| "Widgets are simple, I've done them before" | Widgets have timeline, interactivity, and Live Activity patterns that evolve yearly. |
| "Localization is just String Catalogs" | Xcode 26 has type-safe localization, generated symbols, and #bundle macro. |
| "Push notifications are just a payload and a token" | Token lifecycle, Focus levels, service extension gotchas cause 80% of push bugs. |
| "Just request full Calendar access" | Most apps only need to add events — EventKitUI does that with zero permissions. |
| "I'll use CNContactStore directly for picking" | CNContactPickerViewController needs no authorization and shows all contacts. |
| 想法 | 实际情况 |
|---|---|
| "App Intents只是协议实现" | App Intents包含参数验证、实体查询和后台执行逻辑。 |
| "小组件很简单,我之前做过" | 小组件的时间线、交互性和Live Activity模式每年都在演进。 |
| "本地化只是String Catalogs" | Xcode 26支持类型安全的本地化、生成符号和#bundle宏。 |
| "推送通知只是负载和令牌" | 令牌生命周期、专注模式级别、服务扩展陷阱是导致80%推送问题的原因。 |
| "直接请求完整的日历访问权限就行" | 大多数应用只需要添加事件——EventKitUI无需任何权限就能实现。 |
| "我直接用CNContactStore来做选择器" | CNContactPickerViewController无需授权就能显示所有联系人。 |
Example Invocations
调用示例
User: "How do I add Siri support?"
→ Read:
skills/app-intents-ref.mdUser: "My widget isn't updating"
→ Read:
skills/extensions-widgets.mdUser: "Implement in-app purchases with StoreKit 2"
→ Read:
skills/in-app-purchases.mdUser: "How do I implement push notifications?"
→ Read:
skills/push-notifications.mdUser: "Push notifications work in dev but not production"
→ Read:
skills/push-notifications-diag.mdUser: "My background task never runs"
→ Read:
skills/background-processing-diag.mdUser: "How do I add an event to the user's calendar?"
→ Read:
skills/eventkit.mdUser: "How do I let users pick a contact?"
→ Read:
skills/contacts.mdUser: "Review my in-app purchase implementation"
→ Launch: agent
iap-auditor用户:"我该如何添加Siri支持?"
→ 阅读:
skills/app-intents-ref.md用户:"我的小组件没有更新"
→ 阅读:
skills/extensions-widgets.md用户:"用StoreKit 2实现应用内购买"
→ 阅读:
skills/in-app-purchases.md用户:"我该如何实现推送通知?"
→ 阅读:
skills/push-notifications.md用户:"推送通知在开发环境正常,但生产环境不行"
→ 阅读:
skills/push-notifications-diag.md用户:"我的后台任务从未运行"
→ 阅读:
skills/background-processing-diag.md用户:"我该如何向用户的日历添加事件?"
→ 阅读:
skills/eventkit.md用户:"我该如何让用户选择联系人?"
→ 阅读:
skills/contacts.md用户:"审核我的应用内购买实现"
→ 启动: agent
iap-auditor