跳到內容

OpenClaw TUI 快速上手:終端機介面操作指南

身為開發者,我們最討厭的就是在終端機寫程式到一半,還得切換到瀏覽器去問 AI 問題。這種上下文切換(Context Switching)超煩人,而且還會打斷思路。如果能直接在終端機裡跟你的 Agent 溝通,那該有多好?這就是 TUI (Terminal UI) 派上用場的時候了。

  1. 啟動 Gateway。
Terminal window
openclaw gateway
  1. 開啟 TUI。
Terminal window
openclaw tui
  1. 輸入訊息並按下 Enter。

遠端 Gateway:

Terminal window
openclaw tui --url ws://<host>:<port> --token <gateway-token>

如果你的 Gateway 使用密碼驗證,請使用 --password。

  • Header: 連線 URL、目前的 Agent、目前的 Session。
  • Chat log: 使用者訊息、Assistant 回覆、系統通知、工具卡片。
  • Status line: 連線/執行狀態(連線中、執行中、串流中、閒置、錯誤)。
  • Footer: 連線狀態 + Agent + Session + 模型 + think/fast/verbose/reasoning + token 計數 + deliver。
  • Input: 帶有自動補全功能的文字編輯器。
  • Agent 是唯一的 slug(例如 main, research)。Gateway 會顯示清單。
  • Session 屬於目前的 Agent。
  • Session key 儲存格式為 agent:<agentId>:<sessionKey>。
    • 如果你輸入 /session main,TUI 會將其展開為 agent:<currentAgent>:main。
    • 如果你輸入 /session agent:other:main,你會明確切換到該 Agent 的 Session。
  • Session 範圍 (scope):
    • per-sender(預設):每個 Agent 有多個 Session。
    • global:TUI 總是使用 global Session(選擇器可能是空的)。
  • 目前的 Agent 與 Session 始終顯示在 Footer 中。
  • 訊息會發送到 Gateway;預設不會遞送給 provider。
  • 開啟遞送功能:
    • /deliver on
    • 或透過 Settings 面板
    • 或啟動時加上 openclaw tui --deliver
  • 模型選擇器 (Model picker):列出可用模型並設定 Session 覆蓋。
  • Agent 選擇器 (Agent picker):選擇不同的 Agent。
  • Session 選擇器 (Session picker):僅顯示目前 Agent 的 Session。
  • 設定 (Settings):切換 deliver、工具輸出展開以及思考過程的可見性。
  • Enter: 發送訊息
  • Esc: 中止執行中的任務
  • Ctrl+C: 清除輸入(連按兩次結束程式)
  • Ctrl+D: 結束程式
  • Ctrl+L: 模型選擇器
  • Ctrl+G: Agent 選擇器
  • Ctrl+P: Session 選擇器
  • Ctrl+O: 切換工具輸出展開
  • Ctrl+T: 切換思考過程可見性(會重新載入歷史紀錄)

核心指令:

  • /help
  • /status
  • /agent <id> (或 /agents)
  • /session <key> (或 /sessions)
  • /model <provider/model> (或 /models)

Session 控制:

  • /think &lt;off|minimal|low|medium|high&gt;
  • /fast &lt;status|on|off&gt;
  • /verbose &lt;on|full|off&gt;
  • /reasoning &lt;on|off|stream&gt;
  • /usage &lt;off|tokens|full&gt;
  • /elevated &lt;on|off|ask|full&gt; (別名: /elev)
  • /activation &lt;mention|always&gt;
  • /deliver &lt;on|off&gt;

Session 生命週期:

  • /new 或 /reset (重置 Session)
  • /abort (中止執行中的任務)
  • /settings
  • /exit

其他 Gateway 斜線指令(例如 /context)會轉發給 Gateway 並顯示為系統輸出。請參閱 Slash commands。

  • 在行首加上 ! 即可在 TUI 主機上執行本地 Shell 指令。
  • TUI 每個 Session 會詢問一次是否允許執行本地指令;如果拒絕,該 Session 將禁用 ! 功能。
  • 指令會在 TUI 工作目錄下的一個全新、非互動式的 Shell 中執行(沒有持久的 cd 或環境變數)。
  • 本地 Shell 指令的環境變數中會包含 OPENCLAW_SHELL=tui-local。
  • 單獨一個 ! 會被當作一般訊息發送;行首空格不會觸發本地執行。
  • 工具呼叫會以卡片形式顯示參數與結果。
  • Ctrl+O 可在折疊與展開視圖之間切換。
  • 工具執行時,部分更新會串流到同一張卡片中。
  • TUI 會讓 Assistant 的回覆文字保持終端機預設的前景色,所以無論深色或淺色終端機都能清晰閱讀。
  • 如果你的終端機使用淺色背景且自動偵測錯誤,請在啟動 openclaw tui 前設定 OPENCLAW_THEME=light。
  • 若要強制使用原始的深色調,請設定 OPENCLAW_THEME=dark。
  • 連線時,TUI 會載入最新的歷史紀錄(預設 200 條訊息)。
  • 串流回覆會在原地更新,直到最終完成。
  • TUI 也會監聽 Agent 的工具事件,以顯示更豐富的工具卡片。
  • TUI 以 mode: "tui" 向 Gateway 註冊。
  • 重新連線會顯示系統訊息;事件中斷會顯示在日誌中。
  • --url <url>: Gateway WebSocket URL(預設為設定檔或 ws://127.0.0.1:<port>)
  • --token <token>: Gateway token(如果需要)
  • --password <password>: Gateway 密碼(如果需要)
  • --session <key>: Session key(預設為 main,若 scope 為 global 則預設為 global)
  • --deliver: 將 Assistant 的回覆遞送給 provider(預設關閉)
  • --thinking <level>: 覆蓋發送時的思考層級
  • --timeout-ms <ms>: Agent 超時時間,單位為毫秒(預設為 agents.defaults.timeoutSeconds)

注意:當你設定 --url 時,TUI 不會退而使用設定檔或環境變數中的憑證。請明確傳遞 --token 或 --password。缺少明確憑證將會導致錯誤。

發送訊息後沒有輸出:

  • 在 TUI 中執行 /status 來確認 Gateway 是否已連線,以及處於閒置或忙碌狀態。
  • 檢查 Gateway 日誌:openclaw logs --follow。
  • 確認 Agent 可以執行:openclaw status 和 openclaw models status。
  • 如果你預期在聊天頻道中看到訊息,請開啟遞送功能(/deliver on 或 --deliver)。
  • --history-limit <n>: 要載入的歷史紀錄條數(預設 200)
  • disconnected: 請確保 Gateway 正在執行,且你的 --url/--token/--password 正確無誤。
  • 選擇器中沒有 Agent:請檢查 openclaw agents list 和你的路由設定。
  • Session 選擇器是空的:你可能處於 global scope,或者還沒有任何 Session。

AI Setup Assistant

OpenClaw

OpenClaw Expert

還是卡住了?

如果這篇文件沒有解決你的情境,直接問 OpenClaw Expert,拿到可執行步驟。