> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nomo.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# iPhone からの回答

> Claude Code と Codex の許可リクエストに iPhone から回答します — Dynamic Island からの承認・拒否と、アプリでのすべての選択肢。

エージェントは、あらかじめ許可されていないものを実行しようとすると、そこで止まって確認を求めます。本来なら Mac で答えるところですが、Nomo があれば iPhone から答えられ、エージェントはすぐに続きを再開します。

<Warning>
  **まずオンにしてください。**リモート承認は**初期状態でオフ**です。「設定」＞「セッション」＞「リモート承認」＞「iPhoneで回答」と選択します。このスイッチがオンになるまで、許可リクエストはターミナルに留まり、iPhone にはその知らせだけが届きます。
</Warning>

<h2 id="two-places-to-answer">
  回答できる 2 つの場所
</h2>

Dynamic Island は**知らせる**ため、アプリは**答える**ためのものです。用意されている選択肢が違うのは意図的です。

<Tabs>
  <Tab title="Dynamic Island とロック画面" icon="circle-dot">
    ボタンは「許可」と「拒否」の 2 つだけです。ライブアクティビティに置けるのはそこまでで、Nomo は実行を保証できないボタンをそこに置きません。

    質問の場合は「考え直す」 — *どれも違うので考え直してほしい*という本物の拒否です — と「回答」が表示され、「回答」は選択肢がきちんと収まるアプリへ直接移動します。

    許可リクエストが有効でなくなると、ボタンは何もしないまま残るのではなく `Macで続けてください` に置き換わります。

    <Frame caption="Dynamic Island をタッチして押さえたままにすると、許可リクエストがそのまま表示されます。フォルダ、セッション、コマンド、そして 2 つのボタン。">
      <div className="device-frame crop-top">
        <img src="https://mintcdn.com/nomo-ba73b2e6/tvqjCmRnpqBaYpOW/images/island-expanded-permission.png?fit=max&auto=format&n=tvqjCmRnpqBaYpOW&q=85&s=49630c6782c80f3880da942f3f469289" alt="拡張表示の Dynamic Island。データベースのマイグレーションを実行するコマンドの許可リクエストと、「拒否」「許可」のボタンが表示されている" width="1206" height="540" data-path="images/island-expanded-permission.png" />
      </div>
    </Frame>
  </Tab>

  <Tab title="アプリ内" icon="mobile">
    セッションの行を**タッチして押さえたままにします**。すべての選択肢はここにあります — そして、行をタップしても展開されるだけなので、ここが見落とされがちです。

    押さえたままにすると、コマンドやファイルパス、あるいは質問を載せたプレビューカードと、その下にメニューが表示されます。

    <Frame caption="メニューの上にあるカードが許可リクエストそのものです。ツール、コマンド、そしてどのフォルダから来たのかが表示されます。">
      <div className="device-frame">
        <img src="https://mintcdn.com/nomo-ba73b2e6/tvqjCmRnpqBaYpOW/images/long-press-answer-popup.png?fit=max&auto=format&n=tvqjCmRnpqBaYpOW&q=85&s=2503f531cb7b5d5c12bb1683eaa4b553" alt="タッチして押さえたままにしたセッションの行。Bash コマンドのプレビューカードの下に「許可」「拒否」「その他…」のメニューが表示されている" width="1206" height="2622" data-path="images/long-press-answer-popup.png" />
      </div>
    </Frame>
  </Tab>
</Tabs>

<h2 id="everything-you-can-answer">
  回答の選択肢一覧
</h2>

