Grok
Grok 供應商會在中繼的機器上驅動 Grok CLI。不需要在 OAR 中輸入 API 金鑰:Grok 使用 CLI 已登入的帳戶,而你可以從瀏覽器安裝 CLI 並登入。
Grok 沒有提問卡片、沒有導正,也沒有 OAR 能強制執行的計畫模式。所有供應商的對照表請見供應商一覽。
你需要什麼 #
- 中繼所在機器上的 Grok CLI(
grok)。OAR 可以幫你安裝(見 Grok CLI 列)。 - 在那台機器上已登入的 Grok 帳戶。你可以從瀏覽器登入(見登入),也可以在該機器上執行
grok login。中繼不保存任何 Grok 機密資訊:CLI 會把登入資訊存放在~/.。grok/ auth. json
Grok CLI 列會先在中繼的 PATH 上尋找 grok,再找 ~/.、~/. 和 /。session、登入和模型探索則從 PATH 啟動 grok,或啟動 GROK_ 指定的執行檔(見環境變數)。
Grok CLI 列 #
在 Settings → Providers → Grok(設定 → 供應商 → Grok)頂端有一列 Grok CLI,顯示 CLI 是否已安裝。已安裝時,這一列會顯示版本、所在位置、安裝方式,以及是否為最新版本,例如 1.;有較新版本時則顯示 update available (…)。按鈕會依狀態而不同:
| 按鈕 | 時機 | 作用 |
|---|---|---|
| Install(安裝) | 找不到 CLI | 先請你確認(會列出指令和要寫入的資料夾),再以中繼的使用者身分執行 xAI 自家的安裝程式。在 Linux 和 macOS 上是 curl -fs,安裝到 ~/.;在 Windows 上是 irm https://。 |
| Update(更新) | 找到 CLI | 先請你確認,再執行 grok update。它不會重新執行安裝程式。 |
| Cancel(取消)/ Dismiss(關閉) | 執行中 / 執行結束後 | 停止執行 / 清除結果。 |
輸出會以 Install log(安裝記錄)即時串流到面板中,在其他裝置上也看得到。同一個中繼一次只會執行一個安裝,執行超過 10 分鐘的安裝會被停止。指令是固定寫在中繼裡的,而且絕不以 sudo 執行。安裝或更新後,新的 session 會立即使用新的執行檔,中繼在重新啟動後也會記得它;執行中的 session 則繼續使用啟動時的執行檔。另請參閱安裝或更新供應商的 CLI。
啟用 #
Grok 預設為關閉。開啟 Settings → Providers → Grok,在 Grok 下:
| 控制項 | 預設 | 作用 |
|---|---|---|
| Enable Grok for New Chat model selection(在新對話的模型選擇中啟用 Grok) | Off(關閉) | 讓 Grok 成為 New Chat(新對話)中的選項,並執行模型探索。切換後立即生效,不必按 Save Grok settings(儲存 Grok 設定)。 |
| Grok model ID(Grok 模型 ID) | grok- |
Grok 對話一開始使用的模型。按 Save Grok settings 套用。 |
| Save Grok settings | 儲存模型 ID。 |
控制項下方有一行文字說明 Grok 目前的狀態。關閉 Grok 時,尚未送出任何訊息的對話會移回 Copilot。已經開始的對話則繼續使用 Grok。見開始對話。
同一個面板再往下是 Grok monthly plan allowance(Grok 每月方案額度)(見用量)。
登入 #
CLI 列下方的帳戶列會顯示帳戶狀態。已登入時,它會顯示 CLI 的計費資訊所提供的內容,例如 70% of weekly quota used;如果剛好只有一個產品,前面還會加上產品名稱。未登入時,它會顯示 Not signed in。token 過期時會顯示 token expired, may need a new sign-;CLI 通常會自行更新 token。這一列只認得用 CLI 完成的登入。
登入 #
- 按 Sign in(登入)。中繼會在它的機器上執行
grok login --device-。auth - 面板會顯示
Starting the Grok sign-,接著顯示 x.ai 登入連結和 Copy link(複製連結)按鈕,旁邊是格式為in on the relay host… XXXX-的代碼。XXXX - 在任何裝置(例如手機)上開啟這個連結,並在瀏覽器中確認。請核對瀏覽器顯示的代碼和面板上的代碼是否一致。代碼已經包含在連結中,所以你不必輸入任何東西。
- 面板會自動變成
Signed in to Grok.,片刻之後登入區域會收合起來。不需要把任何東西貼回 OAR:CLI 會等待 x.ai 回應並自行完成。這時會重新執行一次模型探索,所以你不必重新啟動中繼。
Cancel 會放棄這次登入。未完成的登入會在 10 分鐘後結束,並顯示 Grok login timed out after 600s。同一個中繼一次只會執行一個登入,而且每個開啟中的瀏覽器都看得到它,所以你可以在一台裝置上開始、在另一台裝置上完成。如果登入失敗,面板會顯示錯誤和 Dismiss 按鈕。
登出 #
Sign out(登出)會開啟一個確認畫面,顯示帳戶名稱,並說明有多少 Grok worker 正在執行。按 Sign out 確認。之後新的 Grok 回合都會失敗,直到你重新登入。登入進行中或沒有已登入的帳戶時,這個按鈕無法使用。
執行中的 Grok session 會繼續使用先前的帳戶,直到它的 worker 處理程序結束。新的 session 使用新帳戶。
失敗回覆上 #
當回合因為 CLI 不存在或尚未登入而失敗時,失敗的回覆會帶有前往修正處的按鈕:
| 回覆內容 | 按鈕 |
|---|---|
Grok CLI was not found on PATH. Install it from Settings → Providers → Grok. |
Install Grok CLI(安裝 Grok CLI)(開啟與 Install 按鈕相同的確認畫面)、Grok settings(Grok 設定) |
Grok authentication failed. Sign in from Settings → Providers → Grok, or run grok login on the relay host / set XAI_ |
Sign in to Grok(登入 Grok)(開啟設定並開始登入)、Grok settings |
安裝或登入完成後,請重新傳送訊息。
模型 #
啟用 Grok 時,會探索 CLI 提供的模型,並把它們加到選擇器中。中繼會在以下時機向 CLI 查詢:你啟用 Grok 時、變更模型 ID 時、登入之後,以及從面板安裝之後。如果 CLI 沒有回報任何模型,就只提供 grok- 和你設定的模型 ID。在 Select Models(選擇模型)中,用 Grok 分頁選擇其中哪些要出現在輸入區,然後按 💾 Save enabled models(儲存已啟用的模型);預設模型永遠保持啟用。
模型是固定的 #
一個 Grok 對話只使用一個模型。你在 New Chat 中選的模型會在 session 啟動時傳給 CLI,而 CLI 無法在 session 中途切換模型。送出第一則訊息後,輸入區會鎖定選擇器,中繼也會以 Grok model switching requires creating a new Grok conversation 拒絕其他模型。要使用其他模型,請另開一個對話。見開始對話。
Reasoning effort #
reasoning effort 選擇器提供 none、low、medium 和 high,以及 CLI 為該模型回報的其他等級。OAR 會把選定的等級(none 除外)隨每則訊息一起送出,作為提示。不支援它的 CLI 版本會忽略它,所以不要指望它會改變回答。
哪些功能可用,哪些不行 #
- 串流、思考與 Stop。 回覆和 agent 的思考會即時串流。Stop(停止)會取消回合。
- 權限。 在每種模式下,OAR 都以 allow once(允許一次)回應 agent 的每個權限請求。不會詢問你。
- 提問卡片。 沒有:Grok 的協定沒有辦法向你提問。agent 只能在回覆文字中提問,再等你的下一則訊息。見 ask_user。
- 中繼模式。 ask、autopilot 和 plan 是以你訊息前面的一行
[Relay mode: ...送達 agent,在模式變更時加上。沒有任何機制強制執行。見中繼模式。] - 計畫看板。 在 plan 模式中,當最後的回覆至少有兩行看起來像計畫步驟時,會出現 Plan ready for review(計畫已就緒,待審閱)看板。沒有需要等待的計畫工具。
- 沒有導正。 回合進行中送出的訊息會排在回合後面等待,傳送按鈕顯示 Queue(加入佇列)。見回合與佇列。
- OAR 的 agent 工具。 Grok 會從 OAR 附加到每個 Grok session 的小型 MCP 伺服器取得
preview,並在有配對的中繼或已開啟 agent session 時取得relay_。設定tool OAR_時不會附加這個伺服器:沒有MCP_ SERVER= 0 relay_,agent 則會被告知如何改為呼叫 preview API。見 Agent 工具 → 依供應商。Grok 對話也可以被其他 agent 監看。tool - 附件。 檔案會以你文字後面的一行
[Attached file: <path>]送達 agent,而不是以內容送達。agent 必須自己讀取檔案。 - Subagent。 Grok 的 task 或 agent 工具呼叫會顯示為附帶狀態的 subagent 小標籤。subagent 的巢狀文字不會被記錄。
- 背景任務。 0.9.12 新增 任務面板會列出 agent 開啟、執行超過兩秒的每個終端機,以 Bash 列顯示,附有 Stop 和顯示其輸出的主控台。當 agent 不再使用該終端機或指令結束時,它就會離開面板。Background task timeout(背景任務逾時)不適用於 Grok。
- 上下文。 🧠 按鈕會顯示上一個回合的 token(輸入、快取、輸出)。如果已知模型的視窗大小,還會加上占視窗的百分比。沒有類別。
- 壓縮。 OAR 不為 Grok 設定或顯示自動壓縮,也沒有視窗設定。見壓縮對話。
- 靜默與回合時長上限。 靜默太久的回合會失敗:沒有任何東西在進行時 120 秒、模型請求期間 300 秒、工具執行期間 30 分鐘。agent 在等待
relay_呼叫,或在等待中繼替它執行、且最近 5 分鐘內有輸出的指令時,不計入靜默時間。回合也受 Max turn duration(回合最長時間)限制,從提示開始時起算;達到上限的 Grok 回合會失敗,而不是回到佇列。時間窗、如何調整以及上限,請見回合與佇列。tool - 重新啟動之後。 中繼會儲存 Grok 的 session id,並在 worker 重新啟動時載入該 session。如果 CLI 無法載入,會有一則註記說明,回合則會啟動一個不含先前上下文的新 session。見重新啟動與繼續。
- 用量。 Grok 的回覆沒有用量行;見用量。
用量 #
Grok 啟用期間,📊 Check Usage(檢查用量)中會有 Grok 卡片。它會顯示:
- Weekly plan usage(每週方案用量):即時的百分比進度條和重設日期,透過 CLI 的登入讀取。沒有 CLI 登入時就沒有這個進度條,卡片會顯示下列估算值。
- Latest turn(最近一回合):費用(估算)、模型、輸入、輸出、快取和推理的 token、花在 API 上的時間和 agent 回合數,以及 By model (last turn)(依模型,上一回合)明細。
- Current cycle (local)(目前週期,本機):自上次計費重設以來的估算花費、記錄的回合數和 token,由此中繼上的 Grok 回合加總而來。
卡片附有前往 xAI console 的連結。費用來自 agent 自己的回報,並標示為估算值。
每月額度 #
Grok 不會向 OAR 回報剩餘點數,所以 OAR 可以拿自己的估算和你提供的預算比較。在 Grok monthly plan allowance 下:
| 控制項 | 預設 | 作用 |
|---|---|---|
| Monthly allowance (USD)(每月額度,USD) | 空白 | 你的每月預算。設定後,卡片會加上 Estimated monthly spend(估算每月花費)量表。空白或 0 表示沒有額度。 |
| Billing resets on day of month(每月計費重設日) | 1 |
週期開始的日期,1 到 31。 |
| Save allowances(儲存額度) | 儲存這兩個欄位。 | |
| Reset tracked spend(重設已記錄的花費) | 確認後,清除目前週期已計算的花費。更換方案或帳戶後使用。 |
環境變數 #
在中繼啟動時所用的環境中設定這些變數。
| 變數 | 作用 |
|---|---|
GROK_ |
要使用的 Grok 執行檔,取代 PATH 上的 grok。從面板安裝或更新時會自動幫你設定。未設定時會讀取 GROK_。session、登入和模型探索會使用它;Grok CLI 列則不會。 |
OAR_ |
設為 0 時 OAR 不附加它的 MCP 伺服器,因此 Grok 沒有 relay_,並以文字形式取得 preview 的說明。 |
靜默時間窗有各自的變數,列在回合與佇列中。
XAI_ 出現在登入錯誤訊息中,CLI 也會讀取它,但 OAR 不會把它傳給 session,帳戶列和每週進度條也會忽略它。請改用 CLI 登入。
限制 #
- 模型在每個對話中是固定的,換帳戶也只對新的 session 生效。
- 登入只使用裝置碼流程;不提供 CLI 的瀏覽器回呼登入和企業登入。
- 沒有解除安裝按鈕,也無法固定 CLI 版本。
疑難排解 #
失敗的回覆會以 Error code: relay.<code>. 結尾;下列代碼是固定不變的部分。
| 問題 | 該怎麼做 |
|---|---|
| New Chat 中沒有 Grok | 在 Settings → Providers → Grok 中開啟 Enable Grok for New Chat model selection。 |
| CLI 列顯示 Not installed(未安裝) | 按 Install,或把 grok 放到中繼的 PATH 上,然後重新開啟設定。只設定 GROK_ 不會改變這一列。 |
Grok CLI was not found on PATH(relay.) |
在失敗的回覆上按 Install Grok CLI。不需要重新啟動中繼。其他任何文字中含有「not found」或「spawn」的失敗也會這樣顯示,所以如果 CLI 已經安裝,請改看 CLI 自己的錯誤訊息。 |
Grok authentication failed(relay.) |
在失敗的回覆上按 Sign in to Grok,並在瀏覽器中確認代碼。執行中的 session 會保留舊的 token,直到它的 worker 結束;登入後請重新傳送訊息。 |
帳戶列顯示 Not signed in |
按 Sign in。 |
Grok login timed out after 600s |
10 分鐘內沒有人確認代碼。再按一次 Sign in。 |
Grok login exited with code … |
CLI 拒絕或失敗了;後面的文字是 CLI 最後的輸出。按 Dismiss,然後再按一次 Sign in。 |
Grok model discovery failed. Cached Grok models were kept: … |
在 Select Models 中按 Refresh(重新整理)後出現的通知。CLI 沒有在 20 秒內回應,或已登出。請登入,然後關閉再開啟 Grok,或再按一次 Refresh。 |
Grok model switching requires creating a new Grok conversation |
模型是固定的。用你要的模型開一個新的 Grok 對話。 |
the Grok runtime sent nothing for 120s…(relay.) |
靜默時間窗已用完。請重新傳送訊息。 |
grok turn exceeded the 60-(relay.) |
已達到 Max turn duration。請傳送新訊息,或調高這個設定。 |
System note: the previous Grok session could not be restored… |
CLI 無法載入儲存的 session。回合已在沒有先前上下文的情況下重新開始。 |
| agent 提問後沒有任何反應 | Grok 沒有提問卡片。請在輸入區中回答。 |
Error code: relay. |
CLI 回報的其他任何錯誤,錯誤代碼前面是它自己的文字。請重新傳送訊息;如果一再發生,請檢查中繼機器上的 CLI。 |