
始める前に
- macOS VM: Devin のセッションは macOS 上で実行する必要があります。Dedicated SaaS デプロイメントをご利用の場合は、アカウントチームに macOS VM の有効化を依頼してください。詳しくは macOS サポートをご覧ください。
- リポジトリ: 空のリポジトリ (例:
habit-tracker) を作成し、Git 統合経由で Devin にアクセス権を付与します。 - Desktop モード: 設定 > カスタマイズで Enable desktop mode をオンにします。これにより、Devin がシミュレータを操作し、テストの様子を記録できるようになります。詳しくは Computer Useをご覧ください。
macOS セッションの使用量は Linux セッションと同じで、macOS の追加料金はかかりません。
Step 1: Devin にアプリのビルドを指示する
- プラットフォームのバージョンとフレームワークを明示する — Devinがデプロイメントターゲットやアーキテクチャを推測せずに済みます。
- シミュレータのデバイスを明示する — ビルドコマンドがVM上に実在するデスティネーションを使用するようになります。
- 具体的な検証フローを記述する — Devinがコンパイルの成否を確認するだけでなく、あなたが重視する挙動をテストします。
ステップ2: Devin のビルドとテストを見守る
-
プロジェクトの雛形を作成:
project.yml、SwiftUI のビュー、習慣モデル、テストターゲットを作成し、xcodegen generateを実行します。 -
ビルドしてエラーを修正: シェルから
xcodebuildを実行し、コンパイラの出力を確認しながら、ビルドとテストが通るまでエラーを修正します。 -
シミュレータでアプリを実行: デバイスを起動し、ビルドをインストールして起動します。
- 指定したフローをテスト: Computer Use でアプリをタップ操作し、画面上で結果を検査したうえで、その実行を録画します。
- プルリクエストを作成: 概要とスクリーンショットを添えて作成します。
ステップ3: レビューと反復
ステップ4: TestFlightにベータ版を配信する
- App Store Connectをセットアップする: 契約への同意、バンドルIDの登録、アプリレコードの作成、ベータグループの作成、輸出コンプライアンスへの回答を行います。
- App Store Connect APIキーを作成し、
.p8ファイルをダウンロードします。 - Devinのシークレットを追加する:
ASC_KEY_ID、ASC_ISSUER_ID、ASC_PRIVATE_KEY、APPLE_TEAM_ID。 - 組織で制限付きのネットワークポリシーを利用している場合は、Appleのサーバーへのネットワークアクセスを許可する。
project.ymlとApp Store Connectでは同じバンドルIDを利用してください。ステップ1でDevinがプレースホルダーのバンドルIDを選択していた場合は、まずプロジェクトを更新するよう指示してください。xcodebuild archiveでアプリをアーカイブし、xcodebuild -exportArchiveでアップロードします。その後、処理済みのビルドをベータグループに追加します。これらの手順を毎回プロンプトで繰り返さずに再利用するには、ブループリントのknowledgeセクションにtestflightの項目を追加してください。詳細はブループリントに手順を保存するを参照してください。
ヒント
- ツールチェーンを固定する: macOSイメージには複数のXcodeバージョンが含まれています。ブループリント内で
DEVELOPER_DIRまたはxcode-selectを利用して使用するバージョンを指定してください。Xcodeバージョンの選択を参照してください。 - 認証情報はシークレットとして保存する: App Store Connect APIキー、署名証明書、非公開パッケージレジストリのトークンはシークレットに保存してください。Devinはこれらを環境変数として読み取ります。
- パッケージレジストリを許可する: 組織で制限付きのネットワークポリシーを利用している場合は、macOSの許可リストにSwift Package Manager、CocoaPods、およびアプリが利用する非公開レジストリが含まれていることを確認してください。ネットワークアクセスを参照してください。
- 復帰後にシミュレータを再起動する: セッションがスリープから復帰すると、ファイルは残りますが実行中のプロセスは失われます。テストの前にDevinにシミュレータを起動し直すよう依頼してください。
- 根拠を求める: 特定の画面のスクリーンショットや録画を求めれば、自身でアプリを実行しなくてもUIを確認できます。
制限事項
- Devin はアプリをシミュレータ上で実行し、実機の iPhone や iPad では実行しません。実機でテストするには、TestFlight ビルドをインストールしてください。
- VM 内でのタイミング計測やプロファイリングの結果は、実機のパフォーマンスを反映しません。
- macOS VM 上ではコンテナがソフトウェアエミュレーションで動作するため、コンテナを多用する作業は遅くなります。
次のステップ
TestFlightへのアップロード
ビルドをアップロードするためのApp Store Connectの設定、APIキー、シークレット
macOSのサポート
macOSセッション向けのブループリント設定、プリインストール済みツール、トラブルシューティング
テストと録画
Devinがアプリをテストし、結果を記録する仕組み

