Swift Concurrency
Swift 6 data-race diagnostik, aktør-isolation, callback-til-async-migrering
Testet · Virker
Hvad det gør
Diagnosticerer Swift Concurrency compilerfejl og guider Swift 6-migrering ved først at læse projektets sprogtilstand og isolationsindstillinger, derefter anvende den mindste sikre rettelse. Udløses ved Sendable, @MainActor, actors, data races, eller konvertering af completion handlers til async/await.
Testrapport
Opgave: at opnå en ren Swift 6-build af en model med en callback-loader og en delt cache — swiftc -swift-version 6 gav 3 fejl "main actor-isolated property ... from a Sendable closure". Baseline-kørslen uden skill — en refleksiv rettelse Task { @MainActor in ... } — kompilerer rent (0 fejl), dvs. ifølge compileren er begge versioner ens. Forskellen opstod i næste trin: skill'en gjorde Cache til en aktør ifølge reglen "shared mutable state → actor", mens baseline-versionen beholdt den som en klasse; da jeg tilføjede et realistisk krav (opvarmning af cachen fra en baggrunds Task.detached), faldt baseline-varianten med fejlen "non-sendable type 'Cache' ... cannot cross actor boundary", mens skill-versionen kompilerede rent (exit 0). Skill'en tvang også først til at fastsætte language mode og anvendte sin egen regel for Task entry isolation, idet den beholdt den nedarvede @MainActor, fordi det synkrone præfiks muterer isLoading. Alle 15 references/-filer er på plads, installationen er verificeret i en tom HOME uden ~/.claude. Der er et link til forfatterens betalte kursus, men det er ærligt angivet i sidefoden og markeret «use sparingly».
Testet: 2026-07-17 · Claude Code 2.x (agent harness)
Installation
git clone https://github.com/AvdLee/Swift-Concurrency-Agent-Skill.git mkdir -p ~/.claude/skills cd Swift-Concurrency-Agent-Skill && cp -r swift-concurrency ~/.claude/skills/swift-concurrency
Kommandoer og eksempelprompter
/swift-concurrencySwift 6 data-race diagnostik, aktør-isolation, callback-til-async-migrering
Skills udløses af almindelige forespørgsler — ingen kommandoer at huske. Efter installationen aktiverer prompter som disse skillen (på engelsk):
My Swift 6 build throws main actor-isolated Sendable closure errors, helpMigrate this completion-handler loader to async/await under Swift 6 strict modeThis shared mutable cache won't cross the actor boundary in Swift 6