ChatGPT モバイルアプリのリモートは、一見しただけでは使い道の広さが伝わりにくい機能です。
スマートフォンからコーディング中のチャットの様子を確認できるだけでも便利です。ただ、リモートの真価はその先にあります。iPhone を小さなターミナルのように使わなくても、開発マシンで作業を開始し、指示を出し、結果をレビューして、一連の作業を整理できます。
この 2 か月で、リモートを使ってできることが大きく広がりました。リモートホストへの接続、Worktree、目標、サイドチャット、インラインでのコードレビュー、プロンプトのキューへの追加と実行中の方向修正、添付ファイル、スキルとプラグイン、チャットのアーカイブ、セキュリティ設定に加え、本格的な開発に役立つ細かな改善も数多く盛り込みました。
これからリモートを使いこなしたい方に、最初に手に取ってほしい実践ガイドです。

リモートの基本:スマートフォンは開発のコントロールプレーン
コードを実行する場所はこれまでどおり、Mac、Windows マシン、開発用の devbox など、接続先のホストです。ChatGPT モバイルアプリのリモートでは、アプリのネイティブインターフェースから、そのホストでの作業を操作できます。
この役割分担が重要です。ターミナルのあらゆる操作を小さな画面に再現することが目的ではありません。エージェントが先に進むために必要な判断を、どこにいても簡単に下せるようにすることが目的です。
- どのリポジトリとワークスペースを使えばよいですか?
- 現在のブランチで進めますか、それとも新しい Worktree を使いますか?
- 次のメッセージは順番待ちにしますか、それとも今のターンの方針を変えますか?
- このコマンドは安全に承認できますか?
- 何が変わりましたか。その変更でよいですか?
- この件は継続して取り組む目標にしますか、別のチャットで扱いますか、それともサイドチャットで少し質問すれば済みますか?
こうして使うと、リモートはリモートデスクトップというより、開発作業を指揮するためのコントロールプレーンだと実感できます。
1. チャット開始時の作業範囲の設定
エージェントに作業を任せる第一歩は、作業範囲に合った環境を用意することです。リモートでは、最初のプロンプトを送る前に、接続済みのホストとワークスペースを選べます。新しいチャットでは、ブランチを選び、別の Worktree を作成して、その Worktree に設定された環境セットアップを実行することもできます。

作業に合わせて、次のように使い分けられます。
- 簡単な調査には、現在のチェックアウトを使用
- 他の作業と分けておきたい変更には、新しい Worktree を作成
- 後から Git の状態を修正する手間を省くため、最初から目的のベースブランチを選択
- Codex にビルドやテストを依頼する前に、環境セットアップを実行
特に大切なのは、最初に 10 秒かけて適切な実行環境を選ぶ習慣です。それだけで、後で 10 分かけて後始末をせずに済みます。
コンポーザーで渡せるコンテキストはテキストだけではありません。ファイルや写真を添付したり、その場で撮影した写真を追加したりできます。スキルとプラグインはインラインで表示されるので、プロンプトで意図した機能を呼び出せているか簡単に確認できます。

