mcpField
G
generators

generators

github.com/rshankras開発838496 回インストール14 週間前に更新
リポジトリ

generators について

iOS と macOS の開発者向けに、プロジェクトに合わせた Swift コードを生成するスキル集です。インフラ、UI、テストなど、アプリの共通機能を扱います。

主な機能

  1. 01プロジェクト構成とパターンの検出
  2. 02プラットフォームと Swift バージョンの判定
  3. 03プロバイダーを切り替えられるプロトコル設計
  4. 04アプリ基盤コードの生成
  5. 05UI とエンゲージメント機能の生成
  6. 06テストとリリース設定の生成

活用シーン

  1. 01構造化ログや分析機能の追加
  2. 02認証やデータ永続化の構築
  3. 03オンボーディング、設定、ペイウォールUIの生成
  4. 04テストと CI/CD ワークフローの準備

インストール

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

$npx skills add https://github.com/rshankras/claude-code-apple-skills --skill generators

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

同梱ファイル

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

accessibility-generator/
accessibility-patterns.md
account-deletion/
templates.md
analytics-setup/
analytics-patterns.md
analytics-setup/templates/
AnalyticsEvent.swift
AnalyticsService.swift
AnalyticsServiceKey.swift
analytics-setup/templates/Providers/
FirebaseAnalytics.swift
NoOpAnalytics.swift
TelemetryDeckAnalytics.swift
announcement-banner/
templates.md
app-clip/
patterns.md
templates.md
app-extensions/
templates.md
app-icon-generator/
apple-hig-icons.md
app-icon-generator/templates/
generate-icon-template.swift
app-store-assets/
specs-reference.md
auth-flow/
auth-patterns.md
auth-flow/templates/
AuthenticationManager.swift
BiometricAuthManager.swift
KeychainManager.swift
SignInWithAppleButton.swift
SignInWithAppleManager.swift
background-processing/
templates.md
ci-cd-setup/
ci-cd-patterns.md
ci-cd-setup/templates/fastlane/
Appfile
Fastfile
Matchfile
ci-cd-setup/templates/github-actions/
build-test.yml
deploy-appstore.yml
deploy-testflight.yml

詳細

コードジェネレーター

iOS および macOS アプリ向けの本番環境対応コードジェネレーターです。アドバイスを提供するスキル(レビュー、監査)とは異なり、プロジェクトに合わせた動作するコードを生成します。

このスキルが有効になるタイミング

ユーザーが次のような場合に、このスキルを使用します。

  • 一般的なアプリのコンポーネント(ロギング、アナリティクス、オンボーディングなど)を追加したい
  • インフラストラクチャコードを「セットアップ」または「追加」したい
  • print() を適切なロギングに置き換えることに言及している
  • App Store のレビュー依頼を追加したい
  • アナリティクスまたはクラッシュレポートのセットアップが必要

主な原則

1. コンテキストを考慮した生成

コードを生成する前に、スキルは次のことを行います。

  • 既存のプロジェクト構成とパターンを読み取る
  • デプロイメントターゲットと Swift のバージョンを検出する
  • アーキテクチャパターン(MVVM、TCA など)を特定する
  • 競合を避けるため、既存の実装を確認する
2. プロトコルベースのアーキテクチャ

プロバイダーに依存するコードでは、簡単に切り替えられるようプロトコルを使用します。

protocol AnalyticsService { ... }
class TelemetryDeckAnalytics: AnalyticsService { ... }
class FirebaseAnalytics: AnalyticsService { ... }
// Change provider by swapping ONE line
3. プラットフォームの検出

スキルは iOS と macOS のどちらか、および App Store 経由か直接配布かを検出し、適切なコードを生成します。

利用可能なジェネレーター

ユーザーのニーズに応じて、関連するモジュールファイルを読み取ります。

logging-setup/

print() ステートメントを構造化された os.log/Logger に置き換えます。

  • 既存の print() の使用箇所を監査
  • AppLogger のインフラストラクチャを生成
  • 適切なプライバシーレベルを設定して print → Logger に移行
analytics-setup/

プロバイダーを切り替え可能なプロトコルベースのアナリティクスです。

  • TelemetryDeck、Firebase、Mixpanel をサポート
  • テスト/プライバシー保護向けの NoOp 実装
  • プロバイダーを簡単に切り替え可能
onboarding-generator/

