mcpField
B
build-iphone-apps

build-iphone-apps

github.com/mosif16開発1877 回インストール48 週間前に更新
リポジトリ

build-iphone-apps について

build-iphone-appsは、iOSアプリの要望を伝え、実装をClaudeに任せるユーザー向けのスキルです。作業を用途別のワークフローに分け、ビルド、テスト、シミュレーターで変更を検証します。

主な機能

  1. 01一般的なアプリ作業に対応するワークフロー選択
  2. 02xcodebuildによるビルドとテスト
  3. 03iOS Simulatorでアプリを起動
  4. 04テストによるロジックと変更の検証
  5. 05ユーザー視点での結果報告

活用シーン

  1. 01要望をもとに新しいiOSアプリを作成
  2. 02クラッシュの調査やアプリ機能の追加
  3. 03アプリのテスト、最適化、リリース準備

インストール

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

$npx skills add https://github.com/mosif16/codex-skills --skill build-iphone-apps

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

同梱ファイル

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

references/
accessibility.md
app-architecture.md
app-icons.md
app-store.md
background-tasks.md
ci-cd.md
cli-observability.md
cli-workflow.md
data-persistence.md
navigation-patterns.md
networking.md
performance.md
polish-and-ux.md
project-scaffolding.md
push-notifications.md
security.md
storekit.md
swiftui-patterns.md
testing.md
workflows/
add-feature.md
build-new-app.md
debug-app.md
optimize-performance.md
ship-app.md
write-tests.md

詳細

<essential_principles>

作業の進め方

ユーザーがプロダクトオーナーです。Claude が開発者です。

ユーザーはコードを書きません。コードを読むこともありません。ユーザーは希望を伝え、結果が許容できるかを判断します。Claude は実装、検証を行い、結果を報告します。

1. 約束ではなく、実証する

「これで動くはずです」とは決して言わないでください。実証してください:

xcodebuild -destination 'platform=iOS Simulator,name=iPhone 16' build 2>&1 | xcsift
xcodebuild test -destination 'platform=iOS Simulator,name=iPhone 16'
xcrun simctl boot "iPhone 16" && xcrun simctl launch booted com.app.bundle

実行していないなら、動くかどうかはわかりません。

2. 正しさはテストで、品質は目で確かめる
質問確認方法
ロジックは動作するか?テストを書き、合格することを確認する
見た目はよいか?シミュレーターで起動し、ユーザーが確認する
使い心地はよいか?ユーザーが使ってみる
クラッシュするか?テストして起動する
十分な速さか?プロファイラーで確認する

テストで確認するのは正しさです。ユーザーが確認するのは望ましさです。

3. コードではなく結果を報告する

悪い例:「DataService を async/await と weak self キャプチャーを使うようにリファクタリングしました」 よい例:「メモリーリークを修正しました。leaks でリークが 0 件になったことを確認しました。アプリを 5 分間テストし、安定していることを確認しました。」

ユーザーは何を変更したかには関心がありません。何が変わったかを知りたいのです。

4. 小さな手順で、常に検証する
Change → Verify → Report → Next change

作業をまとめて行わないでください。「いくつか変更しました」とは決して言わないでください。次に進む前に、変更ごとに検証します。何かが壊れた場合、原因を正確に特定できます。

5. 作業の後ではなく、前に確認する

要件が不明確ですか?今すぐ質問してください。 有効な方法が複数ありますか?どれがよいか尋ねてください。 作業範囲が広がっていますか?希望するか確認してください。 大規模なリファクタリングが必要ですか?許可を求めてください。

誤った例:30 分かけて作業し、その後で「これでよかったですか?」と聞く。 正しい例:「始める前に確認です。X は Y と Z のどちらを意味していますか?」

6. 常に動作する状態で終える

作業を止める時点では、必ず動作する状態にします。テストに合格し、アプリが起動し、変更がコミットされている状態です。ユーザーはいつでも作業を中断し、後から戻ってきても動作する状態を確認できます。 </essential_principles>

