If you're evaluating Apple Intelligence for a Capacitor (WKWebView) iOS app in late 2026: the npm plugins only give you on-device text prompting; Private Cloud Compute, App Intents/Siri, and SpeechAnalyzer all need your own Swift in the App target. PCC's free access is gated on developer-account history, not on the app, and has no paid tier, so don't architect around it without checking eligibility first.
What the Capacitor plugins actually wrap
| Plugin | Status | Scope |
|---|---|---|
@capacitor/local-llm | Capacitor Labs, README: "experimental, support is not provided" | SystemLanguageModel prompt/session + Image Playground (iOS 18.4+); Gemini Nano on Android (maxOutputTokens clamped 1-256) |
@capawesome-team/capacitor-llm (2026-09-11) | Paid (Insiders) | System models only; streaming, cancellation, 7 typed availability states |
@capgo/capacitor-llm | Open source | Apple Intelligence or bundled MediaPipe/LiteRT weights |
None document PrivateCloudComputeLanguageModel, @Generable guided generation, or tool calling. App Intents (AppIntent, AppShortcutsProvider, IndexedEntity) are Swift types compiled into the app target and discovered at build time, so they can't ship as a Capacitor plugin; Expo has expo-app-intents, Capacitor has no equivalent. Pattern that works: subclass CAPBridgeViewController, register your own plugin in capacitorDidLoad(), and have intents open the app on a deep link the SPA routes.
PCC eligibility is per developer account, lifetime
From developer.apple.com/private-cloud-compute (WWDC26, iOS 27+ only):
- Must be enrolled in the App Store Small Business Program.
- Fewer than 2 million first-time downloads from any of the developer's apps (lifetime, not per app, not active users).
- A managed entitlement you request.
- Cross the threshold or leave the program: notified, must migrate within 6 months. No paid tier exists.
- Per-user daily request quota tied to the user's iCloud account (higher with iCloud+); throws
PrivateCloudComputeLanguageModel.Error.quotaLimitReached; Apple says show persistent UI viaquotaUsage, not an alert. Xcode scheme option "Simulated Apple Foundation Models Availability" simulates the quota states.
Developers with an older successful app on the same account are locked out before shipping anything (Støvring, Gruber, Troughton-Smith, June 2026).
Context size: the doc table is stale
adding-server-side-intelligence-with-private-cloud-compute lists on-device context as 4K. WWDC26 session 319's code shows:
SystemLanguageModel().contextSize
// 4096 on 26.0
// 8192 on 27.0 (newer devices)
PrivateCloudComputeLanguageModel().contextSize
// 32768Read contextSize at runtime (API added iOS 26.4) instead of hardcoding; the plugins above hardcode or document 4,096.
Quality evidence (no Gemini/GPT head-to-head exists)
- Apple's AFM 3 post (2026-06-08) reports only preference win rates vs its own 2025 models; external benchmarks undisclosed.
- Last external comparison (2025 tech report, arXiv 2507.13575): on-device MMLU 67.85 (between Qwen-2.5-3B 66.37 and Qwen-3-4B 75.10); server 80.20 vs Llama 4 Scout 84.88, GPT-4o 85.70.
- Independent audit of iOS 26-era
SystemLanguageModel.default(arXiv 2608.23663): refused 18.4% of benign summarization items, confabulated on 69.1% of false-premise questions, verbalized-confidence AUROC 0.47. Apple loosened guardrails in 26.4 and shipped a new model in 27; not re-measured. Model behavior changes with each OS update, so pin evals to OS version.
WebView side effect worth deciding
WKWebView textareas get Writing Tools (Rewrite/Proofread) by default on Apple Intelligence devices. If your product promises user-authored text stays verbatim, set WKWebViewConfiguration.writingToolsBehavior = .none (or .limited) in your bridge view controller's web view configuration (iOS 18+). It's app-wide; no per-element HTML control was found.