価値を最初に体験するオンボーディング — アプリが約束する成果をユーザーが初めて実感するまで、すぐに体験できるよう案内します。

  • すぐに利用できる場合と後で利用する場合に分岐し、各画面での判断は 1 つにします
  • ルートの切り替えによる表示、フェーズを優先したゲーティング、既存機能への安全な再開処理
  • 「後で」分岐でローカル通知を使った実装意図
  • 価値体験への到達率を計測(ローカルのみ。アナリティクス SDK は不要)
  • 説明を先に行うアプリ向けに、従来型のページ式/ステップ式ウェルカムカルーセルも明示的な代替手段として用意
review-prompt/

スマートな App Store レビュー依頼です。

  • プラットフォームを検出(App Store 以外で配布する macOS アプリではスキップ)
  • トリガー条件を設定可能
  • スマートなタイミング判定
  • テスト用のデバッグオーバーライド
networking-layer/

async/await を使用したプロトコルベースの API クライアントです。

  • モックや切り替えに適したシンプルな APIClient プロトコル
  • 型安全なエンドポイント定義
  • 包括的なエラー処理
  • 環境に基づく設定
auth-flow/

完全な認証フローです。

  • Sign in with Apple の統合
  • 生体認証(Face ID/Touch ID)
  • 安全な Keychain ストレージ
  • 認証情報の状態監視
paywall-generator/

StoreKit 2 のサブスクリプション用ペイウォールです。

  • StoreKit 2 の完全な実装
  • 商品の読み込み、購入、復元
  • Environment を使用したサブスクリプションの状態管理
  • 美しいペイウォール UI
settings-screen/

セクションをモジュール化した完全な設定画面です。

  • @AppStorage を使用した AppSettings の一元管理
  • 外観、通知、アカウント、アプリ情報、法的情報のセクション
  • クロスプラットフォーム(iOS/macOS)
  • 再利用可能な行コンポーネント
persistence-setup/

iCloud 同期を任意で利用できる SwiftData 永続化機能です。

  • SwiftData コンテナの設定
  • テスト容易性を高めるリポジトリパターン
  • CloudKit/iCloud 同期(任意)
  • 同期状態の監視
  • マイグレーションのサポート
error-monitoring/

プロトコルベースのクラッシュ/エラーレポート機能です。

  • Sentry と Firebase Crashlytics をサポート
  • テスト/プライバシー保護向けの NoOp 実装
  • デバッグ用のコンテキストを記録するパンくず
  • ユーザーコンテキスト(匿名化)
  • プロバイダーを簡単に切り替え可能
ci-cd-setup/

ビルドとデプロイを自動化する CI/CD 設定です。

  • GitHub Actions ワークフロー(ビルド、テスト、TestFlight、App Store)
  • Xcode Cloud のスクリプトとセットアップガイド
  • 高度な自動化に対応する fastlane レーン
  • コード署名とシークレット管理
  • macOS の公証に対応
localization-setup/

多言語アプリ向けの国際化(i18n)基盤です。

  • String Catalog(iOS 16以降、推奨)
  • コンパイル時の安全性を確保する型安全な L10n enum
  • 複数形と文字列補間のパターン
  • RTL レイアウトのサポート
  • ロケールのテストに使える SwiftUI プレビュー用ヘルパー
push-notifications/

APNs の設定を含むプッシュ通知基盤です。

  • 登録と許可のフロー
  • UNUserNotificationCenterDelegate の実装
  • アクションボタン付きの通知カテゴリ
  • 型安全なペイロード解析
  • リッチ通知とサイレント通知
deep-linking/

URL スキーム、ユニバーサルリンク、App Intents を使ったディープリンクです。

  • カスタム URL スキームの処理
  • AASA ファイルを使ったユニバーサルリンク
  • Siri とショートカット向けの App Intents
  • 型安全なルート定義とナビゲーション
  • Spotlight のインデックス作成サポート
test-generator/

単体テスト、統合テスト、UI テスト用のテンプレートです。

  • Swift Testing(モダンなテスト手法、iOS 16以降)と XCTest のパターン
  • モックオブジェクトの生成
  • ViewModel とサービスのテストパターン
  • ページオブジェクトパターンを使った UI テスト
preview-data-generator/

SwiftUI ビュー向けのサンプルデータと、複数のバリエーションを含む #Preview マトリックスです。

  • 視覚的なエッジケース(空、長い文字列、欠損、リスト)を含む Canvas サンプルデータ
  • UI プロトタイピング用のデータ状態プレビュー(読み込み済み/空/読み込み中/エラー)
  • 外観、Dynamic Type、ロケール/RTL、デバイスのバリエーションマトリックス
  • SwiftData のインメモリシード済みコンテナ、iOS 18 の PreviewModifier + @Previewable
  • テストデータを重複させず、test-data-factory のフィクスチャを再利用
