v1.3.11

TUI Modes

Last updated


The input and display modes the TUI switches between.
The current mode renders on the line below the input box, followed by the working directory. Since v1.3.7 the permission mode shows as ⏵⏵ auto (orange) or ⏸ safe instead of [auto] / [safe]; fast mode keeps its bracketed [fast] label in front ([fast]⏸ safe), and [CLAUDE.md] or [AGENTS.md] follows the mode while Shift+G guide injection is on and the work directory has that file. While the daemon socket is down the line shows Connecting instead:
  • safe — tool calls require user confirmation before execution
  • auto — tool calls run without confirmation (allowAll = true), except writes, commands and rm targets inside $HOME but outside the working directory (asked once, then granted for the session) and irreversible commands; it only takes effect while the working directory is a subdirectory of $HOME that is not $HOME itself and not a denied or sensitive path, otherwise the safe rules apply. Sandbox, validator and the password-backed prompts still apply (see Permissions)
  • fast — passes core.ModeFast through go-llm-router so supported provider backends request a faster service tier

The session's model and reasoning level (model/reasoning, where reasoning may read auto) sit on the right of the input box's bottom border. The session name is no longer shown there; Session ID: <short id> is part of the header block printed at startup and after each session switch.
The global auto reasoning toggle was removed in v1.1.0. Reasoning is now a per-session level, and auto is one of its values: the agent selector then picks the level from the kind of work it reports.
Since v1.0.21 the transcript prints ⏵ Model(<model> <reasoning>) when a run picks its model and ⏵ Switch(<model> <reasoning>) when fallback moves to another one; the thinking line no longer repeats the model. Compaction shows as ⏵ Compact(tool history) or ⏵ Compact(conversation history). The reply footer shows duration, tokens and finish time, with the session label on a second line; since v1.3.0 it no longer repeats model/reasoning: the model and level actually used are in the ⏵ Model(...) line and the session setting on the input box border (the web chat shows the model when the footer is hovered). Since v1.1.0 the footer no longer carries the quota; press Shift+U for it. Finish times are shortened — 15:04 for today, 01-02 15:04 earlier this year, the full date otherwise; the web chat footers drop today's date and the current year the same way.
While a write_todo plan is open, the Plan (done/total) header in the thinking area animates its mark with the spinner until every item is done (v1.1.0). Since v1.3.1 each write_todo call in the trace is labelled Plan with the item in progress (or the last one completed) and its position, such as [2/5], and the list is cleared when the task pauses, is cancelled or finishes (v1.3.0).
Auto mode is session-local: the TUI starts in auto when its working directory qualifies and in safe otherwise, and Shift+Tab toggles it. Fast mode and guide injection are process-local, sent with each run to the daemon, and are not persisted to config.json.
中文