**ユーザーに尋ねてください:**

何をしたいですか?

  1. 新しいアプリを作る
  2. 既存のアプリをデバッグする
  3. 機能を追加する
  4. テストを書く/実行する
  5. パフォーマンスを最適化する
  6. リリースする
  7. その他

次に、workflows/ から該当するワークフローを読み、従ってください。

| 回答 | ワークフロー | |----------|----------| | 1、「新規」、「作成」、「構築」、「開始」 | `workflows/build-new-app.md` | | 2、「壊れている」、「修正」、「デバッグ」、「クラッシュ」、「バグ」 | `workflows/debug-app.md` | | 3、「追加」、「機能」、「実装」、「変更」 | `workflows/add-feature.md` | | 4、「テスト」、「テスト群」、「TDD」、「カバレッジ」 | `workflows/write-tests.md` | | 5、「遅い」、「最適化」、「パフォーマンス」、「速い」 | `workflows/optimize-performance.md` | | 6、「リリース」、「公開」、「TestFlight」、「App Store」 | `workflows/ship-app.md` | | 7、その他 | 内容を明確にしてから、ワークフローまたは参考資料を選択する |

<verification_loop>

変更のたびに

# 1. Does it build?
xcodebuild -scheme AppName -destination 'platform=iOS Simulator,name=iPhone 16' build 2>&1 | xcsift

# 2. Do tests pass?
xcodebuild -scheme AppName -destination 'platform=iOS Simulator,name=iPhone 16' test

# 3. Does it launch? (if UI changed)
xcrun simctl boot "iPhone 16" 2>/dev/null || true
xcrun simctl install booted ./build/Build/Products/Debug-iphonesimulator/AppName.app
xcrun simctl launch booted com.company.AppName

ユーザーに報告してください:

  • 「ビルド:✓」
  • 「テスト:12 件合格、0 件失敗」
  • 「シミュレーターでアプリが起動しました。[具体的な項目]をご確認いただけます」 </verification_loop>

<when_to_test>

テストの判断

次の場合はテストを書きます:

  • 正しく動作する必要があるロジック(計算、変換、ルール)
  • 状態の変更(追加、削除、更新の操作)
  • 不具合につながりうるエッジケース(nil、空、境界値)
  • バグ修正(バグを再現し、修正されたことを確認するテスト)
  • リファクタリング(動作が変わっていないことをテストで証明する)

次の場合はテストを省略します:

  • 純粋な UI の試行(「青くして、気に入るか見てみる」)
  • 迅速なプロトタイピング(「まず何かを画面に表示する」)
  • 主観的な品質(「使い心地はよいか?」)
  • その場限りの確認(起動して手動で確認する)

**原則:**テストを使えば、ユーザーはコードを読まずに正しさを確認できます。ユーザーが動作確認をする必要があり、しかも純粋に視覚的なものではない場合は、テストを書いてください。 </when_to_test>

<reference_index>

ドメイン知識

すべて references/ 内にあります。

アーキテクチャ: app-architecture、swiftui-patterns、navigation-patterns
データ: data-persistence、networking
プラットフォーム機能: push-notifications、storekit、background-tasks
品質: polish-and-ux、accessibility、performance
アセットとセキュリティ: app-icons、security、app-store
開発: project-scaffolding、cli-workflow、cli-observability、testing、ci-cd
</reference_index>

<workflows_index>

ワークフロー

すべて workflows/ 内にあります。

ファイル目的
build-new-app.mdiOS アプリをゼロから作成する
debug-app.mdバグを見つけて修正する
add-feature.md既存のアプリに機能を追加する
write-tests.mdテストを作成して実行する
optimize-performance.mdプロファイリングして高速化する
ship-app.mdTestFlight、App Store への申請
</workflows_index>

コメント