accessibility-generator/

すべてのユーザーが使いやすいアプリのためのアクセシビリティ基盤です。

  • VoiceOver のラベル、ヒント、特性
  • Dynamic Type に対応した拡大表示
  • 視差効果を減らす設定への対応
  • アクセシビリティ監査チェックリスト
widget-generator/

ホーム画面とロック画面向けの WidgetKit ウィジェットです。

  • 静的ウィジェットとインタラクティブウィジェット(iOS 17以降)
  • タイムラインプロバイダー
  • ロック画面のコンプリケーション
  • 構成用のウィジェットインテント
app-icon-generator/

CoreGraphics を使ったプログラムによるアプリアイコン生成です。

  • Apple HIG に準拠したアイコンデザイン
  • カテゴリに応じたデザインレシピ(生産性、メディア、開発ツールなど)
  • ユーザーが選べる3種類のバリエーションを生成
  • 必要なすべてのサイズ(macOS + iOS)に自動リサイズ
  • 正しい Contents.json を使ったアセットカタログへのインストール
  • 外部依存関係なし — CoreGraphics のみを使用
feature-flags/

ローカルとリモートに対応したフィーチャーフラグ基盤です。

  • プロバイダーを差し替えられるプロトコルベースのサービス
  • リモートで上書き可能なローカルのデフォルト値(複合プロバイダー)
  • SwiftUI 統合用の @Observable マネージャー
  • フラグを切り替えるデバッグメニュー
live-activity-generator/

Dynamic Island とロック画面に対応する ActivityKit Live Activity です。

  • ActivityAttributes と ContentState の定義
  • Dynamic Island のレイアウト(コンパクト表示と展開表示)
  • ロック画面での表示
  • APNs 経由のプッシュ更新サポート
  • アクティビティのライフサイクル管理(開始、更新、終了)
tipkit-generator/

ルールとテストに対応した TipKit のインラインヒントとポップオーバーヒントです。

  • インラインヒントとポップオーバーヒントの定義
  • ルールベースの表示ロジック(パラメータルールとイベントルール)
  • 表示頻度と無効化
  • テストとプレビューのサポート
cloudkit-sync/

CKSyncEngine ベースの CloudKit 同期(iOS 17以降)です。

  • CKSyncEngine の設定とデリゲート
  • レコードゾーン管理
  • 競合解決の戦略
  • 共有とコラボレーションのサポート
http-cache/

Cache-Control、ETag、オフライン時のフォールバックに対応した HTTP キャッシュレイヤーです。

  • Cache-Control ヘッダーの解析
  • ETag/Last-Modified を使った条件付きリクエスト(304)
  • stale-while-revalidate パターン
  • 既存の APIClient をラップするデコレーターパターン
  • オフライン時のフォールバックに使うネットワーク到達性の確認
pagination/

オフセット方式とカーソル方式に対応したページネーション基盤です。

  • オフセットベースとカーソルベースのレスポンスモデル
  • 状態マシン(アイドル、読み込み中、読み込み済み、エラー、取得完了)
  • プリフェッチしきい値を備えた @Observable PaginationManager
  • クエリをデバウンスする検索可能なページネーション
  • 無限スクロール、「さらに読み込む」ボタン、状態表示ビュー
image-loading/

キャッシュ機能を備えた画像読み込みパイプラインとCachedAsyncImageビューです。

  • 自動削除機能付きのNSCacheメモリーキャッシュ
  • 有効期限付きのLRUディスクキャッシュ
  • リクエストの重複排除に対応したアクターベースのダウンローダー
  • ImageIOによるサムネイル生成
  • そのまま置き換えて使えるCachedAsyncImage SwiftUIビュー
  • コレクションの先読み
share-card/

ソーシャルメディアで共有できる画像カードです。

  • 実績、統計、引用文の種類を備えたShareCardContentプロトコル
  • ImageRendererベースのカード生成
  • 設定可能なスタイル(ミニマル、ブランド、統計)
  • ShareLinkとの連携とQRコードのオーバーレイ
social-export/

各ソーシャルプラットフォームに適した形式でコンテンツを書き出します。

  • プラットフォームごとのフォーマット(Instagram、TikTok、X)
  • プラットフォームごとのアスペクト比と解像度への対応
  • ブランドオーバーレイとキャプションへの対応
  • URLスキームベースの書き出しと共有シートからの書き出し
