Skip to content
Development
Skill

/axiom-swift

Use when reviewing Swift code for modern idioms, working with noncopyable types, implementing drag and drop, adding debug deep links, or building for tvOS.

From plugin
axiom
1.1k66 skills1 MCP
Install
$ npx -y skills add charleswiltgen/axiom --skill axiom-swift --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/axiom-swift

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when reviewing Swift code for modern idioms, working with noncopyable types, implementing drag and drop, adding debug deep links, or building for tvOS.

SKILL.md

axiom-swift.SKILL.md
name: axiom-swift
description: Use when reviewing Swift code for modern idioms, working with noncopyable types, implementing drag and drop, adding debug deep links, or building for tvOS.
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 — auto-maintained by scripts/build-inlined-auditors.ts; do not hand-edit --> > **Not on Claude Code?** Where this router says "Launch `some-auditor` agent", read that auditor's file in this suite and follow it inline — the same procedure, needing only file search and read. > > Available here: `skills/swift-simplifier.md`. > > Agents that need Bash — builds, tests, simulators, crash symbolication — stay Claude Code-only; there is no inline equivalent for those. <!-- 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 Documents dir) | 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:audit swift-simplify` |

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:audit swift-simplify`)

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 co
Read more
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.

Get the whole plugin