Skip to content
Mobile
Skill

/axiom-swift

Use when the question is about Swift or its toolchain rather than a framework — modern idioms, noncopyable types, drag and drop, debug deep links, tvOS targets.

From plugin
axiom
1.3k71 skills44 agents18 commands1 MCP

Claude Code

$ npx -y skills add charleswiltgen/axiom --skill axiom-swift --agent claude-code

SKILL.md

axiom-swift.SKILL.md
name: axiom-swift
description: Use when the question is about Swift or its toolchain rather than a framework — modern idioms, noncopyable types, drag and drop, debug deep links, tvOS targets.
license: MIT

Swift Language & Platform

**You MUST use this skill for ANY Swift idiom review, ownership/noncopyable types, Transferable/drag-and-drop, debug deep links, or tvOS development.**

<!-- AXIOM_AUDITOR_INLINE_BEGIN — rewritten for Codex by scripts/build-codex.ts; do not hand-edit --> > **Auditors are skills here.** Where this router says "Launch `some-auditor` agent", invoke the > matching Codex skill instead — same procedure, no Claude Code agent required. > > Available: `axiom-swift-simplifier`. > > The ones that shell out — builds, tests, simulators, crash symbolication — need shell access to run. <!-- AXIOM_AUDITOR_INLINE_END -->

Quick Reference

| Symptom / Task | Reference | |----------------|-----------| | Outdated Swift patterns (Date(), CGFloat, DateFormatter) | See `skills/swift-modern.md` | | Foundation modernization (FormatStyle, URL.documentsDirectory) | See `skills/swift-modern.md` | | Common Claude hallucinations in Swift code | See `skills/swift-modern.md` | | Swift 6.4 idioms — `anyAppleOS`, `weak let`, `~Sendable` (`OS27`) | See `skills/swift-modern.md` | | Noncopyable types (~Copyable) | See `skills/ownership-conventions.md` | | borrowing/consuming parameter ownership | See `skills/ownership-conventions.md` | | InlineArray, Span, value generics; Swift 6.4 `borrow`/`mutate` accessors (`OS27`) | See `skills/ownership-conventions.md` | | Reducing ARC overhead | See `skills/ownership-conventions.md` | | Drag and drop (.draggable, .dropDestination) | See `skills/transferable-ref.md` | | Copy/paste (.copyable, PasteButton) | See `skills/transferable-ref.md` | | ShareLink, content sharing | See `skills/transferable-ref.md` | | Custom UTType declarations | See `skills/transferable-ref.md` | | TransferRepresentation choices | See `skills/transferable-ref.md` | | Debug-only deep links for simulator testing | See `skills/deep-link-debugging.md` | | Navigate to specific screens for screenshots | See `skills/deep-link-debugging.md` | | tvOS Focus Engine, Siri Remote input | See `skills/tvos.md` | | tvOS storage constraints (no guaranteed-persistent local storage) | See `skills/tvos.md` | | tvOS text input, AVPlayer tuning | See `skills/tvos.md` | | TVUIKit components | See `skills/tvos.md` | | Simplify Swift for clarity (behavior-preserving cleanups) | `swift-simplifier` agent — `axiom-swift-simplifier` |

Decision Tree

digraph swift {
    start [label="Swift task" shape=ellipse];
    what [label="What do you need?" shape=diamond];

    start -> what;
    what -> "skills/swift-modern.md" [label="modern idioms,\noutdated patterns,\nFoundation APIs"];
    what -> "skills/ownership-conventions.md" [label="~Copyable, borrowing,\nconsuming, InlineArray,\nSpan, ARC reduction"];
    what -> "skills/transferable-ref.md" [label="drag & drop, copy/paste,\nShareLink, UTTypes,\nTransferable conformance"];
    what -> "skills/deep-link-debugging.md" [label="debug deep links,\nsimulator navigation,\nscreenshot automation"];
    what -> "skills/tvos.md" [label="tvOS app,\nFocus Engine,\nSiri Remote, storage"];
}

