CoreAIKit is meant to be depended on — by apps that ship. This page says exactly what that promise covers today.
Releases follow SemVer. Pre-1.0:
0.x.Y): bug fixes and additive changes only. Always safe to update.0.X.0): may change or remove API. Anything breaking is called out in
CHANGELOG.md with a migration note.The reproducible quickstart uses exact: "0.4.1". Use from: "0.4.1" if you want
SwiftPM to select later compatible versions, and retain your app’s Package.resolved.
Every release is a tag on this repo.
While the OS is in beta, a tag can stop compiling without anyone touching it.
FoundationModels renamed LanguageModelCapabilities.init(capabilities:) to init(_:)
between Xcode 27 beta 3 and beta 5, and 0.3.0 — the latest tag at the time — stopped
building on the newer SDK. main was fixed the same day; the tag was not, for nine days.
That is a real cost of the promise on this page, so the rule from 0.4.0 on: an SDK change
that breaks the newest tag is released as a new tag, not left on main. If you hit a
compile error naming an Apple type, check for a newer tag before anything else.
The live catalog (catalog.json, fetched at runtime with the built-in snapshot as
offline fallback) is a public contract:
"qwen3.5-2b") is never repurposed for a
different model. Entries may gain variants; removals are announced in the
changelog first.revision — the Hugging Face commit
hash of the verified artifact. What you download is what was tested on real
hardware, byte for byte, until the pin is deliberately bumped. Pins are refreshed
with scripts/pin-catalog.py; CI fails if an entry ships unpinned.kind this package
version doesn’t know decodes cleanly and is filtered out — a newer catalog never
breaks an older app.| Surface | Status |
|---|---|
ModelStore, ModelCatalog, ModelID, ChatSession, KitLanguageModel |
Stable — breaking changes only in a minor release, with migration notes |
CoreAIKitVision (GraphModel, detectors, depth, CLIP), CoreAIKitEmbeddings |
Stable |
| Newer capability surfaces (VLM, TTS, ASR, diarization, OCR, dLLM, forecasting, audio-QA) | Settling — APIs may still be reshaped as more models of each kind land; changes are changelogged |
Anything internal or underscore-prefixed, Examples/ |
No guarantees |
Every model in the catalog is verified on real hardware (Apple silicon Mac and, where published, iPhone) before its pin lands — parity against the reference implementation and measured tokens/sec, recorded in the model zoo. Three CI surfaces: