For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
メインナビゲーション
Theme
Codex

Codex use case

iOS シミュレータでのデバッグ

Codex と XcodeBuildMCP で iOS シミュレータ上のアプリを操作し、不具合の手がかりを集めながら修正と検証を繰り返します。

Difficulty Advanced
Time horizon 1h

Codex が適切な Xcode スキームとシミュレータを選び、アプリを起動します。UI ツリーを調べ、タップ、文字入力、スワイプで不具合を再現し、スクリーンショットとログを取得します。必要に応じて LLDB をアタッチし、曖昧なバグ報告からでも原因を絞り込み、小さな修正を加えて効果を確かめます。

Best for

  • シミュレータ上で、タップやスクロール、フォーム入力を特定の手順で行ったときだけ発生する UI の不具合
  • コードを変更する前に、Codex がログ、スクリーンショット、ビュー階層の状態、デバッガーのバックトレースを調べる必要があるクラッシュ、ハング、画面遷移の不具合
  • 人が画面を操作して各状態を一つずつ確認する手間を省き、バグの再現から修正、検証までを Codex に任せたいチーム

Contents

    ← All use cases

    iOS シミュレータでのデバッグ

    Codex と XcodeBuildMCP で iOS シミュレータ上のアプリを操作し、不具合の手がかりを集めながら修正と検証を繰り返します。

    Codex が適切な Xcode スキームとシミュレータを選び、アプリを起動します。UI ツリーを調べ、タップ、文字入力、スワイプで不具合を再現し、スクリーンショットとログを取得します。必要に応じて LLDB をアタッチし、曖昧なバグ報告からでも原因を絞り込み、小さな修正を加えて効果を確かめます。

    Advanced
    1h

    Codex が適切な Xcode スキームとシミュレータを選び、アプリを起動します。UI ツリーを調べ、タップ、文字入力、スワイプで不具合を再現し、スクリーンショットとログを取得します。必要に応じて LLDB をアタッチし、曖昧なバグ報告からでも原因を絞り込み、小さな修正を加えて効果を確かめます。

    Advanced
    1h

    Best for

    • シミュレータ上で、タップやスクロール、フォーム入力を特定の手順で行ったときだけ発生する UI の不具合
    • コードを変更する前に、Codex がログ、スクリーンショット、ビュー階層の状態、デバッガーのバックトレースを調べる必要があるクラッシュ、ハング、画面遷移の不具合
    • 人が画面を操作して各状態を一つずつ確認する手間を省き、バグの再現から修正、検証までを Codex に任せたいチーム

    Skills & Plugins

    • iOS デバッガーエージェントが XcodeBuildMCP を使ってアプリをビルドし、シミュレータで起動して状態を調べながら操作します。Codex が原因を絞り込む過程で、ログ、スクリーンショット、スタックトレースを取得します。
    Skill Why use it
    Build iOS Apps iOS デバッガーエージェントが XcodeBuildMCP を使ってアプリをビルドし、シミュレータで起動して状態を調べながら操作します。Codex が原因を絞り込む過程で、ログ、スクリーンショット、スタックトレースを取得します。

    Starter prompt

    Build iOS Apps プラグインと XcodeBuildMCP を使って、このバグをシミュレータ上で直接再現し、根本原因を特定して、小さな修正を加えてください。 バグ報告: [期待する動作、実際に発生した不具合、再現に必要な画面やアカウントの設定について、分かっていることを記入してください。] 制約: - まず、プロジェクト、スキーム、シミュレータがすべて選択されているか確認してください。未選択の項目がある場合は、該当する Xcode プロジェクトまたはワークスペースを探し、アプリのスキームとシミュレータを選んでください。このセッションでは以降も同じ設定を使ってください。 - アプリをビルドしてシミュレータで起動し、操作を始める前に、目的の画面が表示されていることを UI スナップショットまたはスクリーンショットで確認してください。 - シミュレータでタップ、文字入力、スクロール、スワイプを自分で行い、再現手順を正確にたどってください。操作対象の指定には座標値よりもアクセシビリティラベルや ID を優先し、レイアウトが変わったら次の操作の前に UI 階層を再取得して確認してください。 - デバッグ中は、画面の状態が分かるスクリーンショットと、不具合発生前後のシミュレータのログを取得してください。クラッシュやハングが疑われる場合は、LLDB でスタックフレームや変数の値も記録してください。 - シミュレータが起動していなければ、1 台起動し、選んだデバイスと OS を教えてください。認証情報や特別なテストフィクスチャが必要な場合は、作業を一時停止し、不足しているものだけを尋ねてください。 - バグの解消に必要な最小限のコード変更を加えてください。その後、シミュレータで同じ手順をもう一度実行し、修正をどのように検証したか具体的に報告してください。 報告項目: - Codex が実行した再現手順 - バグの原因を示す主なスクリーンショット、ログ、またはスタックの詳細 - コードの修正内容と、それでバグが解消する理由 - 最終検証に使用したシミュレータとスキーム
    Build iOS Apps プラグインと XcodeBuildMCP を使って、このバグをシミュレータ上で直接再現し、根本原因を特定して、小さな修正を加えてください。 バグ報告: [期待する動作、実際に発生した不具合、再現に必要な画面やアカウントの設定について、分かっていることを記入してください。] 制約: - まず、プロジェクト、スキーム、シミュレータがすべて選択されているか確認してください。未選択の項目がある場合は、該当する Xcode プロジェクトまたはワークスペースを探し、アプリのスキームとシミュレータを選んでください。このセッションでは以降も同じ設定を使ってください。 - アプリをビルドしてシミュレータで起動し、操作を始める前に、目的の画面が表示されていることを UI スナップショットまたはスクリーンショットで確認してください。 - シミュレータでタップ、文字入力、スクロール、スワイプを自分で行い、再現手順を正確にたどってください。操作対象の指定には座標値よりもアクセシビリティラベルや ID を優先し、レイアウトが変わったら次の操作の前に UI 階層を再取得して確認してください。 - デバッグ中は、画面の状態が分かるスクリーンショットと、不具合発生前後のシミュレータのログを取得してください。クラッシュやハングが疑われる場合は、LLDB でスタックフレームや変数の値も記録してください。 - シミュレータが起動していなければ、1 台起動し、選んだデバイスと OS を教えてください。認証情報や特別なテストフィクスチャが必要な場合は、作業を一時停止し、不足しているものだけを尋ねてください。 - バグの解消に必要な最小限のコード変更を加えてください。その後、シミュレータで同じ手順をもう一度実行し、修正をどのように検証したか具体的に報告してください。 報告項目: - Codex が実行した再現手順 - バグの原因を示す主なスクリーンショット、ログ、またはスタックの詳細 - コードの修正内容と、それでバグが解消する理由 - 最終検証に使用したシミュレータとスキーム

    シミュレータでの再現から検証までを Codex に一任

    このユースケースでは、シミュレータでの作業を最初から最後まで Codex に任せると効果的です。Codex は適切なアプリターゲットを選び、シミュレータでアプリを起動します。現在の画面を確認して再現手順を実行し、ログとスクリーンショットを収集します。必要に応じてスタックトレースを調べ、コードを修正したうえで同じ操作を繰り返し、不具合が解消したことを確認します。

    この一連の作業を Codex に自律的に進めてもらうには、Build iOS Apps プラグインを使います。プラグインの iOS デバッガーワークフローは XcodeBuildMCP を利用しているため、Codex は起動済みのシミュレータを操作し、通常は開発者が手作業で集めるログやスクリーンショットなどを収集できます。

    XcodeBuildMCP でシミュレータ操作の自動化、UI 操作の自動化、デバッグ、ログ収集の各ワークフローを設定しておけば、不具合の再現からデバッグ、検証まで Codex に任せられます。プロジェクト、スキーム、シミュレータがまだ決まっていない場合は、まず Codex に候補を調べて選ぶよう依頼し、そのセッションでは同じ設定を使うよう伝えます。

    XcodeBuildMCP の活用

    Codex には、次の機能を使うよう依頼できます。

    • プロジェクトとシミュレータの特定:使用するアプリターゲットとシミュレータを Codex がすでに把握しているか確認します。Xcode プロジェクトまたはワークスペースを探し、スキームを一覧にして、シミュレータを見つけるか起動します。以降のビルドと実行でも同じ設定を使います。
    • ビルドと起動の制御:現在選択されているアプリターゲットをビルドし、シミュレータ用のビルドをインストールして起動します。必要に応じてログを記録しながらアプリを再起動します。アプリ固有の実行時ログを調べる場合は、アプリのバンドル ID を特定します。
    • UI の確認と操作:画面のアクセシビリティ階層を読み取り、スクリーンショットを撮影します。コントロールのタップ、フィールドへの入力、リストのスクロールのほか、画面の端からのスワイプなどのジェスチャもシミュレータで実行できます。
    • ログとデバッガーの状態:シミュレータのログをリアルタイムで取得し、実行中のアプリに LLDB をアタッチします。ブレークポイントを設定し、スタックフレームやローカル変数を確認できます。クラッシュやハングを詳しく調べる必要がある場合は、デバッガーのコマンドを実行します。

    タップする前にビュー階層を確認するよう、毎回 Codex に指示します。XcodeBuildMCP からはアクセシビリティ階層と各要素の座標を取得できます。そのため、Codex は画面上の位置を推測せずに、安定したラベルや要素 ID を優先して操作対象を選べます。

    曖昧な不具合報告から再現スクリプトへ

    iOS デバッガースキルを効果的に使うには、プロンプトで具体的な不具合を 1 つ挙げ、期待する結果を 1 つ示します。そのうえで、アプリの操作と調査に必要な情報の収集を Codex に任せます。ログイン、ディープリンク、テストフィクスチャが必要なら、その条件を最初に一度伝えます。必要なものがなくて作業を続けられない場合に限り、一時停止するよう依頼します。

    実践のヒント

    修正内容とその根拠

    使用したシミュレータとスキームを具体的に示し、不具合の説明に使ったスクリーンショット、ログの抜粋、スタックの詳細も提示するよう Codex に依頼します。「これで直ると思います」という説明だけの場合に比べて、最終的なパッチをレビューしやすくなります。

    座標よりもアクセシビリティラベルを優先

    コントロールに安定したラベルやアクセシビリティ識別子がなく、座標を指定してタップする必要がある場合は、その旨を報告するよう Codex に依頼します。こうしたケースでは、不具合の修正に合わせて UI にも少し手を加え、テストしやすくするとよいでしょう。

    1 回の実行につき 1 つの不具合

    シミュレータを使ったデバッグは強力ですが、1 つのプロンプトで扱う不具合のパターンを 1 つに絞ると、結果をより信頼できます。関連する問題に取りかかる前に、まず 1 つの不具合の再現、修正、検証を終えるよう Codex に依頼します。

    Tech stack

    Need

    シミュレータ操作の自動化

    Default options

    XcodeBuildMCP

    Why it's needed

    現在のツールでは、シミュレータの設定、アプリのビルドと起動、UI スナップショットの取得、タップ、文字入力、ジェスチャー操作、スクリーンショットとログの取得、デバッガーのアタッチができます。

    Need

    エージェントのワークフロー

    Why it's needed

    このプラグインの iOS デバッガーエージェントを使うと、Codex はシミュレータでバグを再現して原因の手がかりを集め、コードを変更するたびに同じ手順で修正を検証できます。

    Need

    アプリの可観測性

    Default options

    Logger、OSLog、LLDB、シミュレータのスクリーンショット

    Why it's needed

    Codex は、ログとデバッガーで確認した実行時の状態をもとに、どこで何が起きたかを説明できます。修正前後のスクリーンショットを保存すれば、それぞれの時点での UI の状態も正確に示せます。

    Need Default options Why it's needed
    シミュレータ操作の自動化 XcodeBuildMCP 現在のツールでは、シミュレータの設定、アプリのビルドと起動、UI スナップショットの取得、タップ、文字入力、ジェスチャー操作、スクリーンショットとログの取得、デバッガーのアタッチができます。
    エージェントのワークフロー Build iOS Apps プラグイン このプラグインの iOS デバッガーエージェントを使うと、Codex はシミュレータでバグを再現して原因の手がかりを集め、コードを変更するたびに同じ手順で修正を検証できます。
    アプリの可観測性 Logger 、 OSLog 、LLDB、シミュレータのスクリーンショット Codex は、ログとデバッガーで確認した実行時の状態をもとに、どこで何が起きたかを説明できます。修正前後のスクリーンショットを保存すれば、それぞれの時点での UI の状態も正確に示せます。

    Related use cases