| 選択肢                      | 場所                              | エージェントに伝わる内容                                                                                            |
| ------------------------ | ------------------------------- | ------------------------------------------------------------------------------------------------------- |
| **「許可」**                 | Dynamic Island、アプリ              | その操作を実行して続行します。                                                                                         |
| **「拒否」**                 | Dynamic Island、アプリ              | その操作を飛ばして、実行せずに続行します。                                                                                   |
| **「Bashを常に許可（このセッション）」** | アプリのみ                           | 許可したうえで、**このセッションの間は**確認しなくなります。ディスクに書き込まれることはなく、次のセッションに引き継がれることもありません。                                |
| **「メモを付けて拒否…」**          | アプリのみ                           | 拒否したうえで、入力した内容 — *理由*や*代わりにすべきこと* — を伝えます。                                                              |
| **「回答…」**                | アプリのみ                           | 選択式の質問に対して選択肢を選びます。                                                                                     |
| **「計画全体を表示」**            | アプリ、および Dynamic Island の「計画を表示」 | 決める前に読めるよう計画を開きます。                                                                                      |
| **「Macで開く」**             | アプリのみ                           | 何も回答しません — Mac 上でそのセッションのターミナルウィンドウを前面に出します。[ローカルネットワーク](/ja/sessions/settings#local-network)での接続が必要です。 |

「Bashを常に許可（このセッション）」「メモを付けて拒否…」「回答…」の 3 つはメニューの「その他…」の中にあり、いずれもプラグイン **2.0.0** が必要です。1.0.0 では「許可」と「拒否」だけが表示されます — Nomo は Mac が実行を保証できないボタンを出しません。更新がある場合はドロワーが知らせます。

<h2 id="answering-a-question">
  質問への回答
</h2>

エージェントが許可ではなく選択式の質問をしているときは、行に `回答が必要` と表示され、Dynamic Island も「許可」や「拒否」を出さずにその旨を伝えます。選択肢を選ぶ場面では、その 2 つの動詞は意味をなさないからです。

「回答…」を選ぶと、質問とその選択肢が行として並び、それぞれにエージェントが書いた説明が添えられます。行をタップしても選択されるだけで、「送信」を押すまで何も送られません。どの選択肢も答えではないときのために、「拒否」が隣に並びます。

<Frame caption="1 つの質問、4 つの選択肢、そしてそれぞれに付いたエージェント自身のメモ。選ぶことは答えることではありません — 答えるのは「送信」です。">
  <div className="device-frame">
    <img src="https://mintcdn.com/nomo-ba73b2e6/tvqjCmRnpqBaYpOW/images/answer-options-drawer.png?fit=max&auto=format&n=tvqjCmRnpqBaYpOW&q=85&s=045832be42091b18ca7b48da70ea056e" alt="回答用のシート。キャッシュに使うデータストアを尋ねる質問、説明付きの 4 つの選択肢、「拒否」と「送信」のボタンが表示されている" width="1206" height="2622" data-path="images/answer-options-drawer.png" />
  </div>
</Frame>

エージェントが複数の質問をした場合は 1 つずつ表示され、上部に `質問1/3` と出ます。「戻る」で前の質問に戻っても、選んだ内容はそのまま残ります。複数の回答が認められている場合は `当てはまるものをすべて選択` と表示されます。

<h2 id="reviewing-a-plan">
  計画の確認
</h2>

計画づくりを終えたセッションには `計画を確認` と表示されます。「計画を表示」を開くと、計画全体が組版された状態でスクロールでき、下部に「許可」と「拒否」が固定されます。

iPhone からの承認は、Mac でデフォルトの選択肢を選ぶのと同じ、ごく普通の承認です。編集を自動で受け入れるか 1 つずつ確認するかを選ぶことはできません。そこはターミナルでの判断のままです。

<Frame caption="計画全体をスクロールでき、判断は下部に固定されています。「メモを付けて拒否…」はその下にあり、拒否ではなく方向づけをしたいときに使います。">
  <div className="device-frame">
    <img src="https://mintcdn.com/nomo-ba73b2e6/tvqjCmRnpqBaYpOW/images/view-plan-claude.png?fit=max&auto=format&n=tvqjCmRnpqBaYpOW&q=85&s=276ececbc6f780784db16c38aa598737" alt="iPhone に全画面で表示された Claude Code の計画。下部に「拒否」と「許可」のボタンが固定されている" width="1206" height="2622" data-path="images/view-plan-claude.png" />
  </div>
</Frame>

<Note>
  計画が長すぎて 1 回の暗号化された更新に収まらなかった場合は、その旨とどれだけ省かれたかがシートに表示されます。計画全体は常にターミナルに残っています。iPhone がローカルネットワーク経由で Mac に直接届くときは、Nomo が全文を取得し直します。
</Note>

Codex の計画は iPhone では**読み取り専用**です。ここで読み、ターミナルで選びます。[理由](/ja/sessions/codex#plans-are-read-only)。

<h2 id="after-you-tap">
  タップしたあとの動き
</h2>

行が `送信中…` になり、やがて確定します。回答は iPhone 上で 1 度だけ封をされ、2 つの経路で同時に Mac へ送られます — 中継サーバー経由と、利用できるならネットワーク越しの直接接続です。先に届いたほうが有効になり、もう一方は破棄されるので、重複して二重に回答されることはありません。

Nomo は送ったあとに検証もします。中継サーバーからの素っ気ない「OK」だけを信用せず、許可リクエストが実際に解決したかを iPhone が確認し、解決していなければ送り直します。どうしても確認できないときは、何かが起きたと思わせたまま放置せず、ボタンを元に戻します。

<h3 id="what-the-caption-tells-you">
  キャプションの意味
</h3>

| キャプション                            | 意味                                       |
| --------------------------------- | ---------------------------------------- |
| `許可済み` · `拒否済み` · `常に許可` · `回答済み` | 届きました。                                   |
| `送信中…`                            | 送信中です。                                   |
| `再接続中…`                           | 再試行しています。一時的なものなので、そのままお待ちください。          |
| `コンピュータで回答済み`                     | Mac 側で先に回答されました。                         |
| `期限切れ — コンピュータで続けてください`           | 回答が届く前に、エージェントが待つのをやめました。                |
| `新しいリクエストに置き換えられました`              | エージェントが先へ進み、別のことを尋ねています。                 |
| `承認は一時停止中 — コンピュータで回答してください`      | そのコンピュータで一時停止されています — 下をご覧ください。          |
| `送信できませんでした — もう一度お試しください`        | 失敗し、再試行も尽きました。もう一度タップしてください。             |
| `長すぎて送信できません — コンピュータで回答してください`   | 回答が 1 回の暗号化された更新に収まりません。これは再試行しても成功しません。 |

遅れて届いた回答は破棄され、適用されることはありません。20 分前にタップしたせいで何かが実行されていた、ということは起こりません。

<Tip>
  ボタンは、画面に約 1 秒表示されてからでないとタップが有効になりません。すでに動いていた指の下で Dynamic Island が展開した場合、そのタップは意図的に無視されます — それは判断ではなかったからです。
</Tip>

<h2 id="nothing-hangs-forever">
  回答がないときのフォールバック
</h2>

iPhone がいつまでも回答しない場合、許可リクエストはやがて自動的にターミナルへ戻ります。Nomo が iPhone に届けられないものも同じです。未ペアリング、ネットワークなし、タイムアウト、読み取れない応答 — どの失敗の経路も、最後は Mac にいつもどおりのダイアログが表示されて終わります。

そもそも iPhone に届かない許可リクエストもあり、これは仕様です。サブエージェントが開始したセッションと、エージェントがもともと確認しない非対話的な権限モードで動いているセッションです。

<h2 id="pausing-it">
  一時停止
</h2>

スイッチは 2 つあり、効く範囲が異なります。

**iPhone 側で、すべてに対して** — 「設定」＞「セッション」＞「iPhoneで回答」。オフにすると、すべての許可リクエストが Mac で判断されます。

**特定のコンピュータだけ** — そのマシンで [`/nomo-cc:approvals off`](/ja/sessions/commands#approvals) を実行します。iPhone のほうが使えない状況のための逃げ道で、許可リクエストは待たされることなくターミナルへ直行します。

どちらもペアリングを解除するものではありません。いずれの場合もセッションは変わらず表示され、回答を求められなくなるだけです。一時停止中のコンピュータは、ドロワーの上部にその旨が表示されます。