私の基準はシンプルです。スクリーンショットやファイルを添えるか、スキルを名前で指定することで意図が明確になるなら、最初のターンの前にそうしておきます。
2. キューへの追加と実行中の方向修正の使い分け
リモートの設定の中でも、見落としやすい割に効果が大きいのが、追加のプロンプトをいつ反映するかという設定です。
Codex がすでに作業中の場合、追加の指示には 2 通りの送り方があります。
- キューに追加を選ぶと、現在の応答が終わってから、次のターンのプロンプトとして送信されます。
- 方向修正を選ぶと、すでに進行中の作業に指示が反映されます。
通常はキューに追加しておくのが安全です。次のタスクや追加のテストなど、現在の作業が終わってから取りかかってほしいことに使います。
誤った方針で作業を続けるほど手戻りが増える場合は、その場で方向修正します。
修正はモバイルパッケージ内に限定してください。共有レンダラーはリファクタリングしないでください。
問題が再現するのは再接続後だけです。接続が継続している場合ではなく、接続を再開した場合の処理をテストしてください。
UI の調査は中止してください。再開時にサーバーがその項目を削除したかどうかを確認してください。
これでスマートフォンの役割が進捗確認だけにとどまらなくなります。実行中に判断が必要になったその時点で介入できます。
追加のプロンプトの既定の動作は設定で選べます。私はキューへの追加を既定にし、方向修正は意図して選ぶようにしています。うっかりターンの途中で方針を変えると、応答を待つよりも手戻りが大きくなることが多いためです。
3. サイドチャットでの疑問の掘り下げ
長く続くコーディングのチャットには、貴重なコンテキストが蓄積されます。関連する疑問が浮かぶたびに割り込むと、本筋のやり取りが追いにくくなり、エージェントの作業も目的からそれかねません。
そこで役立つのがサイドチャットです。
/side を使うと、現在のチャットにつながった短いやり取り用のチャットを開けます。質問が決まっていれば、/side <prompt> でその質問から始められます。さらに便利なのが、チャット履歴のテキストを選んでサイドチャットで質問を選択する方法です。選んだ箇所が、新しいチャットの最初のコンテキストになります。

私は次のような質問や依頼にサイドチャットを使っています。
- Codex がこのアーキテクチャを選んだ理由は何ですか?
- このエラーは具体的に何を意味しますか?
- この動作はデスクトップアプリと一致していますか?
- この実装の詳細をリリースノート向けに書き直してください。
- このコマンドを承認する前に何を確認すればよいですか?
役割を分けておくと便利です。メインチャットで作業を進め、サイドチャットでその作業への理解を深めます。
4. 進め方を決めるプランモードと、成果を定める目標
プランモードと目標は、それぞれ異なる課題に対応します。
プランモードでは、コードを変更する前に Codex に実装の進め方を提案してもらいます。要件がまだ固まっていない場合や、変更にリスクがある場合、複数のシステムに変更が及びそうな場合に役立ちます。
目標はターンをまたいで維持されます。どのような成果を目指して作業を続けるかを Codex に伝えるものです。モバイルでは /goal で目標を作成、管理でき、作業中も進捗を確認できます。
実際には次のように進められます。
- リスクのある変更は、プランモードで始めます。
- 提案された作業範囲を確認します。
- 作業を何度か繰り返す必要がある場合は、合意した成果を目標として設定します。
- 以降は毎回目標を伝え直さなくても、Codex に実装、テスト、レビュー指摘への対応、後片付けまで続けてもらえます。
プランでは「どう進めるか」を決めます。目標では「どの条件を満たせば完了か」を決めます。
5. チャット内でのコードレビュー
レビューを一通り進めてみると、リモートが単に便利なだけでなく、開発の実務に役立つことが分かります。
ターンが完了すると、変更されたファイルの一覧が表示されることがあります。そこから差分を開いて個々のファイルを確認し、セクションを展開したり折りたたんだり、長い行を折り返したりできます。ソースファイルをシンタックスハイライト付きで開くこともできます。該当する行にインラインコメントを付ければ、どこへの指摘かが分かる形で Codex にレビュー内容を返せます。