subscription-lifecycle/

StoreKit 2のサブスクリプションライフサイクル管理です。

  • 猶予期間と請求再試行への対応
  • 復帰促進オファーとプロモーションオファーの管理
  • Transaction.updatesによるサブスクリプションステータスの監視
  • アップグレード/ダウングレード経路への対応
  • サブスクリプション管理用ダッシュボードUI
referral-system/

バイラル成長の仕組みを備えた紹介・招待システムです。

  • 不正防止機能付きの一意なコード生成
  • ディープリンクによる共有と利用登録
  • 紹介者と招待されたユーザーの報酬追跡
  • 紹介統計を表示するダッシュボード
watermark-engine/

ペイウォールと連携する画像用ウォーターマークオーバーレイです。

  • テキスト、画像、タイル状のウォーターマークスタイル
  • Retina対応のCoreGraphicsベースの描画
  • サブスクリプション加入者向けのウォーターマーク削除
  • SwiftUIオーバーレイとViewModifier
streak-tracker/

エンゲージメントの仕組みを備えた日次/週次の連続記録機能です。

  • SwiftDataベースのアクティビティ記録
  • タイムゾーンを考慮した日の境界の計算
  • 連続記録の凍結/保護パス
  • カレンダー形式のヒートマップとバッジビュー
  • 連続記録が途切れそうなときの通知
milestone-celebration/

紙吹雪とバッジを使った実績のお祝い機能です。

  • Reduce Motionに対応したCAEmitterLayerの紙吹雪
  • しきい値検出機能付きのマイルストーン追跡
  • 進捗リング付きのバッジコレクショングリッド
  • 触覚フィードバックとの連携
whats-new/

アプリのアップデート後に表示する「新機能」画面です。

  • UserDefaultsによるバージョン追跡と永続化
  • ページ切り替え式のTabViewによる機能紹介
  • ローカルおよびリモートのコンテンツプロバイダー
  • バージョン変更時にシートとして自動表示
lapsed-user/

利用が途絶えたユーザーの検出と再エンゲージメント機能です。

  • 設定可能な非アクティブ期間のしきい値(7/14/30日)
  • 利用停止のカテゴリに応じたパーソナライズされた復帰体験
  • 利用が途絶えたサブスクリプション加入者向けの復帰促進オファー画面
  • アプリ起動時に自動検出するViewModifier
usage-insights/

ユーザー向けの利用統計とアクティビティの概要です。

  • バッチ書き込みに対応したSwiftDataイベント記録
  • インサイトの算出(連続記録、上位カテゴリ、傾向)
  • Swift Charts連携のダッシュボード
  • 共有可能な振り返りカード(Spotify Wrapped風)
variable-rewards/

ゲーミフィケーションの仕組みを備えた変動報酬システムです。

  • レア度の段階を設けた、重み付け確率による報酬プール
  • 毎日のルーレットとミステリーボックスのアニメーション
  • 健全なエンゲージメントのための、日次/週次の上限
  • 報酬履歴と通知ビュー
consent-flow/

GDPR/CCPA/DPDPに対応したプライバシー同意管理です。

  • カテゴリごとの詳細な同意(分析、マーケティングなど)
  • ATT(App Tracking Transparency)との連携
  • コンプライアンス対応のための同意監査ログ
  • 同等の目立ちやすさを備えたバナーと設定UI
account-deletion/

Appleの要件に準拠したアカウント削除フローです。

  • 再認証を伴う複数ステップの確認
  • 削除前のデータ書き出し
  • キャンセル可能な猶予期間
  • KeychainのクリーンアップとSign in with Appleの連携解除
permission-priming/

許可率の向上を目的とした、許可要求前の案内画面です。

  • 統合型の権限管理機能(通知、カメラ、位置情報など)
  • システムの許可要求前に表示する、メリットを重視した案内UI
  • 「設定」へのリダイレクトを備えた権限ステータスの追跡
  • コンテンツへのアクセスを制御するViewModifier
force-update/

更新プロンプトを伴う最低バージョンの適用。

  • リモート JSON と App Store の照会によるバージョン確認
  • ハードブロック(必須)とソフトプロンプト(推奨)
  • 確認頻度の設定
  • ソフト更新のスキップ状況を追跡
state-restoration/

アプリの起動をまたいだ状態の保持と復元。

  • NavigationPath、タブの選択状態、スクロール位置の永続化
  • デバウンス付き自動保存機能を備えた Codable AppState
  • 自動保存機能を備えたフォーム下書きマネージャー
  • @SceneStorage とファイルベースのストレージオプション
