swiftui — Claude Code skill: SwiftUI docs on demand
This skill keeps a copy of the SwiftUI documentation inside your project so the agent can grep it instead of browsing Apple's site. Handy while you wire up a screen and need a modifier's exact signature.
npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a claude-codeWhat swiftui does
The skill runs in a forked context through the Explore agent. It ships a set of local .md files: the framework overview, the View protocol with its modifiers, separate pages for @State, @Binding and @Environment, the @Observable macro, plus NavigationStack, NavigationSplitView, TabView, List, Canvas and GraphicsContext.
Lookup is a grep over the downloaded pages. The agent searches this skill's files first, then the other Apple skills installed alongside it, and reaches for the web only when nothing local covers the topic. In that last case it takes a path from swiftui-overview.md and swaps it into the sosumi.ai mirror: swiftui/button becomes https://sosumi.ai/documentation/swiftui/button. Grep beats a network fetch on context budget.
One file, swiftui-overview.md, is a 907KB index of the whole framework. That makes it good for locating a page and bad for reading whole, so the skill is built around targeted searches. Some pages carry version limits: @Observable needs iOS 17+, NavigationStack and Canvas also start at specific iOS versions, so check the file header before you copy an example into an older target.
What it helps with
- look up how a modifier such as
fontorpaddingis declared - pick between
@Stateand@Bindingfor a piece of view data - set up routing with
NavigationStackorNavigationSplitView - move a view model from
ObservableObjectto@Observable - draw a shape with
CanvasandGraphicsContext
Example prompts for the agent
- Grep the skill for how swipe actions on a
Listrow are declared and show me the file - According to
navigationstack.md, how do I bind a path toNavigationStackand pop back? - How do I declare an
@Observableproperty that redraws the view?
How to install swiftui
1Skills CLI (Vercel)
npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a claude-code2Manually: put the files in place
~/.claude/skills/swiftui/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/swiftui/
1Skills CLI (Vercel)
npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a codex2Manually: put the files in place
.agents/skills/swiftui/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a cursor2Manually: put the files in place
.cursor/skills/swiftui/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Prisma-Labs-Dev/apple-skills swiftui2Manually: put the files in place
.github/skills/swiftui/SKILL.md1Skills CLI (Vercel)
npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a gemini-cli2Platform CLI
gemini skills install https://github.com/Prisma-Labs-Dev/apple-skills --path skills/swiftuiManually: put the files in place
.devin/skills/swiftui/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about swiftui
How do I install swiftui in Claude Code?
Run npx skills add Prisma-Labs-Dev/apple-skills --skill swiftui -a claude-code. The skill file lands at ~/.claude/skills/swiftui/SKILL.md.
What does the swiftui skill do?
It hands the agent a local set of SwiftUI reference pages and tells it to search those before anything else. Less context spent on fetching Apple's docs mid-task.
Does it work offline?
The bundled files are local, so those need no connection. A network call happens only when neither this skill nor another installed Apple skill has the page the agent needs.
Source text
SKILL.md · MIT
--- name: swiftui user-invocable: true description: "API reference: SwiftUI. Query for views, layouts, navigation, @State/@Binding/@Observable, view modifiers, NavigationStack, iOS 26+ features." context: fork agent: Explore --- # SwiftUI Reference This skill provides access to SwiftUI documentation via downloaded reference files. ## Downloaded Reference Files The following Apple documentation pages are available locally (grep-friendly): | File | Content | |------|---------| | [swiftui-overview.md](swiftui-overview.md) | Full SwiftUI framework index (907KB) | | [view-protocol.md](view-protocol.md) | View protocol and all modifiers (59KB) | | [state.md](state.md) | @State property wrapper | | [binding.md](binding.md) | @Binding property wrapper | | [environment.md](environment.md) | @Environment property wrapper | | [observation.md](observation.md) | @Observable macro (iOS 17+) | | [navigationstack.md](navigationstack.md) | NavigationStack (iOS 16+) | | [navigationsplitview.md](navigationsplitview.md) | NavigationSplitView | | [tabview.md](tabview.md) | TabView | | [list.md](list.md) | List view | | [canvas.md](canvas.md) | Canvas — immediate-mode drawing (iOS 15+) | | [graphicscontext.md](graphicscontext.md) | GraphicsContext — drawing API used inside Canvas | ## Fetching More Docs 1. Search this skill's local `.md` files first. 2. If the topic is not here, check the other installed Apple skills you have available by their names, descriptions, or `SKILL.md` frontmatter, then grep their local files. This is faster and uses less context than fetching new docs from the internet. 3. If no installed skill has the page, use the relevant documentation path from `swiftui-overview.md` with the `sosumi.ai` Markdown mirror. For example, `/documentation/swiftui/button` maps to `https://sosumi.ai/documentation/swiftui/button`. ### Common SwiftUI Doc Paths | Topic | URL Path | |-------|----------| | Text | `swiftui/text` | | Button | `swiftui/button` | | Image | `swiftui/image` | | VStack | `swiftui/vstack` | | HStack | `swiftui/hstack` | | ZStack | `swiftui/zstack` | | Form | `swiftui/form` | | Sheet | `swiftui/sheet` | | Alert | `swiftui/alert` | | Picker | `swiftui/picker` | | Toggle | `swiftui/toggle` | | Slider | `swiftui/slider` | | ProgressView | `swiftui/progressview` | | AsyncImage | `swiftui/asyncimage` | | GeometryReader | `swiftui/geometryreader` | | ScrollView | `swiftui/scrollview` | | LazyVStack | `swiftui/lazyvstack` | | LazyHStack | `swiftui/lazyhstack` | | NavigationLink | `swiftui/navigationlink` | | ToolbarItem | `swiftui/toolbaritem` | | Canvas | `swiftui/canvas` | | GraphicsContext | `swiftui/graphicscontext` | ## Usage Instructions 1. **Check downloaded files first** - Grep the local `.md` files for your topic 2. **Use the overview as an index** - Search `swiftui-overview.md` for documentation paths 3. **Fetch only when needed** - If no installed skill has the page, use `sosumi.ai` with documentation paths from the overview Example workflow: ```bash # Looking for info on modifiers? grep -i "padding" view-protocol.md # Need full Text documentation? Check the local file first. grep -i "font" text.md ``` ## Sources - [SwiftUI | Apple Developer Documentation](https://developer.apple.com/documentation/swiftui)
© Prisma-Labs-Dev · MIT · Prisma-Labs-Dev/apple-skills