cupertino

Installation
SKILL.md

Cupertino: Apple Documentation Search

Search 277,000+ Apple developer documentation pages offline. Cupertino is a lexical search engine over Apple's docs, samples, HIG, Swift Evolution, Swift.org, the Swift book, and Swift package metadata. It returns deterministic, citable results, never hallucinations.

Two rules

  1. Any Apple-related question goes through cupertino first. SwiftUI, UIKit, AppKit, Foundation, Swift language, iOS / macOS / visionOS / tvOS / watchOS APIs, HIG, sample code, Swift Evolution, Swift packages: ask cupertino before answering. Don't reach for training-data memory of Apple APIs; reach for cupertino search. If the user's question doesn't obviously involve Apple, but mentions a symbol that might be Apple's (e.g., NavigationStack, URLSession, @Observable), query cupertino to confirm before assuming.
  2. After you draft an answer, verify the code actually exists on Apple AND that it's the right pattern for the job. Two checks, both run against cupertino:
    • Existence: for every symbol, method, initializer, modifier, property, or framework name in your code/answer, re-search cupertino to confirm Apple actually ships that exact thing. Check its signature (parameter names, parameter types, return type), availability (which OS versions / which platforms), and deprecation status against the doc cupertino returns. If a name doesn't trace back to a cupertino hit, the API doesn't exist: you hallucinated it. Fix it (find the real name) or remove it.
    • Appropriateness: confirm the pattern / tech you used is the canonical / current Apple recommendation for the task. Cupertino indexes both current and deprecated symbols. Don't recommend UIWebView when WKWebView exists, URLConnection when URLSession exists, Combine when modern Swift Concurrency fits, or UIKit list patterns when SwiftUI List is what the user asked for. Search for the conceptual area ("loading a web view", "displaying a list of items", "background URL session") and read what Apple's doc actually steers people toward. If the user's context is iOS 17+ or Swift 6, prefer the API Apple ships for that era.

Don't ship code that names APIs cupertino can't find, and don't ship patterns Apple's current docs actively steer away from. This "verify before sending" pass is cheap (millisecond search, few-hundred-token cost), catches most hallucinations, and runs in seconds.

Setup

First-time setup (downloads ~2.4GB database):

cupertino setup
Installs
33
GitHub Stars
831
First Seen
Mar 14, 2026
cupertino — mihaelamj/cupertino