1. Outdated Swift patterns / modern API replacements / Claude hallucinations? -> `skills/swift-modern.md` 2. ~Copyable / borrowing / consuming / InlineArray / Span? -> `skills/ownership-conventions.md` 3. Drag and drop / copy/paste / ShareLink / Transferable / UTTypes? -> `skills/transferable-ref.md` 4. Debug deep links / simulator navigation / screenshot automation? -> `skills/deep-link-debugging.md` 5. tvOS development / Focus Engine / Siri Remote / storage / AVPlayer? -> `skills/tvos.md` 6. Swift concurrency (async/await, actors, Sendable) -> `/skill axiom-concurrency` 7. Swift performance (COW, ARC, generics optimization) -> See axiom-performance (skills/swift-performance.md) 8. Codable patterns (JSON, CodingKeys, enum serialization) -> See axiom-data (skills/codable.md) 9. Simplify Swift for clarity (guard/optional cleanups, if/switch expressions, boilerplate)? -> `swift-simplifier` agent (`axiom-swift-simplifier`)

Conflict Resolution

**swift vs concurrency**: When Swift 6 concurrency errors appear:

  • **Use concurrency, NOT swift** -- Concurrency errors are actor isolation / Sendable issues. `skills/swift-modern.md` covers concurrency *posture* (defaults), but detailed patterns live in axiom-concurrency.

**swift vs performance**: When optimizing Swift code:

  • **Use swift for ownership** if the question is borrowing/consuming/~Copyable/InlineArray/Span -> `skills/ownership-conventions.md`
  • **Use performance** if the question is COW, ARC profiling, generic specialization, or Instruments workflows -> axiom-performance

**swift vs swiftui**: When implementing drag and drop or copy/paste:

  • **Use swift** for Transferable conformance, representation choices, UTType declarations -> `skills/transferable-ref.md`
  • **Use swiftui** for view-level modifiers (.draggable, .dropDestination styling, animations)

**swift vs integration**: When sharing content:

  • ShareLink + Transferable -> **use swift** (`skills/transferable-ref.md`)
  • UIActivityViewController customization, share extensions -> **use integration**

**swift vs axiom-build**: When tvOS build fails:

  • Environment/Xcode issues -> **use axiom-build first**
  • tvOS platform-specific code issues (Focus Engine, storage, no WebView) -> **use swift** (`skills/tvos.md`)

Critical Patterns

**Modern Swift Idioms** (`skills/swift-modern.md`):

  • 12+ outdated patterns Claude defaults to (Date(), CGFloat, DateFormatter, DispatchQueue.main.async)
  • Foundation modernization (FormatStyle, URL.documentsDirectory, .replacing())
  • SwiftUI convenience APIs Claude misses (ContentUnavailableView.search, LabeledContent)
  • Swift 6.4 concurrency posture defaults
  • 12+ common Claude hallucinations with corrections

**Ownersh

Read more
@charleswiltgen
Ships withaxiom

Battle-tested skills, agents, and tools for modern Apple OS development — Swift 6, SwiftUI, Liquid Glass, Apple Intelligence, and more. Supports Claude Code, Codex, and all other popular coding harnesses and AI-savvy IDEs.

1.3k71 skills44 agents1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
1.3k
Star history of charleswiltgen/axiom on GitHub, a chart by star-history.com

Other skills on axiom.

axiom-accessibility

axiom-accessibility

Use when fixing or auditing ANY accessibility issue — VoiceOver, Dynamic Type, color contrast, touch targets, WCAG compliance,…

axiom-ai

axiom-ai

Use when implementing, testing, or evaluating ANY Apple Intelligence, on-device AI, or speech-to-text feature. Covers Foundation…

axiom-analyze-crash

axiom-analyze-crash

Use when the user has a crash log (.ips, MetricKit JSON, legacy .crash text, .xccrashpoint bundle, or pasted text) that needs…

More skills from other plugins.

deep-code-review

deep-code-review

In-depth design-focused code review - understands codebase context before evaluating PR changes, posts structured feedback to…

expo4d53k
@expo@expoInstall Skill
modlens

modlens

Plug-in vision for text-only models. Hard rule: when a file path or URL with an image extension (.png, .jpg, .jpeg, .webp, .gif,…

modlens3w4.6k
@liustack@liustackInstall Skill
appllama-app-design-skill

appllama-app-design-sk…

Build native-feeling, benchmark-quality mobile app screens (Expo / React Native). Use when designing or implementing any mobile…

appllama2mo3.9k
@appllama@appllamaInstall Skill

Questions about axiom-swift.

Which coding agents can use axiom-swift?
axiom-swift installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.