確認したい内容に応じて、次の操作を使い分けます。
- 変更ファイルの一覧を開いて、想定どおりの変更かをざっと確認
- 差分だけでは前後の処理が分からない場合は、タップしてソース全体を表示
- 修正箇所を正確に伝えるため、該当行にインラインコメントを追加
- レビューコマンドでローカルの変更をレビュー、またはブランチと比較
- 特定のファイルについて Codex に検討してほしい場合は、チャットにそのファイルへのリンクを追加
スマートフォンだけで、次のようにレビューと修正を続けられます。
- Codex が実装を完了します。
- 私がスマートフォンから差分を確認します。
- インラインコメントを 2 件付けます。
- Codex が同じチャットでその指摘に対応します。
- 指摘への対応で生じた、より小さな差分をレビューします。
コードをじっくり読み込むには、スマートフォンで大型モニターの代わりを務めるのは難しいでしょう。一方、レビューが止まっている理由が、一つか二つの判断待ちということはよくあります。その判断なら、デスクに戻るまで待つ必要はもうありません。
6. 作業の一部としての権限管理
リモートでの作業が役に立つのは、どの操作を許可するか自分で明確に判断できるからです。
リモートには、コマンド、ファイルの変更、ネットワークアクセス、接続済みツールに関する承認リクエストが表示されます。リクエストの内容とホストの設定に応じて、承認を今回限りにすることも、現在のチャット全体や、さらに広い範囲に適用することもできます。
使いこなすコツは、何でも承認することではありません。作業を進めるのに必要な最小限の範囲で権限を与えることです。
信頼できるチャットで、動作をよく理解しているコマンドを使う場合は、そのチャットの範囲で承認しておくと、何度も作業を中断せずに済みます。不慣れなコマンドを使う場合、機密性の高いリポジトリを扱う場合、リクエストの影響が明確でない場合は、今回限りの承認にします。あるいはリクエストを拒否して、Codex に説明を求めるか、より安全な方法を使うよう依頼します。
作業開始時には、チャット全体の承認方針も選べます。ホスト、ワークスペース、ブランチ、モデルと同じく、チャットを始めるときの設定の一つとして考えてください。
7. 早めのコンテキスト管理
エージェントとのチャットには、それまでのやり取りの状態が保持されます。長く続くとコンテキストが蓄積し、次第に応答が遅くなったり、作業の焦点がぼやけたりします。
リモートには、チャットの進行に合わせてコンテキストを管理するためのツールがあります。
/statusでは、セッションの詳細、ワークスペース、コンテキストの使用量、取得可能なレート制限の情報を確認できます。- コンテキストインジケーターを有効にすると、コンポーザーにコンテキストの残量が常に表示されます。
/compactは、作業を続けるのに必要な状態を保持しながら、長くなりすぎたチャットのコンテキストを圧縮します。/forkを使うと、現在のチャットの履歴を引き継ぎながら、別の方向に進むための新しいチャットを作成できます。
まず状態を確認し、目的が同じならコンテキストを圧縮します。目的が分かれたらチャットをフォークします。
サイドチャットとフォークは使い分けてください。現在の作業について少し質問したいときはサイドチャットを使います。フォークすると、元のチャットの履歴を引き継いだ新しいメインチャットができます。
8. チャット一覧の整理
最近の私にとって、Codex のチャット一覧は、開発作業をまとめて管理する小さな運用デスクのような存在です。
進行中のチャットをいくつかピン留めし、目指す成果が分かる名前に変えます。作業が終わったら、どんどんアーカイブします。アーカイブしても削除はされず、後からチャットを閲覧できるので、安心して一覧を整理できます。
通知もこの流れの一部です。完了通知から該当する Codex のチャットを直接開けるので、エージェントが作業を終えたら、ワンタップでレビューに取りかかれます。
Spotlight や「ショートカット」からリモートを直接開くこともできます。iPad ではキーボードショートカットが思いのほか便利です。画面上のボタンをいちいちタップせずに、新規チャットの作成、チャット間の移動、変更ファイルの表示、ピン留め、名前の変更、アーカイブができます。
こういうとき、リモートは開発全体を見渡す「参謀役」になります。プロンプトを送るだけでなく、どの作業が進行中で、どこで行き詰まり、何がレビュー待ちで、何が完了したかを把握する場所でもあります。
9. 隠れたコマンドパレット
/ を入力すると、アプリのさまざまな高度な機能をすばやく呼び出せます。利用できる機能は、接続先のホスト、アプリのバージョン、アカウントの設定によって異なる場合があります。
| コマンド | 用途 |
|---|---|
/plan |
実装前にプランモードのオンとオフを切り替えます。 |
/goal <objective> |
ターンをまたいで維持される目標を作成または更新します。 |
/side [question] |
メインチャットを中断せずに、関連する疑問を別のチャットで質問します。 |
/review |
ローカルの変更をレビューするか、ブランチと比較します。 |
/status |
セッション、ワークスペース、コンテキスト、レート制限を確認します。 |
/compact |
長くなったチャットのコンテキストを圧縮します。 |
/fork |
現在の履歴を引き継いだ新しいメインチャットを作成します。 |
/fast |
利用可能な場合に、標準実行と高速実行を切り替えます。 |
/feedback |
現在のセッションに関連付けて製品へのフィードバックを送信します。 |
コマンドパレットを覚えると、計画を立て、目標に向かって作業を進め、必要に応じてチャットを分岐させ、変更をレビューし、状態を確認して作業を立て直すという、この製品の基本的な使い方が見えてきます。
10. モバイルで特に便利な 5 つのワークフロー
リリース担当者の進行管理
リリースまたは pull request 専用のチャットを始めます。現在のブランチ、CI の状態、未対応のレビュー指摘、対象の変更がリリースに含まれるかを Codex に確認してもらい、チャットをピン留めします。新しい情報が入ったら、進行中の調査の前提が崩れた場合にだけ方向修正し、それ以外はキューに追加します。スマートフォンで最終差分やリリースノートを確認し、リリースが完了したらチャットをアーカイブします。
急なバグへの対応
スクリーンショット、ログ、または記録したファイルを添付します。編集に入る前に原因を診断するよう Codex に依頼します。気になるエラーが一つあれば、メインの調査を脱線させずにサイドチャットで詳しく聞けます。原因が明らかになったらメインチャットに戻り、必要な箇所に絞った修正を許可します。
モバイルでのコードレビュー
対象のブランチと比較してレビューを実行し、変更ファイルの一覧を確認します。重要なファイルを開いてインラインコメントを付けます。そのコメントにだけ対応するよう Codex に依頼してから、修正後の差分をレビューします。
複数ターンにわたる目標の管理
「すべてのテストに合格する」「レビュー指摘を解消する」「再現可能な条件で性能の基準値を満たす」など、具体的な完了条件を定めて目標を作成します。「終わりましたか?」と繰り返し尋ねる手間は省き、通知やステータスで進捗を確認します。追加作業のプロンプトはキューに入れ、進行中の作業に指示を出すのは方針の修正が必要なときに限ります。
複数のマシンにまたがる作業
ホストには識別しやすい名前を付け、マシンとワークスペースごとに作業を整理します。作業に必要なチェックアウト、認証情報、シミュレーター、OS などに応じてマシンを選び、スマートフォンからそのマシンでチャットを開始します。あるチャットには Mac が必要で、別のチャットには Windows ホストが必要といった場合に特に便利です。
日々の作業に効く小さな機能
私が気に入っている追加機能には、大きく取り上げられることの少ないものもあります。
- 訂正用のターンを追加せず、直近に送信したプロンプトを編集
- チャット内に表示された画像を保存またはコピー
- Codex の実行中にキュー内のプロンプトを確認
- 通知から作業が完了したチャットを直接表示
- アーカイブ済みのチャットを後から閲覧し、進行中のチャット一覧を整理
- 幅の狭い画面で差分を読むときに長い行を折り返して表示
- Face ID またはデバイスのパスコードで ChatGPT モバイルアプリを保護
- 送信前にコンポーザーでスキルとプラグインをインライン表示
- 目の前にあるものをコンテキストとして渡したいときに、その場で撮影してプロンプトに追加
- 質問の背景を説明し直さず、チャット履歴で選択したテキストからサイドチャットを開始
これらはどれも、エージェントの基本的な仕組みを変えるものではありません。それでも、こうした機能がそろうことで、リモートでの作業が途切れがちになる原因を一つずつ取り除けます。
モバイルでの開発から学んだこと
優れたモバイルソフトウェアの設計は、デスクトップの画面を縮小するだけでは成り立ちません。デスクを離れたときにどんな判断が必要かを見極め、その判断に必要な情報を分かりやすく示し、すばやく安全に行動できるようにします。
今の私にとって、リモートはまさにそういう場所です。作業に合った環境を選び、目標を定め、実行中に方向を修正し、承認リクエストに応じ、結果を確認できます。順番待ちのものも含めて、開発作業全体を整理しておけます。
作業を実行するのは、これまでどおりコンピューターです。その進め方は、スマートフォンを手にした私が決められます。