提問卡片
當 agent 需要你做決定時,它會在對話中用提問卡片詢問,而不是自己猜測。你在卡片上回答(任何裝置都可以),agent 就會帶著你的答案繼續。卡片在每個供應商上都一樣;本頁說明如何回答它。agent 呼叫哪個工具來提問以及它的參數,請見 ask_user 頁面。
在哪裡看到卡片 #
- 在對話中。 卡片位於對話紀錄的最後。最上面一行標示提問的供應商,如 Claude question(Claude 的提問)、Cursor question(Cursor 的提問)等,以及對話的中繼模式和時間。問題下方是一段簡短的說明,解釋為什麼提問;最底下是 Waiting for your answer(等待你的回答)這一行,以及卡片的到期時間。
- 在對話清單中。 該列會顯示 N open(N 個待處理),而且在 session 等待你回答期間,標題會變成紅色。見對話清單。
- 在標題列中。 一個按鈕會顯示 ❓ 1 open question(1 個待回答問題),數量不同時會顯示對應的數字。如果待回答的卡片在另一個對話中,按鈕會加上 latest in(最新於)和那個對話的標題。點選它會開啟有最新卡片的對話。
- 以推播通知的形式,前提是你在 Settings → Notifications(設定 → 通知)中開啟了 Questions from the agent(agent 的提問)。只有在沒有任何裝置把 OAR 放在前景時才會發出通知。通知最多可以把三個選項顯示為按鈕(視你的裝置能顯示多少而定),讓你不必開啟 OAR 就能回答。超過 120 個字元的選項不會有按鈕。如果答案沒有送達(卡片已在別處回答、已到期,或你處於離線狀態),點一下就會改為開啟該對話。見 Settings(設定)。
回答卡片 #
選項 #
有選項的問題會為每個選項顯示一個按鈕。點選即作答,沒有第二步。
如果某個選項需要更多解釋,agent 可以加上說明。這些說明會以文字行的形式顯示在問題下方。
多個答案 #
有些問題允許不只一個答案。這時卡片會為每個選項顯示一個核取方塊,並有一個 Reply with selection(以所選內容回覆)按鈕。勾選並不會作答。Reply with selection 會傳送每個勾選的選項(依卡片列出的順序),以及你在輸入框中輸入的任何內容(作為多出來的一項),彼此以 , 分隔:
PostgreSQL, SQLite, needs a read replica
什麼都沒勾選也沒輸入時,按鈕不會有任何作用。
Claude、DeepSeek、Claude Cloud 和 Cursor 會自己表明是否允許多個答案。在 Copilot 上,當 agent 有這樣表明,或問題的措辭是「select all that apply」0.9.3 新增 時,卡片會顯示核取方塊。任何有兩個以上選項的 Copilot 卡片,在選項下方也有一個 Select several(多選)開關,讓你在 agent 沒有提供時也能給出多個答案。開啟或關閉它都會保留你已勾選的項目。要求在提供的選項中只能選一個的 Copilot 請求沒有這個開關。Claude 和 DeepSeek 的卡片從來不會有這個開關:它們依照 agent 的要求。
自由文字 #
除了表單之外,每張卡片都有一個 Type a reply…(輸入回覆…)輸入框,讓你用自己的話回答,而不必挑選。輸入後按 Reply(回覆),或按 Ctrl+Enter(Mac 上是 Cmd+Enter)。在有核取方塊的卡片上,輸入框顯示 Add another answer or a note (optional)…,而 Ctrl/Cmd+Enter 會像 Reply with selection 一樣,把勾選的選項連同你的文字一起傳送。
沒有選項的問題只能用自由文字回答。核准卡片上也有這個輸入框,但不要使用它;見核准卡片。
表單 #
當 agent 需要一次取得多個值時,卡片會是一份表單,每個值一個欄位,並有一個 Submit(提交)按鈕。標有 * 的欄位為必填。欄位名稱下方可以有說明,也可以有已預先填入的預設值。
| 欄位 | 你會看到什麼 |
|---|---|
| 文字 | 一個文字框。agent 標記為電子郵件地址或連結的欄位,會有對應類型的輸入框。 |
| 數字 | 一個數字框。要求整數時,小數會被截去,只保留整數部分。 |
| 是或否 | 一個標示為 Yes(是)的核取方塊。不勾選會傳送 no。 |
| 多選一 | 一個下拉式清單。必填欄位的第一行是 Select…(請選擇…),選填欄位則是 (none)(無)。 |
| 清單 | 每個允許的值各有一個核取方塊。如果沒有值的清單,則是一個文字框,各項目以逗號分隔。 |
Submit 會把表單傳送到中繼,由中繼檢查。如果有問題,會顯示在按鈕上方,且不會傳送任何東西:例如 Port is required 或 Environment: value not allowed。留空的欄位會採用它的預設值(如果有的話)。agent 會依欄位收到你的值。卡片開啟期間,你輸入的內容會保留在表單中。
多個問題 #
Claude、DeepSeek、Claude Cloud 和 Cursor 可以在一次工具呼叫中提出多個問題(Cursor 最多四個)。它們不會以一張包含多個部分的卡片出現。你一次會收到一張卡片:回答前一個問題後,下一個問題才會出現;每張卡片的回答方式都和其他卡片一樣,也有各自的時間限制。當 agent 需要同時取得多個值時,它會使用表單。
核准卡片 #
OAR 本身以及部分供應商會請你核准某個動作。這些卡片提供兩個按鈕,而 OAR 自己的卡片只能由你回答:其他 agent(無論在此中繼或其他中繼上)都無法回答它們。
| 卡片 | 詢問時機 | 按鈕 |
|---|---|---|
| 啟動 session | agent 想在此中繼上啟動它的第一個 session。見 Agent session。 | Allow(允許)、Deny(拒絕) |
| 監看 session | agent 想訂閱其他 session 中發生的事。見監看 session。 | Allow、Deny |
| 寫入動作 | 在 ask 或 plan 模式中,agent 想在另一個 session 或配對的中繼上傳送、啟動、回答、停止或封存。另外,當它在你沒有傳送任何訊息的情況下已向其他 agent 傳送 30 個提示時也會詢問。 | Allow、Deny |
| Claude Cloud 上的工具權限 | 雲端 agent 要求使用某個工具。 | Allow、Deny |
| ask 模式下 Copilot 的工具權限 | Copilot 想執行會變更內容的工具。讀取不會詢問。卡片會描述該動作。 | Approve(核准)、Deny |
請使用核准卡片上的按鈕
每張卡片都會顯示回覆輸入框,核准卡片也一樣。在核准卡片上,輸入文字並不是表示同意的方式。在 OAR 自己的卡片上(前三列),只有 Allow 這個字(不分大小寫)表示核准;其他任何文字都表示拒絕,而且 agent 不會從中得到任何理由。在 Claude Cloud 上,只有完全相符的 Allow 才表示核准。請點選 Allow 或 Deny。
在 Copilot 權限卡片上,你輸入的任何不是 Approve 的文字都會拒絕該動作,而你的文字會作為理由傳給 agent。單純按 Deny 只會告訴它你拒絕了。
每種中繼卡片何時出現,以及 Allow 涵蓋哪些範圍,請見 relay_tool 頁面。agent 想請你審閱的計畫不是提問卡片;見計畫看板。
卡片開啟期間 #
-
回合會等待。 在你回答之前,agent 什麼都不做。等待卡片的回合不論等多久,都不會被視為卡住。
-
傳送按鈕。 在 Claude、DeepSeek 和 Copilot 的 SDK 引擎上,你在回合期間傳送的訊息通常會導正進該回合。卡片開啟時,按鈕改為顯示 Queue(加入佇列),工具提示會寫著 Will steer in after you answer the question。訊息會被暫緩,等你回答後才送進回合。在其他供應商上,按鈕本來就會顯示 Queue。見回合與佇列。
-
等待多久。 8 小時,Copilot 的擴充功能引擎上則是 2 小時;見卡片會等待多久。卡片會顯示到期時間。到期後卡片會消失,而 agent 會收到:
[No user response before timeout — continue according to the current relay mode.]之後它會怎麼做,取決於 agent 和中繼模式。
-
停止。 停止回合會結束 agent 的等待。卡片會消失,之後也無法再回答。被取消或失敗的回合也會以相同方式關閉它的卡片。
-
中繼重新啟動。 中繼會在重新啟動後保留開啟中的卡片,agent 的等待也會延續下去。卡片不會因為中繼短暫無法連線就自行作答。
從其他地方回答 #
0.9.16 新增 側邊欄中的 Inbox(收件匣)會列出 session 正在等待的每一張卡片(包括此中繼和配對的中繼上的),以及 agent 不等待回答而提出的問題。此中繼的卡片可以直接在那裡回答,方式和在其 session 中一樣;配對中繼的卡片則會在該中繼上開啟。
- 另一台裝置。 卡片屬於中繼,而不是瀏覽器。在手機上回答,筆電上的卡片也會關閉。對已回答卡片的第二次回答會被拒絕。
- 離線。 如果你回答時裝置沒有連線,答案會排入佇列,並顯示提示 You are offline. Answer queued — it will send when the connection returns.
- claude.ai。 Claude Cloud 對話的卡片(提問或工具權限)也可以在 claude.ai 上回答。卡片會在 OAR 中消失。
- 另一個 agent。 使用 agent session 或配對的中繼時,agent 可以用
answer_回答另一個 session 的提問卡片。agent 會被告知要先問你,除非你告訴它們自行決定。agent 無法回答自己的問題,也無法回答核准卡片。它回答時,卡片會像任何已回答的卡片一樣從你的畫面上消失;你不會收到通知,也看不到答案。在 ask 或 plan 模式中,agent 的question answer_呼叫本身就是一個寫入動作,會先詢問你(見核准卡片)。question
回答之後 #
卡片會在每台裝置上從對話中消失。在你作答的裝置上,會顯示幾秒鐘的簡短提示:Answer received: …(已收到回答:…)加上你的答案,接著是 Agent continuing…(agent 繼續中…)。agent 會收到你的答案:選項的文字、合併後的選項、你的文字,或表單的值。回合繼續進行。
OAR 不會把卡片、問題或你的答案當作訊息保留在對話中,重新載入後也不會顯示其中任何一項。agent 針對你的答案所寫的內容是它回覆的一部分。已到期或因 Stop(停止)而關閉的卡片也會以同樣方式消失。
答案是最終的。卡片無法重新開啟或修改。如果你選錯了,就傳一則訊息告訴 agent;那是對話中的一則一般訊息。
依供應商 #
| 供應商 | 卡片 |
|---|---|
| Claude、Claude Cloud | 選項、多個答案和多個問題,一張卡片接著一張。Claude Cloud 也會以 Allow 和 Deny 詢問工具權限。 |
| DeepSeek 0.9.17 新增 | 同 Claude。 |
| GitHub Copilot 與 OpenAI,SDK 引擎 | 選項和多個答案,附 Select several 開關;一次一個問題。當連接的工具伺服器要求結構化輸入時,會使用表單。ask 模式下的 Copilot 會以 Approve 和 Deny 詢問工具權限。 |
| GitHub Copilot 與 OpenAI,擴充功能引擎 | 選項、自由文字和表單。表單欄位可以接受清單。 |
| Cursor | 選項、多個答案和最多四個問題,一張卡片接著一張。 |
| Grok | 沒有卡片。它的 agent 協定沒有提問的方式,所以 Grok agent 會在回覆文字中提問,並等待你的下一則訊息。 |
每個供應商透過哪個工具提問以及它的參數,見 ask_user 頁面上的表格。