CtrlK
BlogDocsLog inGet started
Tessl Logo

swift-concurrency

Swift Concurrency patterns — async/await, actors, tasks, Sendable conformance. Use when writing async/await code, implementing actors, working with structured concurrency, or ensuring data race safety.

Install with Tessl CLI

npx tessl i github:ravnhq/ai-toolkit --skill swift-concurrency
What are skills?

85

1.02x

Quality

78%

Does it follow best practices?

Impact

97%

1.02x

Average score across 3 eval scenarios

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/framework/swift-concurrency/SKILL.md
SKILL.md
Review
Evals

Evaluation results

100%

Shared Resource Registry for a Media Pipeline

Actor isolation and Sendable conformance

Criteria
Without context
With context

Actor for registry

100%

100%

No NSLock/manual locks

100%

100%

No @unchecked Sendable on registry

100%

100%

Sendable JobRecord

100%

100%

Explicit Sendable on public/struct

100%

100%

Structured parallel workers

100%

100%

No nested Task in task group

100%

100%

Await required for actor access

100%

100%

No Task.detached for workers

100%

100%

Design notes explain actor choice

100%

100%

Correct concurrency boundary

100%

100%

Without context: $0.2524 · 1m 25s · 13 turns · 17 in / 4,731 out tokens

With context: $0.4337 · 1m 39s · 21 turns · 373 in / 4,323 out tokens

96%

-3%

Batch Data Import Pipeline

Task cancellation and structured concurrency

Criteria
Without context
With context

Structured parallelism

100%

100%

No Task.detached

100%

100%

No nested Task in group

100%

100%

Cancellation check before stages

100%

100%

Cancellation check in loop

87%

50%

CancellationError propagates

100%

100%

Automatic child cancellation

100%

100%

Sendable types

100%

100%

Design doc explains cancellation

100%

100%

No unstructured task leaks

100%

100%

Without context: $0.3713 · 1m 28s · 20 turns · 27 in / 4,807 out tokens

With context: $0.4724 · 1m 36s · 25 turns · 2,767 in / 4,968 out tokens

96%

10%

Notification Dispatcher Test Suite

Async test patterns and dummy suspension avoidance

Criteria
Without context
With context

No dummy Task.yield in queue

100%

100%

Correct async on queue

100%

100%

No dummy yield in isDispatching

100%

100%

Actor not @unchecked Sendable class

100%

100%

No manual locking

100%

100%

Swift Testing preferred

0%

100%

No blocking wait(for:)

100%

100%

Correct async fulfillment or direct await

100%

100%

isDispatching test deterministic

60%

60%

Cancellation test present

100%

100%

Review notes explain dummy suspension fix

100%

100%

Review notes explain test fix

100%

100%

Without context: $0.4418 · 2m 15s · 20 turns · 26 in / 7,753 out tokens

With context: $0.8631 · 3m 16s · 29 turns · 8,287 in / 10,909 out tokens

Evaluated
Agent
Claude Code
Model
Claude Sonnet 4.6

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.