mcpField
G
guide-swift-concurrency

guide-swift-concurrency

github.com/prisma-labs-dev開発349454 回インストール5 週間前に更新
リポジトリ

guide-swift-concurrency について

guide-swift-concurrency は、Swift の並行処理コードのレビューと記述に使うワークフロー・パターンガイドです。Swift 開発者が実際の正確性の問題を見つけられるよう、Swift 6.2、アクター、キャンセル、非同期ストリーム、テストを扱います。

主な機能

  1. 01Swift 並行処理コードのレビュー
  2. 02Swift 6.2 の並行処理動作の確認
  3. 03アクターと隔離の評価
  4. 04構造化並行処理パターンの優先
  5. 05キャンセル処理と非同期ストリームの確認
  6. 06並行処理の移行とテストの案内

活用シーン

  1. 01並行処理コードの正確性レビュー
  2. 02厳密な並行処理のコンパイルエラー診断
  3. 03GCD やコールバック方式のコード移行
  4. 04非同期テストパターンの確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/prisma-labs-dev/apple-skills --skill guide-swift-concurrency

インストール後、Claude Code で/guide-swift-concurrencyを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
actors.md
async-streams.md
bridging.md
bug-patterns.md
cancellation.md
diagnostics.md
hotspots.md
interop.md
new-features.md
structured.md
testing.md
unstructured.md

詳細

Guide Skill — これは API リファレンスドキュメントではなく、エキスパート向けのワークフロー/パターンガイドです。 Paul Hudson による twostraws/Swift-Concurrency-Agent-Skill が元になっています。MIT License。

Swift Concurrency のパターン

Swift の並行処理コードをレビュー、作成し、正確性、最新の API の使用、プロジェクトの規約への準拠を確認します。本当に問題がある箇所のみ報告し、細かな点を過度に指摘したり、問題をでっち上げたりしないでください。

基本的な指示

  • 厳密な並行処理チェックを有効にした Swift 6.2 以降を対象にします。
  • 非構造化並行処理(Task {})より、構造化並行処理(タスクグループ)を優先します。
  • 新しいコードでは、GCD より Swift の並行処理機能を優先します。低レベルのコード、フレームワークとの相互運用、またはパフォーマンスが重要な同期処理では、引き続き GCD を使用できます。
  • コンパイラーエラーの解決策として @unchecked Sendable を提案しないでください。アクター、値型、または sending パラメーターを優先します。

レビュープロセス

  1. references/hotspots.md を使用して、既知の危険なパターンを調べます。
  2. references/new-features.md を使用して、Swift 6.2 の並行処理の動作を確認します。
  3. references/actors.md を使用して、再入可能性と隔離についてアクターの使い方を検証します。
  4. references/structured.md を使用して、構造化並行処理が優先されていることを確認します。
  5. references/unstructured.md を使用して、非構造化タスクの使い方を確認します。
  6. references/cancellation.md を使用して、キャンセル処理を検証します。
  7. references/async-streams.md を使用して、非同期ストリームと継続の使い方を検証します。
  8. references/bridging.md を使用して、同期コードと非同期コード間のブリッジコードを確認します。
  9. references/interop.md を使用して、レガシーな並行処理コードの移行をレビューします。
  10. references/bug-patterns.md を使用して、一般的な失敗パターンと照合します。
  11. 厳密な並行処理に関するエラーがある場合は、references/diagnostics.md を使用して診断メッセージに対応する修正方法を確認します。
  12. テストをレビューする場合は、references/testing.md を使用して非同期テストのパターンを確認します。

作業の一部のみを行う場合は、関連する参照ファイルだけを読み込んでください。

参照資料

トピック参照資料
コードレビューで検索する対象 — 既知の危険なパターンreferences/hotspots.md
Swift 6.2:デフォルトの隔離、@concurrent、Task.immediate、隔離された deinitreferences/new-features.md
アクターの再入可能性、グローバルアクターの推論、隔離パターンreferences/actors.md
タスクグループ、async let、withDiscardingTaskGroup、並行処理の制限references/structured.md
Task と Task.detached の違い、Task {} がコードの臭いとなる場合references/unstructured.md
協調的キャンセル、withTaskCancellationHandler、問題のあるパターンreferences/cancellation.md
AsyncStream.makeStream(of:)、継続のライフサイクル、バックプレッシャーreferences/async-streams.md
チェック付き継続、デリゲートのラップ、@unchecked Sendablereferences/bridging.md
GCD の移行、Combine から AsyncSequence への移行、完了ハンドラー、ロックreferences/interop.md
LLM が生成する一般的な並行処理の失敗パターンとその修正方法references/bug-patterns.md
厳密な並行処理に関するコンパイラーエラーと、考えられる修正方法の対応references/diagnostics.md
非同期テストのパターン、競合状態の検出、タイミングに依存するテストの回避references/testing.md

コメント