Skills · Claude Code · Agent Skills
強制アンラップ、データ競合、バンドル内の秘密情報なしの Swift。交渉の余地はありません。
Apple クライアントのための言語レベルの最低基準です。strict concurrency による構造化並行処理、循環参照のない ARC、型付きエラー、Keychain を求めます。アプリ層の基準(IAM、オフライン、ストア)は schematize-mobile が担い、そちらが優先されます。
schematize-swift · v0.4.0bash
$ schematize install swift譲れない最低基準
「速くするため」に外すことはありません。完全な一覧はスキル内にあります。
強制アンラップは先送りされた fatalError
本番で try! と as! は禁止です。! は本当の不変条件がある場合のみで、その際はメッセージ付きの precondition を使います。
構造化された並行処理
async/await を使い、非同期の待機に DispatchSemaphore は使いません。新規コードでは strict concurrency(Swift 6 モード)を有効にします。
MainActor は UI のみ、キャンセルは協調的
@MainActor は UI に触れるものだけに付け、長い処理は Task.isCancelled を確認します。
循環参照はリーク
画面より長生きするものには [weak self]、delegate は weak とし、unowned は所有者が確実に長生きする場合のみです。
エラーは型付きの値
空の catch は禁止です。fatalError はプログラム上の不変条件のみで、I/O、ネットワーク、ユーザーデータには使いません。
秘密情報は Keychain、ビルドは固定
秘密情報をバンドルや UserDefaults に置かず、NSAllowsArbitraryLoads は禁止。Package.resolved をコミットし、CI では警告をエラー扱いにします。
コマンド
.claude/commands/ にインストールされます。いつでも /swift-help を実行できます。
/swift-ccコンテキスト圧縮:ハンドオフ(コンテキスト+チェックリスト)をアーカイブに書き出し、/compact を実行します。/swift-claudeschematize-swift の常時有効な CLAUDE.md をリポジトリ直下に作成またはマージします。他スキルのブロックは上書きしません。/swift-handoff圧縮せずにコンテキストのハンドオフをアーカイブに書き出します。セッション終了やタスク切り替え時に使います。/swift-helpスキルの全コマンドを一覧表示します。/swift-loadschematize-swift の規範本体をすべて強制ロードし、セッション中適用します。/swift-review.swift を基準に照らしてレビューします。ゲートを実行し、機械が読めない点を読みます。AIエージェント向け
人手を介さずにインストールできます。メタデータは llms.txt にあります。
- 実行:git clone https://github.com/schematizeme/skill-swift.git && ./skill-swift/install.sh
- または https://github.com/schematizeme/skill-swift/releases/latest/download/skill-swift.zip をダウンロードして .claude/skills/ に展開します。
- assets/CLAUDE.md をリポジトリ直下にコピーします(常時有効ルール)。
- /swift-help で確認します。
ディスカッション
読み込み中…