# TUI 模式

TUI 在其間切換的輸入與顯示模式。

當前模式顯示於輸入框下方一列，後接工作目錄。v1.3.7 起權限模式改顯示為 `⏵⏵ auto`（橘色）或 `⏸ safe`，取代 `[auto]` / `[safe]`；fast 模式仍以方括號標籤 `[fast]` 置於前方（`[fast]⏸ safe`）；`Shift+G` guide 注入開啟且工作目錄有該檔時，模式後接 `[CLAUDE.md]` 或 `[AGENTS.md]`。daemon socket 斷線時該列改顯示 `Connecting`：

- `safe` —— tool call 執行前需使用者確認
- `auto` —— tool call 不經確認直接執行（`allowAll = true`），例外是 `$HOME` 內但在工作目錄外的寫入、指令與 `rm` 目標（詢問一次，核准後本 session 放行）以及不可逆指令；只在工作目錄為 `$HOME` 底下、不是 `$HOME` 本身、且非禁止或敏感路徑的子目錄時生效，否則套用 `safe` 規則。沙箱、validator 與需密碼的確認仍然生效（見[權限與確認](/zh/security-permissions)）
- `fast` —— 透過 `go-llm-router` 傳遞 `core.ModeFast`，讓支援的供應商後端要求更快的服務層級

Session 的模型與 reasoning 等級（`model/reasoning`，reasoning 可能顯示 `auto`）位於輸入框底部邊框右側。該處不再顯示 session 名稱；`Session ID: <short id>` 改為 header 區塊的一部分，於啟動時與每次切換 session 後印出。

全域 auto reasoning 開關已於 v1.1.0 移除。Reasoning 改為 per-session 等級，`auto` 是其中一個值：此時由 agent selector 依回報的工作類型決定等級。

自 v1.0.21 起，執行選定模型時紀錄區會印出 `⏵ Model(<model> <reasoning>)`，fallback 切到其他模型時印出 `⏵ Switch(<model> <reasoning>)`；thinking 行不再重複顯示模型。Compaction 顯示為 `⏵ Compact(tool history)` 或 `⏵ Compact(conversation history)`。回覆 footer 顯示耗時、token 與完成時間，第二行為 session 標籤；v1.3.0 起不再重複顯示 `model/reasoning`：實際使用的模型與等級見 `⏵ Model(...)` 行，session 設定則在輸入框邊框上（web 對話則在滑過 footer 時顯示模型）。自 v1.1.0 起 footer 不再顯示 quota；請按 `Shift+U` 查詢。完成時間會縮短——今天只顯示 `15:04`、今年稍早為 `01-02 15:04`，其餘為完整日期；web 對話 footer 同樣省略今天的日期與當年年份。

`write_todo` 計畫進行中時，thinking 區的 `Plan (done/total)` 標題會以 spinner 動畫作為標記，直到所有項目完成（v1.1.0）。v1.3.1 起紀錄中每次 `write_todo` 呼叫標示為 `Plan`，並附上進行中（或最後完成）的項目與其位置，例如 `[2/5]`；任務暫停、取消或完成時清單會清除（v1.3.0）。

Auto 模式為 session 區域性設定：TUI 啟動時工作目錄符合條件即為 `auto`，否則為 `safe`，可用 `Shift+Tab` 切換。Fast 模式與 guide 注入為行程區域性，隨每次執行送給 daemon，**不會**寫入 `config.json`。
