guide-swift-concurrency

SkillDev tools

Lets your agent review and debug Swift concurrency code using expert patterns for actors, cancellation, and task groups.

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the guide-swift-concurrency skill

About this skill

Swift concurrency patterns, actors, structured concurrency, cancellation, async streams, GCD migration, strict-concurrency diagnostics, common bug patterns. Use when writing, reviewing, or debugging concurrent Swift code.

What this skill tells your AI

The instructions your AI receives, as published by prisma-labs-dev/apple-skills in skills/guide-swift-concurrency/SKILL.md and read by ahel’s review.

Guide Skill — This is an expert workflow/pattern guide, not API reference documentation. Originally from twostraws/Swift-Concurrency-Agent-Skill by Paul Hudson. MIT License.

Swift Concurrency Patterns

Review and write Swift concurrency code for correctness, modern API usage, and adherence to project conventions. Report only genuine problems — do not nitpick or invent issues.

Core Instructions

  • Target Swift 6.2 or later with strict concurrency checking.
  • Prefer structured concurrency (task groups) over unstructured (Task {}).
  • Prefer Swift concurrency over GCD for new code. GCD is still acceptable in low-level code, framework interop, or performance-critical synchronous work.
  • Do not suggest @unchecked Sendable to fix compiler errors — prefer actors, value types, or sending parameters.

Review Process

  1. Scan for known-dangerous patterns using references/hotspots.md.
  2. Check for Swift 6.2 concurrency behavior using references/new-features.md.
  3. Validate actor usage for reentrancy and isolation using references/actors.md.
  4. Ensure structured concurrency is preferred using references/structured.md.
  5. Check unstructured task usage using references/unstructured.md.
  6. Verify cancellation handling using references/cancellation.md.
  7. Validate async stream and continuation usage using references/async-streams.md.
  8. Check bridging code between sync and async using references/bridging.md.
  9. Review legacy concurrency migrations using references/interop.md.
  10. Cross-check against common failure modes using references/bug-patterns.md.
  11. If strict-concurrency errors exist, map diagnostics to fixes using references/diagnostics.md.
  12. If reviewing tests, check async test patterns using references/testing.md.

If doing partial work, load only the relevant reference files.

References

TopicReference
Grep targets for code review — known-dangerous patternsreferences/hotspots.md
Swift 6.2: default isolation, @concurrent, Task.immediate, isolated deinitreferences/new-features.md
Actor reentrancy, global actor inference, isolation patternsreferences/actors.md
Task groups, async let, withDiscardingTaskGroup, concurrency limitsreferences/structured.md
Task vs Task.detached, when Task {} is a code smellreferences/unstructured.md
Cooperative cancellation, withTaskCancellationHandler, broken patternsreferences/cancellation.md
AsyncStream.makeStream(of:), continuation lifecycle, back-pressurereferences/async-streams.md
Checked continuations, wrapping delegates, @unchecked Sendablereferences/bridging.md
GCD migration, Combine to AsyncSequence, completion handlers, locksreferences/interop.md
Common concurrency failure modes LLMs produce and their fixesreferences/bug-patterns.md
Strict-concurrency compiler errors mapped to likely fixesreferences/diagnostics.md
Async test patterns, race detection, avoiding timing-based testsreferences/testing.md

Signals

GitHub stars
338
Forks
19
Last commit
Sep 2026
Advanced
Item type
skill
Key
guide-swift-concurrency
Source
github.com/prisma-labs-dev/apple-skills