Use when you need Apple's own documentation or a Swift compiler diagnostic explained rather than recalled.
79%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Low
Low-risk findings worth noting
Fix and improve this skill with Tessl
tessl review fix ./.claude-plugin/plugins/axiom/skills/axiom-apple-docs/SKILL.mdThe canonical home for this skill is axiom-apple-docs in CharlesWiltgen/Axiom
Apple bundles for-LLM markdown documentation inside Xcode. These are authoritative, up-to-date guides and diagnostics written by Apple engineers. Read them directly as files (in Claude Code, with the Read tool) — no MCP server or special tool required.
Priority: Axiom skills provide opinionated guidance (decision trees, anti-patterns, pressure scenarios). Apple docs provide authoritative API details. Use both together.
Axiom's session context names the Xcode the user has switched to. In Claude Code it lists the literal base directories ("Apple for-LLM Documentation: Xcode detected at <path>"); other harnesses name the app ("Installed on this machine: Xcode … (<path>)") — substitute that .app for /Applications/Xcode.app in the table below. Read <base>/<filename> as a file (the Read tool in Claude Code).
Default Xcode location (/Applications/Xcode.app) base directories:
| Content | Base directory |
|---|---|
| AdditionalDocumentation guides | /Applications/Xcode.app/Contents/PlugIns/IDEIntelligenceChat.framework/Versions/A/Resources/AdditionalDocumentation/ |
| Swift compiler diagnostics | /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/doc/swift/diagnostics/ |
Example invocation Claude should produce:
Read /Applications/Xcode.app/Contents/PlugIns/IDEIntelligenceChat.framework/Versions/A/Resources/AdditionalDocumentation/SwiftUI-Implementing-Liquid-Glass-Design.mdThese paths assume the default install; use the path from session context instead. Without session context: use AXIOM_XCODE_PATH if it is set; otherwise run xcode-select -p (it honors DEVELOPER_DIR), which prints <Xcode>.app/Contents/Developer — drop /Contents/Developer and put that .app in place of /Applications/Xcode.app above. If it prints /Library/Developer/CommandLineTools, no Xcode is selected; try /Applications/Xcode.app.
20 files. Read with the path pattern {guides base}/{filename}.
| Topic | Filename |
|---|---|
| Liquid Glass in SwiftUI | SwiftUI-Implementing-Liquid-Glass-Design.md |
| Liquid Glass in UIKit | UIKit-Implementing-Liquid-Glass-Design.md |
| Liquid Glass in AppKit | AppKit-Implementing-Liquid-Glass-Design.md |
| Liquid Glass in WidgetKit | WidgetKit-Implementing-Liquid-Glass-Design.md |
| SwiftUI new toolbar features | SwiftUI-New-Toolbar-Features.md |
| SwiftUI styled text editing | SwiftUI-Styled-Text-Editing.md |
| SwiftUI WebKit integration | SwiftUI-WebKit-Integration.md |
| SwiftUI AlarmKit integration | SwiftUI-AlarmKit-Integration.md |
| Swift Charts 3D visualization | Swift-Charts-3D-Visualization.md |
| Foundation AttributedString updates | Foundation-AttributedString-Updates.md |
| Topic | Filename |
|---|---|
| SwiftData class inheritance | SwiftData-Class-Inheritance.md |
| Topic | Filename |
|---|---|
| Swift concurrency updates | Swift-Concurrency-Updates.md |
| InlineArray and Span | Swift-InlineArray-Span.md |
| Topic | Filename |
|---|---|
| Foundation Models (on-device LLM) | FoundationModels-Using-on-device-LLM-in-your-app.md |
| Topic | Filename |
|---|---|
| App Intents updates | AppIntents-Updates.md |
| StoreKit updates | StoreKit-Updates.md |
| MapKit GeoToolbox PlaceDescriptors | MapKit-GeoToolbox-PlaceDescriptors.md |
| Widgets for visionOS | Widgets-for-visionOS.md |
| Topic | Filename |
|---|---|
| Assistive Access in iOS | Implementing-Assistive-Access-in-iOS.md |
| Topic | Filename |
|---|---|
| Visual Intelligence in iOS | Implementing-Visual-Intelligence-in-iOS.md |
The diagnostics directory ships more files than are listed here (the count varies by Xcode version); the most relevant are below. Read with the path pattern {diagnostics base}/{filename}.
| Diagnostic | Filename |
|---|---|
| Actor-isolated call from nonisolated context | actor-isolated-call.md |
| Conformance isolation | conformance-isolation.md |
| Isolated conformances | isolated-conformances.md |
| Nonisolated nonsending by default | nonisolated-nonsending-by-default.md |
| Sendable closure captures | sendable-closure-captures.md |
| Sendable metatypes | sendable-metatypes.md |
| Explicit Sendable annotations | explicit-sendable-annotations.md |
| Sending closure risks data race | sending-closure-risks-data-race.md |
| Sending risks data race | sending-risks-data-race.md |
| Mutable global variable | mutable-global-variable.md |
| Preconcurrency import | preconcurrency-import.md |
| Dynamic exclusivity | dynamic-exclusivity.md |
| Exclusivity violation | exclusivity-violation.md |
| Diagnostic | Filename |
|---|---|
| Existential any | existential-any.md |
| Existential member access limitations | existential-member-access-limitations.md |
| Nominal types | nominal-types.md |
| Multiple inheritance | multiple-inheritance.md |
| Protocol type non-conformance | protocol-type-non-conformance.md |
| Opaque type inference | opaque-type-inference.md |
| Foreign reference type | foreign-reference-type.md |
| Diagnostic | Filename |
|---|---|
| Deprecated declaration | deprecated-declaration.md |
| Error in future Swift version | error-in-future-swift-version.md |
| Strict language features | strict-language-features.md |
| Strict memory safety | strict-memory-safety.md |
| Implementation only deprecated | implementation-only-deprecated.md |
| Member import visibility | member-import-visibility.md |
| Missing module on known paths | missing-module-on-known-paths.md |
| Module not testable | module-not-testable.md |
| Module version missing | module-version-missing.md |
| Clang declaration import | clang-declaration-import.md |
| Availability unrecognized name | availability-unrecognized-name.md |
| Always-available domain | always-available-domain.md |
| Upcoming language features | upcoming-language-features.md |
| Unknown warning group | unknown-warning-group.md |
| Compilation caching | compilation-caching.md |
| Embedded restrictions | embedded-restrictions.md |
| Diagnostic | Filename |
|---|---|
| Dynamic callable requirements | dynamic-callable-requirements.md |
| Property wrapper requirements | property-wrapper-requirements.md |
| Result builder methods | result-builder-methods.md |
| String interpolation conformance | string-interpolation-conformance.md |
| Trailing closure matching | trailing-closure-matching.md |
| Temporary pointers | temporary-pointers.md |
| Semantic copies | semantic-copies.md |
| Performance hints | performance-hints.md |
| Diagnostic | Filename |
|---|---|
| Diagnostic groups (taxonomy) | diagnostic-groups.md |
| All diagnostics index | diagnostics.md |
If a diagnostic you need isn't listed above, list the diagnostics directory first:
ls "<Xcode>.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/doc/swift/diagnostics/"<Xcode>.app is the app session context names; without session context, derive it as above. Command Line Tools keep the same files at /Library/Developer/CommandLineTools/usr/share/doc/swift/diagnostics/.
Filenames follow the diagnostic's short name (lowercase, hyphenated).
User question about Apple API/framework?
├── Specific compiler error/warning → Read {diagnostics base}/<diagnostic-name>.md
├── Liquid Glass implementation → Read {guides base}/<Framework>-Implementing-Liquid-Glass-Design.md
├── Swift concurrency patterns → Read {guides base}/Swift-Concurrency-Updates.md
├── Foundation Models / on-device AI → Read {guides base}/FoundationModels-Using-on-device-LLM-in-your-app.md
├── SwiftData features → Read {guides base}/SwiftData-Class-Inheritance.md
├── StoreKit / IAP → Read {guides base}/StoreKit-Updates.md
├── App Intents / Siri → Read {guides base}/AppIntents-Updates.md
├── Charts / visualization → Read {guides base}/Swift-Charts-3D-Visualization.md
├── Text editing / AttributedString → Read {guides base}/SwiftUI-Styled-Text-Editing.md or Foundation-AttributedString-Updates.md
├── WebKit in SwiftUI → Read {guides base}/SwiftUI-WebKit-Integration.md
├── Toolbar features → Read {guides base}/SwiftUI-New-Toolbar-Features.md
└── Other → ls the base directory to see what's availableIf the resolved Xcode has no IDEIntelligenceChat.framework documentation directory (older Xcode, or only Command Line Tools installed), fall back to the list below. For a Swift diagnostic, first try the Command Line Tools copy at /Library/Developer/CommandLineTools/usr/share/doc/swift/diagnostics/.
skills/apple-docs-research.md)skills/apple-docs-research.md); Command Line Tools includes only the macOS SDKDo not silently fail — tell the user when Xcode docs aren't available locally and which fallback you used.
Clients using axiom-mcp can also invoke axiom_read_skill with the legacy ID (e.g., apple-guide-swiftui-implementing-liquid-glass-design). The MCP server reads the same Xcode files and returns the same content. Both paths are supported — the file-Read path works everywhere; the MCP path is a convenience for catalog/search workflows.
When the bundled guides don't cover it — Apple's full API reference, the SDK's own declarations, or a WWDC session's transcript and code — see skills/apple-docs-research.md.
Skills: axiom-swiftui, axiom-concurrency, axiom-data, axiom-ai, axiom-integration
CharlesWiltgen/Axiom
58ae15a
Canonical home
since Sep 6, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.