Guide · Agent skill
How to use the Swift Concurrency Expert agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The Swift Concurrency Expert skill is a set of instructions that teaches an AI agent how to review and fix Swift concurrency problems, such as Sendable and actor isolation compiler errors. It is aimed at Swift developers moving to Swift 6 or 6.2, and at teams migrating an app to strict concurrency checking. After this guide you will know what the skill changes about the agent's behavior, how to install it, how to trigger it with a plain request, and what to check before accepting its changes.
Quick start
- 1Download the ZIP. Download the skill ZIP from this page and unzip it.
- 2Choose a location. Place the folder in ~/.claude/skills/ for personal use, or in a project's .claude/skills/ folder for one project.
- 3Or upload in the Claude apps. In the Claude apps, go to Settings → Capabilities → Skills and upload the ZIP.
- 4Describe the error. Paste the exact compiler diagnostic and the code around the offending symbol.
- 5Ask for the smallest fix. Request a minimal change that keeps behavior the same and an explanation of why it is needed.
- 6Review the change. Check any @unchecked Sendable or isolation change carefully before merging.
What the skill makes the agent do
Swift has rules that stop code from running into data races when work happens on several threads at once. Without the skill, an agent may simply silence a compiler error. With the skill installed, the agent follows a structured process: it captures the exact diagnostic, identifies the offending symbols and the actor they belong to (such as @MainActor, an actor, or nonisolated), and then applies the smallest change that keeps behavior the same.
- Triage: record the exact compiler diagnostics and the symbols involved, and check whether the code is UI-bound or meant to run off the main actor.
- Smallest safe fix: for example annotating a UI-bound type with @MainActor, or moving expensive work into a @concurrent async function.
- Sendable guidance: prefer immutable value types and avoid @unchecked Sendable unless thread safety can be proven.
- Reference notes: Swift 6.2 concurrency changes and SwiftUI concurrency guidance for the agent to consult.
Install the skill from the ZIP
Download the ZIP for this skill from this page and unzip it. The skill is a folder containing SKILL.md, references/swift-6-2-concurrency.md and references/swiftui-concurrency-tour-wwdc.md. Put the unzipped folder in one of two places: ~/.claude/skills/ to make it available to you across projects, or a project's .claude/skills/ folder to make it available only inside that project.
You can also upload the ZIP in the Claude apps under Settings → Capabilities → Skills.
- Personal install: place the folder in ~/.claude/skills/.
- Project install: place the folder in the project's .claude/skills/ directory.
- Claude apps: Settings → Capabilities → Skills, then upload the ZIP.
How to trigger the skill with natural requests
You do not need a special command. Describe the problem in plain language and include the exact compiler message if you have it. The skill is written for Swift 6.2+ codebases, so mention your Swift version if it matters. The skill's own description covers Swift concurrency review and fixes for compiler errors, Sendable, isolation and remediation, so requests about those topics are the ones it is built for.
- "Fix this Sendable error after I moved the project to Swift 6."
- "Why does this view model need @MainActor? The compiler says it is isolated."
- "Review this file for actor isolation problems and make the smallest fix."
- "Explain why this closure captures main actor state unsafely."
What a good session looks like
Give the agent the diagnostic and the code. Expect it to name the actor context first, then propose a targeted change. Ask it to explain the reason for each fix, because the skill is designed to teach why a fix is needed rather than only silence the compiler.
Read every change before accepting it. Review any use of @unchecked Sendable with care, since the skill warns against it unless thread safety can be proven.
Requirements, scripts and network use
The skill lists no required tools. It does not run scripts and does not use the network, according to its listing. Its contents are Markdown instructions and reference notes. The skill's source is MIT licensed.
- Requires: nothing listed.
- Runs scripts: no.
- Uses network: no.
- Attribution: the SKILL.md notes it was copied from @Dimillian's Dimillian/Skills.
When not to use it
The skill does not apply to projects that do not use Swift. The advice on newer @concurrent patterns may not compile in codebases that are not on Swift 6.2, so check your toolchain before applying those changes.
- Non-Swift projects such as JavaScript or Python.
- Codebases not on Swift 6.2 when using @concurrent patterns.
- Blindly suppressing warnings with @unchecked Sendable.
What people use it for
- Fixing a Sendable error that appears after enabling Swift 6 strict concurrency checking.
- Adding @MainActor to a UI-bound view model or protocol conformance that the compiler flags.
- Moving expensive image or data processing off the main actor into a @concurrent async function.
- Protecting global or static mutable state with @MainActor or an actor.
- Reviewing SwiftUI closures such as visualEffect or onGeometryChange that capture main actor state.
Frequently asked questions
How do I install the swift-concurrency-expert skill?
Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder. You can also upload the ZIP in the Claude apps under Settings → Capabilities → Skills.
Does the swift-concurrency-expert skill require anything else?
The listing states no required dependencies. It does not run scripts and does not use the network. It is designed for Swift 6.2+ codebases.
Is the swift-concurrency-expert skill free to use?
The skill is published under the MIT licence, as stated on this page. Check the licence file in the source repository for the full terms.
What is the difference between this skill and just asking an AI for a fix?
The skill gives the agent a fixed workflow: capture the exact diagnostic, identify the actor context, then apply the smallest safe fix. It also asks the agent to explain why, rather than only silencing the compiler.
Why does the skill warn against @unchecked Sendable?
Marking a type @unchecked Sendable tells the compiler to skip its safety check. The skill says to use it only when you can prove thread safety, so any such change needs a careful human review.
Can I use this skill for a non-Swift project?
No. The skill covers Swift concurrency only, so it does not apply to projects written in languages such as JavaScript or Python.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
This skill suits Swift developers who see Sendable or actor isolation errors after moving to Swift 6 or 6.2, and teams that want consistent, minimal concurrency fixes with explanations. It is not a good fit for non-Swift projects, for codebases not on Swift 6.2 that rely on newer @concurrent patterns, or for anyone who wants warnings silenced quickly without review.
Download the skill