debug-menu/

開発者向けデバッグメニュー(DEBUG ビルドのみ)。

  • 機能フラグの切り替えと環境スイッチャー
  • 循環バッファを備えたネットワークリクエストロガー
  • キャッシュの消去と診断情報のエクスポート
  • シェイクジェスチャーと隠しタップトリガー
offline-queue/

自動再試行機能を備えたオフライン操作キュー。

  • FIFO と優先度に対応したアクターベースのキューマネージャー
  • キューに入れた操作のファイルベースの永続化
  • ジッター付き指数バックオフ再試行ポリシー
  • NWPathMonitor による接続状況の検出
  • オフライン状態バナー用 ViewModifier
feedback-form/

スマートな振り分け機能を備えたアプリ内フィードバック収集。

  • カテゴリ別フィードバック(バグ、機能、称賛)
  • スクリーンショットのキャプチャと注釈
  • 感情に応じた振り分け(満足 → App Store、不満 → サポート)
  • メールと Webhook による送信
announcement-banner/

リモート設定に対応したアプリ内お知らせバナー。

  • 優先度に基づくバナー表示(情報、警告、プロモーション)
  • ローカルおよびリモートのお知らせプロバイダー
  • ディープリンクと URL アクションの処理
  • 日付範囲を指定したスケジュール表示
quick-win-session/

価値をすばやく実感できる、初回アクションのガイド付きフロー。

  • ステップごとのタスクガイド
  • 円形の切り抜きによるスポットライトヒントのオーバーレイ
  • タイミング統計を含む完了時のお祝い
  • 新規ユーザー検出用 ViewModifier
spotlight-indexing/

システム検索との連携に向けた Core Spotlight のインデックス作成。

  • 任意のモデルで使える SpotlightIndexable プロトコル
  • アクターベースの一括インデックスマネージャー
  • 流れるように記述できる属性ビルダー API
  • 検索の継続と Siri の提案
app-clip/

呼び出しとアップグレードのフローを備えた App Clip ターゲット。

  • 呼び出し URL の解析とルーティング
  • 具象実装を備えた Experience プロトコル
  • 物理的な呼び出しに対する位置確認
  • フルアプリへのアップグレードを促す SKOverlay
  • App Group によるデータ共有
screenshot-automation/

App Store 用スクリーンショットの自動生成。

  • ナビゲーションに対応した XCUITest ベースの画面キャプチャ
  • CoreText を使ったローカライズ済みキャプションのオーバーレイ
  • デバイスフレームの合成
  • 複数のロケールとデバイスに対応した一括エクスポート
background-processing/

BGTaskScheduler を使ったバックグラウンドタスクの基盤。

  • BGAppRefreshTask と BGProcessingTask の設定
  • ダウンロードとアップロード用のバックグラウンド URLSession
  • サイレントプッシュ通知の処理
  • 省電力なスケジューリング戦略
app-extensions/

Share、Action、Keyboard、Safari 用のアプリ拡張ターゲット。

  • コンテンツ処理に対応した Share Extension
  • コンテンツをその場で操作する Action Extension
  • UIInputViewController を使った Keyboard Extension
  • メッセージハンドラーを備えた Safari Web Extension
  • アプリと拡張機能の間での App Group によるデータ共有
data-export/

JSON、CSV、PDF に対応したデータのエクスポート/インポート基盤。

  • プロトコルベースの複数形式エクスポート(DataExportable)
  • RFC 4180 に準拠した CSV 生成
  • UIGraphicsPDFRenderer を使った PDF レポート生成
  • UTType に基づく解析によるファイルのインポート
  • GDPR 第 20 条のデータポータビリティ要件への準拠

使用方法

  1. ユーザーがコンポーネントをリクエストします(例:「アプリにロギングを追加して」)
  2. 関連するスキルの SKILL.md を読みます
  3. 生成前の確認を実行します(競合、デプロイメントターゲットなど)
  4. AskUserQuestion で設定に関する質問をします
  5. テンプレートからコードを生成し、プロジェクトの状況に合わせて調整します
  6. 組み込み手順を提示します

出力形式

生成後は、必ず次の項目を提示してください。

  • 作成したファイル(完全なパスを記載)
  • 組み込み手順(既存のコードへの接続方法)
  • 必要な機能(エンタイトルメント、依存関係)
  • テスト手順(動作確認の方法)

コメント