swift-concurrency · wendylabsinc — Claude Code skill: what it does, how to install
Guides your coding assistant through async/await, actor boundaries, and Swift 6 strict concurrency checks without careless @MainActor escapes.
npx skills add wendylabsinc/claude-skills --skill swift-concurrency -a claude-codeWhat swift-concurrency does
This skill guides models through modern Swift concurrency rules. Before suggesting code changes, the agent inspects the project configuration in Package.swift or project.pbxproj to confirm the Swift mode, toolchain version, and strict concurrency level. It asks for clarification if isolation flags are missing.
The workflow forbids slapping @MainActor on arbitrary types just to silence compiler errors. It forces the model to trace isolation boundaries and prioritize structured concurrency, such as task groups and async let. When workarounds like @unchecked Sendable or nonisolated(unsafe) are unavoidable, the assistant must document safety invariants.
What it helps with
- migrate legacy closure callbacks to async/await
- fix compiler diagnostics about passing non-Sendable values
- adapt codebases for Swift 6 strict concurrency mode
- organize parallel jobs with structured task groups
Example prompts for the agent
- Check this manager class for data race issues under Swift 6 mode
- Refactor this array processing loop using
withTaskGroup - Fix the nonisolated context warning without adding
@MainActor
How to install swift-concurrency
1Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-concurrency -a claude-code2Manually: put the files in place
~/.claude/skills/swift-concurrency/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/swift-concurrency/
1Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-concurrency -a codex2Manually: put the files in place
.agents/skills/swift-concurrency/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-concurrency -a cursor2Manually: put the files in place
.cursor/skills/swift-concurrency/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install wendylabsinc/claude-skills swift-concurrency2Manually: put the files in place
.github/skills/swift-concurrency/SKILL.md1Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-concurrency -a gemini-cli2Platform CLI
gemini skills install https://github.com/wendylabsinc/claude-skills --path swift-concurrencyManually: put the files in place
.devin/skills/swift-concurrency/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-concurrency -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 swift-concurrency
How to install swift-concurrency in Claude Code?
Run npx skills add wendylabsinc/claude-skills --skill swift-concurrency -a claude-code in your terminal.
What does swift-concurrency do?
It instructs AI agents to enforce safe concurrency practices in Swift, handling actor isolation, Sendable types, and structured tasks cleanly.
Why does the skill restrict using @MainActor as a quick fix?
Indiscriminate use of @MainActor pushes background work onto the UI thread and hides structural concurrency issues instead of resolving shared state isolation properly.
Similar skills
All skills for Mobile →swift-concurrency by other authors comes first.