-
Xcode、エージェント、デベロッパ
Xcodeでの開発プロセスにコーディングエージェントを活用する方法を学びましょう。エージェントを利用するための多様な手法と、最初のプロトタイプの作成から洗練されたアプリの仕上げまでに至るプロセス全体で役立つヒントを紹介します。個人デベロッパによる開発かチームによる開発かを問わず、コーディングの楽しさに満ちたクリエイティブな作業に集中できるよう柔軟にサポートする、Xcodeのコーディングアシスタントのメリットをご確認ください。
関連する章
- 0:00 - Introduction
- 1:14 - Meet the app
- 2:06 - Explore
- 7:38 - Build
- 13:44 - Refine
- 18:25 - Orchestrate
- 22:09 - Next steps
リソース
関連ビデオ
WWDC26
-
このビデオを検索
こんにちは!Devinです! 私はMaxwellです! 私たちは2人とも Xcode Intelligenceチームのメンバーです。 ご紹介できて うれしく思います Xcodeのエージェントを使って 開発を強化する方法をお伝えします。 Xcode 26.3では コーディングエージェントと複雑な マルチステップタスクへの対応ツールを導入しました。 マルチステップタスクです。 Xcode 27では さらに生産性を高められます。 Xcodeが提供するツールを拡張し エージェントとの連携方法を再設計しました。 すべては、あなたが楽しめる 作業に集中できるようにするためです。 コードのビジョンを描くのはあなたで Xcodeはより速くそこに到達する 自信を持って進める サポートをします。 Xcodeはあなたに合わせて適応します エージェントを 使い始めたばかりの方でも ワークフローに欠かせない 存在として使っている方でも。 Devinとともに Xcodeのエージェントの使い方をご紹介します 開発全体を通じて。 まずプロジェクトを探索して その構造を理解します。
その理解をもとに 新機能の計画と構築を行います。 次に、Devinが 私の成果を改良します。 最後に彼は複数の会話を オーケストレーションして 特定のタスクを 達成します。 始めましょう!
MaxwellとDevinが オフィスでアプリ開発をしていない時は ジムで過ごしています。 ワークアウトでのエクササイズを トラッキングできるものが欲しいと思っていました。 パーソナライズされたトレーニング方法に 適応するものが欲しいです。 そこで、欲しい機能をそのまま備えた アプリを共同で開発しています。 Xcodeのエージェントを使って このアプリを立ち上げたばかりです すでに必要な 基本機能を備えています。 エクササイズをトラッキングする ワークアウトページがあります。 過去のセッションを表示する 履歴セクションもあります。 このアプリは本当に素晴らしいです。 欲しいのは、時間の経過とともに 進歩を確認できる機能です ワークアウトをすべて 記録し始めた今。 私も同じことを 考えていました! インサイトビューが必要です。 それは素晴らしい アイデアですね。 まずプロトタイプを 作成します 過去のセッションデータを使って 分析結果を表示するものです。 完璧です! すべての準備が整ったら そこから改良できます。
Devinはプロジェクトを 素晴らしい出発点に仕上げてくれました。 彼がすでに行ったことを すべて把握したいと思います。 まずXcodeをガイドとして使って プロジェクトを探索します インサイトデータ追加の 選択肢も確認します。 Xcodeのエージェントを使って探索する場合 プロジェクト全体を確認できます。 ソースコード、ビルド設定、 開いているファイルやアクティブな選択まで エージェントはその時点で あなたが作業している内容を正確に把握します。 探索を始めるには OptionキーとShiftキーを押しながら ツールバーのボタンをクリックします 新しい会話を 作成します。 これにより、会話が 別のエディタペインとして開きます 探索しながら個別のファイルを 確認して特定のものを調べることができます。 エージェントにプロジェクトの データモデルをまとめるよう依頼し 現在のビュー階層のウォークスルーを 提供してもらいます。 このプロンプトを送信すると エージェントはXcodeのツールを使って コンテキストを収集し プロジェクトの構造を把握します。
新しいプロジェクトに 参加する際は どこから始めるべきか 判断が難しいことがあります。 複雑なアーキテクチャと ソースファイルの集合を読むとき すべての繋がりを把握して 理解を構築するには かなりの時間が かかることがあります。
Xcodeはここで 役立ちます。 ウォークスルーを依頼すれば アーキテクチャを 理解しやすい形に 整理できます。 データフローのアウトラインなど 詳細な情報が含まれます。 重要エリアの表や ソースコードの参照先も含みます。 より深いレベルで 調査したい場合は 重要なファイルに 直接移動できます。
ウォークスルーが完了し 内容を読んで高いレベルでの 理解を築くことができます。 ワークアウトビューを さらに詳しく調べたい場合は リンクをクリックして 個別のファイルに直接移動できます。 このウォークスルーは 優れたリファレンスです。 ただ、詳細な情報を 1つの会話で失いたくありません。 保存しておきたいです。 そうすれば私やチームの誰もが 後で参照できます すぐにキャッチアップできます。 今必要なソースファイルは すべて読み終わりました。 他のエディタペインを閉じて 会話だけに集中します。 収集した情報を基に2つのアーキテクチャ ドキュメントを作成するよう Xcodeに依頼します ソースコードと一緒に プロジェクト内に直接配置してもらいます。
この会話では エージェントはゼロから始めました。 プロジェクト内のすべてのコードを 検索、読み取り、調査する必要がありました 理解を深めるために。 この探索ループは 楽しめる作業を始めるのに時間がかかります。
しかしその労力を 失う代わりに プロジェクト内のドキュメント化された ナレッジベースとして記録できます。 このナレッジベースは動的で コードベースとともに進化できます。 あなたやチームが 新機能に取り掛かる際は 関連ファイルをすぐに見つけて 作業を開始できるマップがあります。
ウォークスルーのすべての情報が 2つのドキュメントに集約されました トランスクリプトと並んで 新しいアーティファクトとして表示されています。
Xcodeでエージェントを使って作業する際は 2つの異なる情報エリアが 表示されます。 左側にはトランスクリプトがあり 会話を確認できます 進捗のコメント、ツール呼び出し、 サブエージェントの実行などが含まれます。
右側には アーティファクトがあります。 作成されたもの: ファイル、編集内容、プレビューです。 最新のメッセージで生成されたものに 集中することも 会話全体を 一覧することもできます。 この探索の後 現状のプロジェクトを 十分に理解しました。 インサイトの追加に 取り掛かれます それらを視覚化する テーブルとともに。 SwiftUIでのテーブル実装方法と 調整が必要なSwiftDataモデルの 細かい詳細についてあまり詳しくありません。 そこで、XcodeでこれらのAPIを 調査して理解を深めます。 この件で新しい会話を作成します。 サイドバーのコーディング アシスタントを開いて 新しい会話をクリックして エージェントを選びます。 よく知らない部分について 質問します SwiftDataモデルに必要な リレーションシップについてや SwiftUIでテーブルを作成する 選択肢についてです。 また、先ほど作成した 2つのドキュメントも参照します。
このプロンプトを送信すると 2つのドキュメントがすぐに読み込まれて プロジェクトのコンテキストを 把握します。 テーブル追加の選択肢について 質問したので Apple Document Searchが 自動的に呼び出されます SwiftUIのテーブルサポートについて さらに理解を深めるためです。 APIや全く新しいフレームワークを 採用する際は 最新の情報を持つことが 最良の結果を得るために重要です。 ただし、使用するエージェントによっては その基礎知識に最新のフレームワーク情報が 含まれていない場合があります。 Apple Document Searchを使えば エージェントが高品質な ドキュメントにアクセスして プロジェクトが 構築する機能に 最適なソリューションを採用できるようサポートします。 使用するAPIのウォークスルーが きれいに整いました そうでなければ気づかなかったかもしれない 重要な詳細も含まれています。 SwiftDataモデルのリレーションシップを 正しく設定することや 小さい画面サイズでの 最適なデータの表示方法などです。 これにより、プロジェクトの 理解が深まりました 機能の構築に必要な APIについても同様です。
Xcodeのエージェントを使った探索は 新しいプロジェクトに 素早く慣れるための近道です 既存のプロジェクトの 不慣れな機能についても同様です。 エージェントはプロジェクトの コンテキスト全体を確認でき Appleの高品質な ドキュメントでそのコンテキストを補完し 新しい分野に向けた ガイド付きの説明を提供します これまで以上に 速く作業を開始できます。
プロジェクトの理解が 深まったところで インサイト追加という 目標に向けて構築を始めます。 同じ会話で、スラッシュコマンドを使って Xcodeをプランモードにします。 プランモードでは あなたがアーキテクトになれます コードが書かれる前に アプローチを概要としてまとめます。 ワークアウトインサイト用の 新しいタブを追加することを指定します。 欲しい機能の 高レベルな概要を提供します 要件を列挙して 焦点が定まるようにします。 探索フェーズで学んだ デバイス固有の詳細を指定します 表示に関してです。 最後に、新しいタブが期待通りに 見えることを確認するプレビューを依頼します。
プロンプトを送信して プランモードに入ります。 Xcodeはエージェントと連携して インサイトタブの実装方法の 計画を立て始めます。
Xcodeのエージェントを使って構築すると アイデアを機能にするのが本当に速いです。 そのため、自然と ワークフローが変わります 適切なプランを確保することが アイデアと構築したい アーキテクチャを捉えた より重要なステップになります。
計画に集中することで 後になって 改良が欲しい機能の 仕上げに使えます 不十分な基盤の 修正ではなく。 Xcodeはこれを実現するための ツールを提供します。 計画をディスカッションに変えて 実装に移る前に 戦略を合わせます。 ディスカッションといえば 大まかなアイデアはあります 表示したい指標についてです。 ただ、プランに含まれる内容に 同意できるか確認したいです。 フォローアップを送って いくつかのアイデアを依頼します。 これでメッセージをキューに入れて エージェントが現在の作業を終えたら 質問に対応してもらいます。 このようにメッセージをキューに入れることで アイデアをその場で表現できます エージェントが現在の 作業を終えるのを待たずに。
Xcodeが私のメッセージを エージェントに送信しました 選択肢がいくつか 戻ってきました。 内容を確認すると エクササイズごとのビューと トップレベルのサマリーが良い表示方法 として最初に適していると思います それらの選択肢を選んで 返答を送ります。
キューに入れたメッセージを使って 追加要件を提供すると エージェントも明確にするための 質問ができるようになります あなたとエージェントの間に 密なコミュニケーションループが生まれます。 プロセス全体を通じて ディスカッションに参加することで より強固で よく考えられたプランが生まれます。 プランが完成したようです! Markdownで完全なプランを確認できます これにより内容を見直せます 必要な編集を 直接行えます。 これはかなり徹底しているようで 先ほど議論した内容がすべて含まれています。 承認します XcodeはエージェントとともにプランをImplementします。
最初の変更が すでに行われました アーティファクトとして変更の 正確なdiffを確認できます。
ソースコードの変更と新しいファイルは 作成されると同時にアーティファクトとして表示されます プロジェクトに追加されます。 最新情報を把握して コード変更を確認できます 期待通りであることを 確かめられます。
ソースの変更がすべて 完了したようです エージェントは 検証に移りました。 Xcodeのビルドツールが使われて 変更が正しいことを確認します 最初はいくつか 問題があるようです。 ただし、ビルドエラーは エージェントに直接伝えられるので 何が失敗したかを 正確に把握でき 素早く反復して 再ビルドして正しいか確認できます。 エージェントはアーキテクチャ ドキュメントも更新しています 新しいコードを反映させて このナレッジベースを最新状態に保ちます。
プレビューに移りました SwiftDataの変更に関する いくつかの問題を解決した後 現在の実行先で プレビューをレンダリングします。 プレビューもアーティファクトです レンダリングされたプレビューをクリックして 確認できます。 素晴らしい出来で iPhoneで欲しかったものそのものです トップレベルのサマリーを備えた 簡潔なビューです。 Xcodeはエージェントに あなたと同じツールを提供します 新しいコードが 期待通りに動作することを確認するためです。 プロジェクトのビルドから 新しいUIのプレビューレンダリングまで コードが正しいという 自信を持てます。
iPadで確認して 新しいテーブルも見てみましょう。 iPadシミュレータで実行して デバイスハブで確認します。 新しいインサイトビューがあります データのコレクションが表示されています 最近のトレーニングと 最新のエクササイズについてです。 エクササイズの内訳テーブルで さらに詳細を確認できます。 シミュレータでUIに 満足したところで すべての変更が 強固な基盤の上に構築されているか確認します。 SwiftDataモデルへの変更に対して ユニットテストを書くよう Xcodeに依頼します。 プロジェクトの既存のテストスイートが 取り込まれているので これらのテストはすでにある 他のテストと一緒に整理されます。
ビルドとプレビューに加えてエージェントは Xcodeのテストツールも使えます 新しいテストを書いたり 既存のテストを実行したりして 新しいコードが 正しいことを確認します。 エージェントに作業中の検証の 機会が与えられることで 機能の高レベルな目標に 集中できます。
エージェントは新しい変更を検証するための テストスイート全体を書き 12件の新しいテストケースを すべて実行して合格を確認しました。 インサイトビューが 信頼できると自信を持って言えます。
Xcodeでの構築により 機能のビジョンに集中できます。 プランモードでアイデアを合わせ リアルタイムでディスカッションを進め 作成されるアーティファクトを確認し Xcodeの検証ツールで 新しいコードが正しいことを確認できます。 開発プロセスの あらゆる段階で Xcodeは正しく構築するための パートナーです。 素晴らしいスタートです。 Xcodeを使ってインサイトビューの プロトタイプをすぐに作れました。 この分析データを活かして アプリに新しい視点が必要だと思います 細部に目を向けられる 人からの。 Devin、インサイトビューは 素晴らしいスタートを切っています 過去のワークアウトに対する 優れた分析機能がすでにあります。 ただ、このアプリには 時間の経過による進歩を 表示するビジュアライゼーションが あると良いと思います。 ここから引き継いで もらえますか? もちろんです! Swift Chartsが それに最適だと思います。 Maxwellはこのプロジェクトを 素晴らしい状態にしてくれました。 いくつかのビジュアライゼーションを 追加するための良い出発点があります 早速始めましょう!
これまで、エージェントを使って 新しいコードベースを探索する方法を説明しました 機能の計画と 簡単な構築方法も紹介しました。 次のステップに進む必要があります。 見た目と使い心地を まさに望む通りにすることです。 Maxwellが分析画面で 行ったことが本当に好きです。 それを活かすために Swift Chartsでグラフを追加します。 グラフの見た目、アニメーションの 感触 アプリのスタイルに合う 色 これらは作業中に よく変わる主観的な好みです。 ビジュアルデザインの反復を 非常に速く行えます そのためすべての変更に 関わり続けることが重要です 最終結果が あなたのビジョンを反映するように。
テキストだけでなく 意図を伝えることができます 画像、スケッチ、ドキュメントを使って 考えていることを正確に表現できます。 調整が必要な場所が わかっている場合は インラインアノテーションで コードの該当箇所を直接指定できます 焦点を絞った 的確な変更が実現します。 その様子を お見せします。 Swift Chartsは あまり詳しくないので データに合うグラフスタイルを 探索することから始めます。 こちらがプロンプトです。 インサイトビューに 最適な選択肢を質問しています。
どれも素晴らしい選択肢ですが 実際の表示を確認したいです。 人工的なワークアウトデータを使って 各グラフタイプのプレビューを生成しましょう。
Xcodeでは、テキストの説明から 数秒で動作するプロトタイプを作れます グラフがどう見えるかを 想像するだけでなく 実際に見ることができます。 リアルなデータでこれらのグラフが 実際にどう見えるか確認できます。 「時間経過による量」の選択肢が 明らかに優勝です。 ウェイトトレーニングでの進歩を 一目で表示します まさに欲しいものです。 プレビューは素晴らしいです ただ、まだいくつか カスタマイズしたい点があります。 iPadでスケッチして美術館に飾れるほどの グラフデザインを考えます。 iPadでFreeformを開いて 考えているものをスケッチしましょう。
確かに美術館に飾れる 素晴らしい出来です。 そうでしょう、 なかなかのものです。
まあ、本業を辞めるべきでは ないかもしれませんが ありがたいことに これでアイデアは伝わると思います!
スケッチを送って InsightsViewに直接 描いたスタイルに合わせた 折れ線グラフの追加を依頼します。 実装されている間に 裏側で何が起きているかを 説明します。 Xcodeのプレビューを使うことで エージェントはコードを生成して終わりではありません。 プレビューは増分的に レンダリングして結果を視覚的に確認でき 生成されたものが 要求した内容と一致しているか確認します。 問題があれば あなたが介入する前に 調整が行われます。
実際にはこのような 形になります。 スケッチが解釈されて まさに求めていたものと 一致するグラフに変換されました。 途中でプレビューが レンダリングされたことが確認できます 自己検証ループが 機能しています。
素晴らしい出来です! まだいくつか 調整したい点があります。 グラフに さりげないアニメーションを追加して アプリのテーマに合わせた カラースキームに変更したいです。 これらの変更が どこに必要かわかっています インラインアノテーションで コードの正確な箇所を指定できます。
グラフビューに 2つのアノテーションを残します。 1つ目はここでフェードイン アニメーションの追加を依頼します。
もう1つはここでトレンドラインの色を テーマに合わせるよう依頼します インラインアノテーションは 通常の会話 プロンプトにはない情報を持っています 変更を加えたいコードの 正確な場所です。 特定の行にアノテーションを付けると 周囲のコードが コンテキストの一部になります。 アノテーションは何を変更するかだけでなく どこを変更するかも示します 結果は正確で 意図した内容にのみ絞られます。
これは素晴らしい出来です。
そのプロセスのすべてのステップで 私たちが主導権を握っていました。 グラフの種類を選びました。 デザインをスケッチしました。 最終的な調整が必要な場所を 正確に指定しました。 クリエイティブな方向性は 常に私たちのものでした。 Xcodeには改良をさらに良くする ツールが揃っています。 リアルなデータで変更を確認できる リッチなプレビュー ソースコードから直接変更を指示する インラインアノテーション 考えているものを正確に示すための 画像添付。 エージェントとのデザイン重視の テクニックについて詳しくは 「Create UI Prototypes using Agents in XCode」セッションをご覧ください。
次に、包括的な機能開発を オーケストレーションする方法をお見せします アプリを新しい言語に翻訳して アクセシビリティ対応することです。 MaxwellとDevinにとって開発するアプリが アクセシブルであることは本当に大切です。 ジムの友人が 主にフィリピン語を話しています その友人に私たちと同じように このアプリを使ってほしいです。 アクセシビリティとローカライズはアプリを すべての人に使えるようにするためのものです。 エージェントを使えば これらの機能をアプリに取り込む ことがこれまで以上に 簡単になります。 Xcodeは達成できることを拡張する 豊富なツールを提供します。 MaxwellとDevinはDocument Search、 プレビューレンダリング 「すべてのテストを実行」などのツールを すでにご紹介しましたが、まだまだあります。 一部はXcodeに組み込まれていて 一部はAppleのフレームワームチームが提供します 独自のツールを追加することも できます。 適切なツールはタスクに基づいて 自動的に検出されて使用されます。 ローカライズ用に 新しい会話を始めます ユーザー向けの文字列をすべて フィリピン語に翻訳し 文字列カタログを 設定するよう依頼します。 これを送信します。 機械翻訳ツールが 検出されているのが確認できます。 これによりアプリの翻訳に 必要なコンテキストが提供されます 作業を開始できます。 これがオーケストレーションの 実際の様子です。 高レベルの目標を説明しました 「アプリをフィリピン語にローカライズする」 適切なツールが 自動的に検出されました。 ここから作業が 並行した部分に分割されます 小さなサブエージェントが 展開されて アプリ全体の文字列を 特定して翻訳します。 ローカライズが実行されている間 アクセシビリティ用に2番目の会話を始めます VoiceOverのラベルとアクセシビリティ識別子 を追加するよう依頼します すべてのインタラクティブな 要素に対してです。
今、複数のワークフローが 同時に実行されています。 アクセシビリティがビュー全体に 変更を実装しています ローカライズはサブエージェントを通じて 翻訳を調整しています。 ローカライズで 興味深いのは 翻訳ツールが 私たちが直接呼び出しているわけではなく サブエージェントによって 内部で呼び出されている点です。 メインの会話は コンテキストのためにツールを読み取り 作業を部分に分割し 各サブエージェントが アプリの担当部分を処理しながら 特定の翻訳機能を 呼び出しています。 これがオーケストレーションの力です。 目標を説明すると適切なツールが 適切なレベルで使用されます 一部はメインワークフローが 計画のために使用し その他はサブエージェントが 実行のために使用します。 そのすべての間も いつでも進捗を確認できます。 最も重要な部分の時間です 結果の確認です。 アプリがフィリピン語に ローカライズされました。 「Start Workout」ボタン、 「History」タブ、「Insights」セクション すべて翻訳されました。 文字列カタログにはアプリのすべての ユーザー向け文字列のエントリがあります。 VoiceOverを有効にしましょう。
「VoiceOver On」 「Start New Workout button」 「Landscape」 「Charge port to the right」 「Start New Workout」 「Workouts」 「Back button」 「Workouts」 「Heading」
「VoiceOver Off」 主要なすべての要素に ラベルが付いてナビゲーション可能です。 以前なら何時間もの 繰り返し作業だったものが 2つの並行した会話で 完了しました。 そして常に 私たちがコントロールしていました。
Xcodeでエージェントと作業することで あなたが主導権を握れます。 オーケストレーションでは 高レベルの目標を説明できます Xcodeがその達成方法を 決定します 適切なツールを検出し サブエージェントを調整し タスクを並行して 完了させます。 Xcodeの強力なツールによって インパクトのある作業を指示できます ローカライズやアクセシビリティを 1つのプロンプトで。
このアプリは本当に まとまってきました。 そうですね! 分析機能が素晴らしく グラフで進歩を一目で確認できます。 Xcodeを使うことで 素早く立ち上げることができました まだ追加できることが たくさんあります。 このセッション全体を通じてXcodeは 私たち各自の作業スタイルをサポートし 各ステップで 情報を共有し続けました。 Xcodeでは エージェントとともに自分のやり方で作業できます 探索、構築、改良、 オーケストレーションのいずれでも。 この新機能の構築に 使ったすべてを振り返りましょう。 探索から始まりました XcodeのツールとApple Document Searchを使って コードベースをマッピングして 使いたいAPIについて学びました。 構築の時が来たら プランモードを使ってコードを書く前に アーキテクチャを設計し キューに入れたメッセージと エージェントへの質問を活用して エージェントとアイデアを 合わせました。 プロトタイプの機能が完成したら XcodeのBuild、Preview、 Testツールを使って作業を検証しました。 UIを改良する際は 画像を添付してアイデアを表現し ソースコードに基づいた変更を導く インラインアノテーションを使い プレビューで外観を 確認しました。 最後に、より大きな目標を オーケストレーションしました ローカライズとアクセシビリティのための ツールを活用して サブエージェントが 並行して作業しました。
次にできることをご紹介します。 Xcode 27をダウンロードして自分の プロジェクトでエージェントを使い始めましょう。 Xcodeで使えるエージェントツールを 探索してください 独自のものを追加したり 「Create UI Prototypes using Agents in Xcode」 「Translate your app with agents in Xcode」のセッションも 今日議論したコンセプトを 深く掘り下げるためにご覧ください。 2人ともジムに行って 新機能をテストする時間ができました。 また後で! ご視聴ありがとうございました!
-
-
- 0:00 - Introduction
An overview of coding agents in Xcode 27, and what you'll learn in this session: how to explore a codebase, plan and build features, refine with visual design, and orchestrate multi-step tasks using agents.
- 1:14 - Meet the app
Maxwell and Devin introduce the workout tracking app they're building together — a starting point for exploring how agents support each phase of development.
- 2:06 - Explore
Learn how agents in Xcode help you get up to speed on a new project. Use a walkthrough to understand data models and view hierarchies, leverage Apple Document Search for accurate framework knowledge, and capture what you learn as reusable architecture documents.
- 7:38 - Build
Use plan mode to design an architecture before writing any code, communicate requirements in real time using queued messages, and rely on Xcode's build, preview, and test tools to validate new features as they're implemented.
- 13:44 - Refine
Iterate on visual design using Swift Charts with realistic previews. Use image attachments to convey design intent, and inline annotations to direct targeted changes right from your source code — keeping creative direction in your hands throughout.
- 18:25 - Orchestrate
Describe high-level goals like localization and accessibility, and let Xcode discover the right tools and coordinate sub-agents to accomplish them in parallel — delivering results quickly.
- 22:09 - Next steps
Key takeaways and links to related sessions on UI prototyping with agents and translating apps with agents in Xcode.