@markusylisiurunen/tau 0.3.40 → 0.3.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/README.md +29 -33
  2. package/dist/core/cli.js +2 -2
  3. package/dist/core/cli.js.map +1 -1
  4. package/dist/core/commands/registry.js +22 -20
  5. package/dist/core/commands/registry.js.map +1 -1
  6. package/dist/core/config/builtin_themes.js +936 -998
  7. package/dist/core/config/builtin_themes.js.map +1 -1
  8. package/dist/core/personas.js +8 -53
  9. package/dist/core/personas.js.map +1 -1
  10. package/dist/core/session/direct_bash.js +8 -8
  11. package/dist/core/session/direct_bash.js.map +1 -1
  12. package/dist/core/session/runner.js +6 -1
  13. package/dist/core/session/runner.js.map +1 -1
  14. package/dist/core/tools/bash.js +80 -63
  15. package/dist/core/tools/bash.js.map +1 -1
  16. package/dist/core/tools/code_mode.js +33 -12
  17. package/dist/core/tools/code_mode.js.map +1 -1
  18. package/dist/core/tools/edit.js +72 -84
  19. package/dist/core/tools/edit.js.map +1 -1
  20. package/dist/core/tools/goal.js +97 -16
  21. package/dist/core/tools/goal.js.map +1 -1
  22. package/dist/core/tools/history.js +3 -3
  23. package/dist/core/tools/history.js.map +1 -1
  24. package/dist/core/tools/interrupt_agent.js +56 -37
  25. package/dist/core/tools/interrupt_agent.js.map +1 -1
  26. package/dist/core/tools/list_agents.js +28 -13
  27. package/dist/core/tools/list_agents.js.map +1 -1
  28. package/dist/core/tools/nook.js +3 -3
  29. package/dist/core/tools/nook.js.map +1 -1
  30. package/dist/core/tools/presentation.js +226 -0
  31. package/dist/core/tools/presentation.js.map +1 -0
  32. package/dist/core/tools/registry.js.map +1 -1
  33. package/dist/core/tools/send_input_to_agent.js +57 -47
  34. package/dist/core/tools/send_input_to_agent.js.map +1 -1
  35. package/dist/core/tools/spawn_agent.js +81 -52
  36. package/dist/core/tools/spawn_agent.js.map +1 -1
  37. package/dist/core/tools/subagent_ui.js +14 -38
  38. package/dist/core/tools/subagent_ui.js.map +1 -1
  39. package/dist/core/tools/view_image.js +45 -45
  40. package/dist/core/tools/view_image.js.map +1 -1
  41. package/dist/core/tools/wait_for_agents.js +94 -56
  42. package/dist/core/tools/wait_for_agents.js.map +1 -1
  43. package/dist/core/tools/web.js +3 -3
  44. package/dist/core/tools/web.js.map +1 -1
  45. package/dist/core/tools/write.js +41 -39
  46. package/dist/core/tools/write.js.map +1 -1
  47. package/dist/core/utils/gemini_speech.js +1 -1
  48. package/dist/core/utils/gemini_speech.js.map +1 -1
  49. package/dist/core/utils/subagent_utils.js +3 -3
  50. package/dist/core/utils/subagent_utils.js.map +1 -1
  51. package/dist/core/version.js +1 -1
  52. package/dist/execution/cloudflare_sandbox_execution_environment.js +1 -1
  53. package/dist/execution/cloudflare_sandbox_execution_environment.js.map +1 -1
  54. package/dist/host/client_tool_broker.js +29 -31
  55. package/dist/host/client_tool_broker.js.map +1 -1
  56. package/dist/host/local_session_host.js +10 -4
  57. package/dist/host/local_session_host.js.map +1 -1
  58. package/dist/main.js +6 -6
  59. package/dist/main.js.map +1 -1
  60. package/dist/tui/chat_controller/diff_review_service.js +1 -1
  61. package/dist/tui/chat_controller/diff_review_service.js.map +1 -1
  62. package/dist/tui/chat_controller/history_labels.js +13 -0
  63. package/dist/tui/chat_controller/history_labels.js.map +1 -1
  64. package/dist/tui/chat_view.js +24 -50
  65. package/dist/tui/chat_view.js.map +1 -1
  66. package/dist/tui/session_chat_app.js +3 -4
  67. package/dist/tui/session_chat_app.js.map +1 -1
  68. package/dist/tui/session_chat_controller.js +80 -111
  69. package/dist/tui/session_chat_controller.js.map +1 -1
  70. package/dist/tui/terminal_appearance.js +44 -25
  71. package/dist/tui/terminal_appearance.js.map +1 -1
  72. package/dist/tui/ui/autocomplete_item.js +2 -0
  73. package/dist/tui/ui/autocomplete_item.js.map +1 -0
  74. package/dist/tui/ui/chat_container.js +1 -14
  75. package/dist/tui/ui/chat_container.js.map +1 -1
  76. package/dist/tui/ui/chat_message_model.js +4 -12
  77. package/dist/tui/ui/chat_message_model.js.map +1 -1
  78. package/dist/tui/ui/components/autocomplete_list.js +138 -0
  79. package/dist/tui/ui/components/autocomplete_list.js.map +1 -0
  80. package/dist/tui/ui/components/editor.js +33 -40
  81. package/dist/tui/ui/components/editor.js.map +1 -1
  82. package/dist/tui/ui/components/one_line_segments.js +0 -67
  83. package/dist/tui/ui/components/one_line_segments.js.map +1 -1
  84. package/dist/tui/ui/custom_editor.js +15 -11
  85. package/dist/tui/ui/custom_editor.js.map +1 -1
  86. package/dist/tui/ui/diff_review_message.js +1 -11
  87. package/dist/tui/ui/diff_review_message.js.map +1 -1
  88. package/dist/tui/ui/footer.js +63 -13
  89. package/dist/tui/ui/footer.js.map +1 -1
  90. package/dist/tui/ui/rewind_picker.js +17 -47
  91. package/dist/tui/ui/rewind_picker.js.map +1 -1
  92. package/dist/tui/ui/slash_autocomplete.js +43 -64
  93. package/dist/tui/ui/slash_autocomplete.js.map +1 -1
  94. package/dist/tui/ui/subagent_editor_pane.js +3 -3
  95. package/dist/tui/ui/theme/index.js +1 -1
  96. package/dist/tui/ui/theme/index.js.map +1 -1
  97. package/dist/tui/ui/theme/palette.js +245 -8
  98. package/dist/tui/ui/theme/palette.js.map +1 -1
  99. package/dist/tui/ui/theme/theme.js +3 -30
  100. package/dist/tui/ui/theme/theme.js.map +1 -1
  101. package/dist/tui/ui/tool_card.js +137 -0
  102. package/dist/tui/ui/tool_card.js.map +1 -0
  103. package/dist/tui/ui/user_message.js +3 -6
  104. package/dist/tui/ui/user_message.js.map +1 -1
  105. package/package.json +2 -2
  106. package/dist/core/utils/tool_preview.js +0 -73
  107. package/dist/core/utils/tool_preview.js.map +0 -1
  108. package/dist/tui/chat_controller/command_hints.js +0 -35
  109. package/dist/tui/chat_controller/command_hints.js.map +0 -1
  110. package/dist/tui/ui/bash_execution.js +0 -129
  111. package/dist/tui/ui/bash_execution.js.map +0 -1
  112. package/dist/tui/ui/components/dynamic_border.js +0 -11
  113. package/dist/tui/ui/components/dynamic_border.js.map +0 -1
  114. package/dist/tui/ui/components/header_box.js +0 -107
  115. package/dist/tui/ui/components/header_box.js.map +0 -1
  116. package/dist/tui/ui/components/header_line.js +0 -60
  117. package/dist/tui/ui/components/header_line.js.map +0 -1
  118. package/dist/tui/ui/components/padded_container.js +0 -24
  119. package/dist/tui/ui/components/padded_container.js.map +0 -1
  120. package/dist/tui/ui/file_execution.js +0 -176
  121. package/dist/tui/ui/file_execution.js.map +0 -1
  122. package/dist/tui/ui/tool_output.js +0 -163
  123. package/dist/tui/ui/tool_output.js.map +0 -1
  124. package/dist/tui/ui/tool_ui_registry.js +0 -786
  125. package/dist/tui/ui/tool_ui_registry.js.map +0 -1
package/README.md CHANGED
@@ -72,7 +72,7 @@ to force a specific Codex account for this run, set `TAU_CODEX_ACCOUNT` to the a
72
72
  tau writes JSONL usage logs to `~/.config/tau/logs/usage-YYYY-MM-DD.jsonl` for every assistant response (main and sub-agent). summarize usage with:
73
73
 
74
74
  ```sh
75
- tau usage --since 2025-01-01 --persona gpt-5.5-coder
75
+ tau usage --since 2025-01-01 --persona gpt-5.6-sol-coder
76
76
  ```
77
77
 
78
78
  filters: `--since`, `--persona`, `--provider`, `--model`.
@@ -82,7 +82,7 @@ filters: `--since`, `--persona`, `--provider`, `--model`.
82
82
  tau can run without the TUI via NDJSON RPC over stdin/stdout:
83
83
 
84
84
  ```sh
85
- tau rpc --persona gpt-5.5-coder
85
+ tau rpc --persona gpt-5.6-sol-coder
86
86
  ```
87
87
 
88
88
  RPC mode reuses the same startup config and persona loading as interactive mode. stdin/stdout are reserved for protocol traffic in this mode (piped stdin is **not** treated as an initial user message). `--caffeinated` is a macOS-only TUI flag and is rejected outside TUI mode.
@@ -105,7 +105,7 @@ then attach the terminal UI from another machine:
105
105
  tau attach --auth-token "$TAU_WS_AUTH_TOKEN" ws://vps:8787
106
106
  ```
107
107
 
108
- Without `--session` or `--new`, attach lists hosted sessions and prompts for the session to open. Persisted session files use a versioned storage format and older unwrapped snapshots are migrated during recovery. Use `--session <id>` to attach to an existing persisted session directly:
108
+ Without `--session` or `--new`, attach lists hosted sessions and prompts for the session to open. Persisted session files are durable user data in a versioned storage format and remain openable by newer Tau versions. Recovery preserves the semantic session while allowing presentation-only or otherwise nonessential historical state to be normalized, regenerated, or shown in a simpler form. An upgrade must not require deleting an older session merely because an internal persisted shape changed. Use `--session <id>` to attach to an existing persisted session directly:
109
109
 
110
110
  ```sh
111
111
  tau attach --session 0195d6e4-4cf9-7f44-a2d8-f8f7f49ee9d3 --auth-token "$TAU_WS_AUTH_TOKEN" ws://vps:8787
@@ -136,7 +136,7 @@ For stdio attach, use `--session <id>` before `--`:
136
136
  tau attach --session 0195d6e4-4cf9-7f44-a2d8-f8f7f49ee9d3 -- ssh vps 'cd /path/to/repo && tau rpc'
137
137
  ```
138
138
 
139
- Session attach renders the authoritative session snapshot, streams recoverable `session.delta` updates and independently revisioned, non-persisted `session.pendingUserMessages` replacements, submits normal user input through `session.submit`, `session.queue`, and `session.steer`, supports steering/interruption, runs `!`/`!!` Bash commands in the session execution environment, records `/listen` from the local microphone, speaks `/speak` locally, reloads session content with `/reload`, switches session personas with `/persona:<id>` or `Ctrl+P`, inserts session prompt templates with `/prompt:<id>`, manages persistent autonomous goals with `/goal`, compacts the session with `/compact:*`, creates a new session with `/new`, and exits with `/exit` or `Ctrl+C` twice.
139
+ Session attach renders the authoritative session snapshot, streams recoverable `session.delta` updates and independently revisioned, non-persisted `session.pendingUserMessages` replacements, submits normal user input through `session.submit`, `session.queue`, and `session.steer`, supports steering/interruption, runs `!`/`!!` Bash commands in the session execution environment, records `/listen` from the local microphone, speaks `/speak` locally, reloads session content with `/reload`, switches session personas with `/persona:<id>` or `Ctrl+P`, inserts session prompt templates with `/prompt:<id>`, manages persistent autonomous goals with `/goal`, compacts the session with `/compact-all` or `/compact-keep-last`, creates a new session with `/new`, and exits with `/exit` or `Ctrl+C` twice.
140
140
 
141
141
  The TUI advertises client tools for diff review, input prefill, and the effective command-backed tools selected from global definitions. `prefill_input` fills only an empty editor and leaves existing draft text unchanged. Pass `--no-client-tools` to `tau` or `tau attach` to advertise no TUI client tools, for example when another TUI attached to the same session already owns them.
142
142
 
@@ -338,19 +338,19 @@ tau can load custom palette overrides from theme files. create a theme at:
338
338
 
339
339
  then set `"defaultTheme": "<id>"` in config. any palette token not defined in the file renders as plain text. theme values accept `#rgb`, `#rrggbb`, `rgb(r, g, b)`, or `hsl(h, s%, l%)`. hex without `#` is ignored.
340
340
 
341
- built-in themes are available by default with ids: `crimson`, `ember`, `gold`, `lime`, `grass`, `emerald`, `jade`, `teal`, `cyan`, `azure`, `cobalt`, `violet`, `purple`, `magenta`, `rose`. built-ins auto-adapt to dark/light terminal backgrounds via OSC 11 detection at startup (best effort, dark fallback). set `defaultTheme` to one of these ids, or disable them with `disableBuiltinThemes`.
341
+ built-in themes are available by default with ids: `crimson`, `ember`, `gold`, `lime`, `grass`, `emerald`, `jade`, `teal`, `cyan`, `azure`, `cobalt`, `violet`, `purple`, `magenta`, `rose`. built-ins derive their runtime palettes from terminal foreground/background colors detected through OSC 10/11 at startup (best effort, dark fallback). set `defaultTheme` to one of these ids, or disable them with `disableBuiltinThemes`.
342
342
 
343
343
  custom themes loaded from `.tau/themes` or `~/.config/tau/themes` are single-variant and use exactly the tokens you define.
344
344
 
345
345
  available palette tokens (theme keys):
346
346
 
347
347
  - core: `brandAccent`, `textMuted`, `textDim`, `linkText`, `thinkingText`, `codeInlineText`, `codeBlockText`
348
- - editor: `editorBorderNone`, `editorBorderMinimal`, `editorBorderLow`, `editorBorderMedium`, `editorBorderHigh`, `editorBorderXhigh`, `editorBorderMax`, `editorSubagentBorder`, `editorBorderRecording`
349
- - status: `statusWarn`, `statusError`, `modeBash`
348
+ - editor: `editorBorder`, `editorSubagentBorder`, `editorBorderBash`, `editorBorderRecording`, `editorPlaceholder`, `autocompleteSelectedSurface`, `autocompleteSelectedText`
349
+ - status: `statusWarn`, `statusError`
350
350
  - action: `actionRunning`, `actionSuccess`, `actionError`, `actionOutput`
351
351
  - diff: `diffAdd`, `diffRemove`
352
352
  - toasts: `toastSuccess`, `toastWarn`, `toastError`
353
- - user: `userSurface`, `userReviewSurface`, `userReviewText`, `userReviewTextMuted`, `userReviewTextDim`
353
+ - user: `userSurface`, `userText`, `userReviewSurface`, `userReviewText`, `userReviewTextMuted`, `userReviewTextDim`
354
354
 
355
355
  example theme file (`.tau/themes/solarized.json`):
356
356
 
@@ -386,14 +386,11 @@ tau uses `caffeinate -i` and only holds the sleep assertion during active assist
386
386
 
387
387
  tau comes with several built-in personas across different models:
388
388
 
389
- - **Claude Opus 4.6** (Anthropic): `opus-4.6-chat`, `opus-4.6-coder`
390
- - **Claude Opus 4.8** (Anthropic): `opus-4.8-chat`, `opus-4.8-coder`
391
- - **GPT-5.5** (OpenAI): `gpt-5.5-chat`, `gpt-5.5-coder`
392
- - **GPT-5.5 Fast (ChatGPT)** and **GPT-5.6 Fast (ChatGPT)** (OpenAI Codex, priority tier): `gpt-5.5-chatgpt-fast-chat`, `gpt-5.5-chatgpt-fast-coder`, `gpt-5.6-sol-chatgpt-fast-chat`, `gpt-5.6-sol-chatgpt-fast-coder`, `gpt-5.6-terra-chatgpt-fast-chat`, `gpt-5.6-terra-chatgpt-fast-coder`, `gpt-5.6-luna-chatgpt-fast-chat`, `gpt-5.6-luna-chatgpt-fast-coder`
393
- - **GPT-5.5 (ChatGPT)** (OpenAI Codex): `gpt-5.5-chatgpt-chat`, `gpt-5.5-chatgpt-coder`
389
+ - **Claude Opus 5** (Anthropic): `opus-5-chat`, `opus-5-coder`
394
390
  - **GPT-5.6 Sol**, **GPT-5.6 Terra**, and **GPT-5.6 Luna** (OpenAI): `gpt-5.6-sol-chat`, `gpt-5.6-sol-coder`, `gpt-5.6-terra-chat`, `gpt-5.6-terra-coder`, `gpt-5.6-luna-chat`, `gpt-5.6-luna-coder`
395
391
  - **GPT-5.6 Sol (ChatGPT)**, **GPT-5.6 Terra (ChatGPT)**, and **GPT-5.6 Luna (ChatGPT)** (OpenAI Codex): `gpt-5.6-sol-chatgpt-chat`, `gpt-5.6-sol-chatgpt-coder`, `gpt-5.6-terra-chatgpt-chat`, `gpt-5.6-terra-chatgpt-coder`, `gpt-5.6-luna-chatgpt-chat`, `gpt-5.6-luna-chatgpt-coder`
396
- - **Gemini 3.1 Pro** and **Gemini 3 Flash** (Google): `gemini-3.1-pro-chat`, `gemini-3-flash-chat`
392
+ - **GPT-5.6 Fast (ChatGPT)** (OpenAI Codex, priority tier): `gpt-5.6-sol-chatgpt-fast-chat`, `gpt-5.6-sol-chatgpt-fast-coder`, `gpt-5.6-terra-chatgpt-fast-chat`, `gpt-5.6-terra-chatgpt-fast-coder`, `gpt-5.6-luna-chatgpt-fast-chat`, `gpt-5.6-luna-chatgpt-fast-coder`
393
+ - **Gemini 3.6 Flash** (Google): `gemini-3.6-flash-chat`
397
394
 
398
395
  chat variants are for general-purpose assistance; coder variants are optimized for software engineering. built-in personas include the `default` sub-agent for background tasks unless disabled.
399
396
 
@@ -402,7 +399,7 @@ switch personas at startup with `--persona` or mid-session with `/persona:<id>`:
402
399
  persona id matching is exact/case-sensitive.
403
400
 
404
401
  ```sh
405
- tau --persona opus-4.8-coder
402
+ tau --persona opus-5-coder
406
403
  ```
407
404
 
408
405
  ## sub-agents
@@ -434,7 +431,7 @@ when you write custom skills, you can specify trigger sensitivity in the skill d
434
431
  some models support extended thinking, where they reason through problems before responding. cycle through reasoning levels with `shift+tab`, or set one at startup:
435
432
 
436
433
  ```sh
437
- tau --persona opus-4.8-chat:high
434
+ tau --persona opus-5-chat:high
438
435
  ```
439
436
 
440
437
  reasoning changes made while the assistant is working apply to the next independently submitted or queued turn. the active turn keeps the full execution spec it captured when it started, including tool-call subturns and steering continuations.
@@ -452,7 +449,7 @@ reference sub-agents with `@@agent:<name>` (for example, `@@agent:default`). exa
452
449
  you can also pipe content directly:
453
450
 
454
451
  ```sh
455
- cat src/tui/session_chat_app.ts | tau --persona opus-4.8-chat
452
+ cat src/tui/session_chat_app.ts | tau --persona opus-5-chat
456
453
  ```
457
454
 
458
455
  by default, tau injects your AGENTS.md into the system prompt. use `--no-agent-context-files` to disable this behavior. tau searches for AGENTS.md in the current directory and parent directories up to your home folder (or filesystem root if cwd is outside home). tau also includes a paths-only listing of `AGENTS.md` files in child directories under the current working directory, excluding any file already injected in full. this nested scan is breadth-first and stops after 8,192 directories or 16 levels. it skips standard VCS, dependency, build, virtual-environment, and cache directories at every level. when scanning directly from the execution home, it also skips direct tool-managed children such as `.cargo`, `.config`, `.local`, `.npm`, and platform data directories (`Library` on macOS and `snap` on Linux). project-local directories with the same tool-managed names remain visible. use `agentContextFiles` for important files that must be included independently of the nested scan.
@@ -477,15 +474,15 @@ tau supports slash commands for common actions:
477
474
  | `/new` | clear the session and start fresh |
478
475
  | `/exit` | exit the TUI |
479
476
  | `/rewind` | open a picker to rewind context from a selected user message |
480
- | `/copy:text` | copy the last assistant message |
481
- | `/copy:code` | copy just the code blocks |
477
+ | `/copy-text` | copy the last assistant message |
478
+ | `/copy-code` | copy just the code blocks |
482
479
  | `/reload` | reload personas, model overrides, prompts, skills, and AGENTS.md |
483
480
  | `/listen` | start microphone recording and transcribe into the editor (macOS only) |
484
481
  | `/speak` | speak the last assistant message aloud (macOS only) |
485
482
  | `/diff [git diff args...]` | open the local diff review tool for the current session; git snapshot and review-agent work run on the session host |
486
483
  | `/goal [objective\|resume\|clear]` | show, start, resume, or clear a persistent autonomous goal |
487
- | `/compact:summary-only` | compress history into one synthetic user summary message |
488
- | `/compact:summary-and-last` | compress history and include the last assistant message verbatim when present |
484
+ | `/compact-all` | compress history into one synthetic user summary message |
485
+ | `/compact-keep-last` | compress history and include the last assistant message verbatim when present |
489
486
  | `/persona:<id>` | switch to a different persona |
490
487
  | `/prompt:<id>` | insert a saved prompt template |
491
488
  | `/theme:<id>` | switch to a loaded theme |
@@ -496,7 +493,7 @@ tau supports slash commands for common actions:
496
493
 
497
494
  tau automatically compacts long sessions when the latest successful provider-reported usage from the active model plus Tau's estimate of model-visible content added since that response approaches the model context limit. Tau checks before every model subturn, so one user turn can compact more than once. automatic compaction summarizes older context, retrying the summary call once on failure, asks the compaction model to select original user messages to append verbatim inside the summary by history id, retains a recent tail while middle-truncating individual textual tool and recovery results above roughly 8,192 estimated tokens, and inserts a hidden continuation note so the assistant continues without asking you to repeat context. before replacing history, Tau best-effort archives the pre-compaction conversation as ordered `.txt` and `.json` pairs in an agent-specific execution-environment temp directory. assistant thinking is omitted. the text file middle-truncates tool results for easier lookup, while JSON retains untruncated archived content. every archivable summarized record is labeled with its history entry id, so the compaction model may cite an id for bulky exact details and the continuing assistant can resolve it from the archive. the continuation note includes the temporary paths when archiving succeeds.
498
495
 
499
- the compact commands are manual and useful when you want to force context replacement. they replace prior context with a single synthetic user summary message, including compaction-model-selected original user messages verbatim inside that summary, and do not retain a recent tail. compaction prompts middle-truncate each textual tool result to roughly 2,048 estimated tokens without changing live history. `/compact:summary-and-last` also includes the last assistant message verbatim when present.
496
+ the compact commands are manual and useful when you want to force context replacement. they replace prior context with a single synthetic user summary message, including compaction-model-selected original user messages verbatim inside that summary, and do not retain a recent tail. compaction prompts middle-truncate each textual tool result to roughly 2,048 estimated tokens without changing live history. `/compact-keep-last` also includes the last assistant message verbatim when present.
500
497
 
501
498
  `/listen` (or `ctrl+y`) starts microphone recording on macOS, including while the assistant is working. while recording, editor typing is disabled, and `ctrl+y` stops recording and starts transcription at the cursor using the configured speech-to-text provider. `esc` stops recording first without interrupting the assistant; press it again to interrupt active work. recording also auto-stops after 5 minutes. on Linux, `/listen` is currently unavailable and tau shows a warning.
502
499
 
@@ -513,7 +510,6 @@ the compact commands are manual and useful when you want to force context replac
513
510
  | `shift+tab` | cycle reasoning effort |
514
511
  | `ctrl+p` | cycle personality |
515
512
  | `ctrl+t` | toggle thinking visibility |
516
- | `ctrl+o` | toggle compact tool display |
517
513
  | `ctrl+s` | stash input to clipboard |
518
514
  | `ctrl+y` | toggle voice recording (`/listen`) |
519
515
  | `ctrl+g` | interrupt selected sub-agent |
@@ -542,7 +538,7 @@ model definitions can be extended and overridden through `~/.config/tau/models.j
542
538
  "exa": "...",
543
539
  "mistral": "..."
544
540
  },
545
- "defaultPersona": "gpt-5.5-chat",
541
+ "defaultPersona": "gpt-5.6-sol-chat",
546
542
  "disableBuiltinPersonas": false,
547
543
  "disableBuiltinThemes": false,
548
544
  "defaultTheme": "solarized",
@@ -568,7 +564,7 @@ model definitions can be extended and overridden through `~/.config/tau/models.j
568
564
  ],
569
565
  "subagents": {
570
566
  "defaultLaunchModels": [
571
- "openai/gpt-5.5:high",
567
+ "openai/gpt-5.6-sol:high",
572
568
  "anthropic/claude-haiku-4-5:low"
573
569
  ]
574
570
  },
@@ -606,7 +602,7 @@ model definitions can be extended and overridden through `~/.config/tau/models.j
606
602
  "apiKeyEnv": "TAU_HISTORY_API_KEY"
607
603
  },
608
604
  "modelSystemNotices": {
609
- "openai-codex/gpt-5.5": "avoid apply_patch heredocs, use tau tools directly"
605
+ "openai-codex/gpt-5.6-sol": "avoid apply_patch heredocs, use tau tools directly"
610
606
  }
611
607
  }
612
608
  ```
@@ -635,7 +631,7 @@ supported built-in diff tool code themes are: `andromeeda`, `aurora-x`, `ayu-dar
635
631
 
636
632
  the `subagents.defaultLaunchModels` field configures allowed `spawn_agent` launch overrides for the built-in `default` sub-agent. values must use `<provider>/<model>:<effort>`.
637
633
 
638
- `autoCompact` controls automatic session compaction and merges field-by-field across config levels. it is enabled by default with `reserveTokens: 16384` and `keepRecentTokens: 20000`. before every model subturn, Tau compares the latest successful provider-reported assistant usage from the active model plus an estimated token count for model-visible messages appended since that response against the model context window minus the reserve. when the threshold is crossed, Tau summarizes older context with at most two summary attempts, asks the compaction model to select original user messages to append verbatim inside the summary by history id, retains recent messages while middle-truncating individual textual tool and recovery results above roughly 8,192 estimated tokens, and best-effort archives the untruncated pre-compaction conversation, excluding assistant thinking, in the execution environment's OS temp directory. archivable summarized records carry history entry ids that the compaction model may cite when bulky exact details are better retrieved from the archive than copied into the summary. manual `/compact:*` commands remain summary-replacement commands and do not create these archives.
634
+ `autoCompact` controls automatic session compaction and merges field-by-field across config levels. it is enabled by default with `reserveTokens: 16384` and `keepRecentTokens: 20000`. before every model subturn, Tau compares the latest successful provider-reported assistant usage from the active model plus an estimated token count for model-visible messages appended since that response against the model context window minus the reserve. when the threshold is crossed, Tau summarizes older context with at most two summary attempts, asks the compaction model to select original user messages to append verbatim inside the summary by history id, retains recent messages while middle-truncating individual textual tool and recovery results above roughly 8,192 estimated tokens, and best-effort archives the untruncated pre-compaction conversation, excluding assistant thinking, in the execution environment's OS temp directory. archivable summarized records carry history entry ids that the compaction model may cite when bulky exact details are better retrieved from the archive than copied into the summary. manual `/compact-all` and `/compact-keep-last` commands remain summary-replacement commands and do not create these archives.
639
635
 
640
636
  the `modelSystemNotices` field maps `<provider>/<model>` to a notice string. provider ids must be known and model ids are exact/case-sensitive against the merged configured model catalog (built-in + layered `models.json`). when Tau commits a main-session or sub-agent input, it prepends the notice for the active model as an ordinary `<system>...</system>` block. the persisted block is subsequently treated like any other system prefix, so compaction sees notices already present in the source history. tau does not prepend the current notice to the compaction prompt or to synthetic compaction messages, and the generated summary is not required to reproduce it. ephemeral agents never receive model system notices, and maintenance model calls do not resolve or add fresh notices.
641
637
 
@@ -722,7 +718,7 @@ create your own personas by adding markdown files to `~/.config/tau/personas/` (
722
718
  ---
723
719
  id: my-assistant
724
720
  provider: anthropic
725
- model: claude-opus-4-8
721
+ model: claude-opus-5
726
722
  ---
727
723
 
728
724
  you are a helpful assistant specialized in my workflow. focus on clarity and efficiency.
@@ -732,7 +728,7 @@ the frontmatter defines the persona. required fields:
732
728
 
733
729
  - `id`: unique id used by `--persona` and `/persona:<id>`
734
730
  - `provider`: model provider id (for example `openai`, `anthropic`, `google`)
735
- - `model`: model id for the provider (for example `gpt-5.4`, `claude-opus-4-8`)
731
+ - `model`: model id for the provider (for example `gpt-5.4`, `claude-opus-5`)
736
732
 
737
733
  custom personas/subagents can reference model ids that are not bundled yet, as long as the provider is known. built-in personas use the merged model catalog, so `models.json` can override bundled model definitions. see [docs/models.md](docs/models.md).
738
734
 
@@ -742,7 +738,7 @@ optional frontmatter fields:
742
738
 
743
739
  - `label`: display name shown in the ui (defaults to the base persona label if `extends` is used)
744
740
  - `description`: human-readable description used in lists/autocomplete
745
- - `extends`: inherit optional fields from a built-in persona id (for example `gpt-5.5-coder`). `provider` and `model` are still required. if the markdown body is empty, the base persona's system prompt is used.
741
+ - `extends`: inherit optional fields from a built-in persona id (for example `gpt-5.6-sol-coder`). `provider` and `model` are still required. if the markdown body is empty, the base persona's system prompt is used.
746
742
  - `reasoning`: one of `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`
747
743
  - `serviceTier`: `priority` or `flex` for providers that support service tiers (currently `openai` and `openai-codex`)
748
744
  - `allowedReasoningLevels`: list of reasoning levels shown in the ui
@@ -761,7 +757,7 @@ optional frontmatter fields:
761
757
  reasoning: medium
762
758
  tools: [web, bash]
763
759
  launchModels:
764
- - openai/gpt-5.5:high
760
+ - openai/gpt-5.6-sol:high
765
761
  - anthropic/claude-haiku-4-5:medium
766
762
  ```
767
763
  - `tools`: list of tool names to enable for this persona. allowed: `bash`, `write`, `edit`, `view_image`, `web`, `nook`, `history`, `spawn_agent`, `send_input_to_agent`, `wait_for_agents`, `list_agents`, `interrupt_agent`. if omitted, defaults to `bash`, `write`, `edit`, `view_image`, `web`, `nook`, `history` (and subagent tools when subagents are enabled). `nook` is available only when effective Nook configuration is also present.
@@ -775,7 +771,7 @@ to clone a built-in persona but swap the provider/model, use `extends`:
775
771
  ```markdown
776
772
  ---
777
773
  id: my-haiku-coder
778
- extends: gpt-5.5-coder
774
+ extends: gpt-5.6-sol-coder
779
775
  provider: anthropic
780
776
  model: claude-haiku-4-5
781
777
  ---
@@ -820,7 +816,7 @@ tau connects your terminal to large language models, giving them tools to intera
820
816
 
821
817
  the model sees your messages, any file contents you've shared, and the results of tool calls. it doesn't have ambient access to your filesystem; it only sees what you show it or what it explicitly requests through tools.
822
818
 
823
- tool calls are displayed as soon as the model identifies the tool, before its arguments finish streaming. every built-in and client-provided tool uses the same `preparing` → `queued` → `running` → terminal lifecycle; tools with clear action wording present those states naturally, such as `writing` and `wrote`, while other tools use generic labels. tool-specific output enriches the card without replacing that lifecycle. use `ctrl+o` to toggle between compact and detailed views.
819
+ tool calls are displayed as soon as the model identifies the tool, before its arguments finish streaming. every built-in and client-provided tool uses the same `preparing` → `queued` → `running` → terminal lifecycle and one compact card grammar; tools with clear action wording present those states naturally, such as `writing` and `wrote`, while code-mode tools pair generic lifecycle actions with an explicit `web`, `history`, or `nook` operation label. multiline subjects show at most eight lines (four from the start, an omission marker, and three from the end); bash, code-mode, and file-path subjects wrap at character boundaries while other subjects wrap at word boundaries. terminal output, write content, and edit diff details also wrap at character boundaries; natural-language details wrap at word boundaries. details default to at most seven lines (three from each end around an omission marker). write previews instead show up to sixteen detail lines using fifteen lines from the start plus an omission marker, spawn-agent and follow-up prompts plus each completed wait response show up to seventeen lines using eight lines from each end around an omission marker, list-agent previews preserve the complete formatted listing, interrupt-agent details preserve all model-facing result lines, create-goal and non-completing update-goal details preserve only the objective lines, and edit previews preserve the complete line diff. subjects and details allow at most 512 characters per line. metadata enriches the card without replacing that lifecycle. saved sessions with an older tool-presentation format remain openable: historical tools use a generic card built from their name, status, and up to seven stored textual result lines, without displaying stored tool arguments.
824
820
 
825
821
  ## tool output truncation
826
822
 
package/dist/core/cli.js CHANGED
@@ -156,8 +156,8 @@ export function printHelp(personas) {
156
156
  " diff-tool built-in browser diff review demo tool.",
157
157
  "",
158
158
  "examples:",
159
- " tau --persona gpt-5.4-chat:high",
160
- " tau -p opus-4.8-coder",
159
+ " tau --persona gpt-5.6-sol-chat:high",
160
+ " tau -p opus-5-coder",
161
161
  " tau attach --new --cwd /repo ws://127.0.0.1:8787",
162
162
  " tau attach ws://127.0.0.1:8787",
163
163
  "",
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/core/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/core/cli.ts"],"names":[],"mappings":"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"}
@@ -76,7 +76,6 @@ export class CommandRegistry {
76
76
  ["shift+tab", "cycle reasoning effort"],
77
77
  ["ctrl+p", "cycle personality"],
78
78
  ["ctrl+t", "toggle thoughts visibility"],
79
- ["ctrl+o", "toggle compact tool UI"],
80
79
  ["ctrl+s", "stash input to clipboard"],
81
80
  ["ctrl+y", "toggle voice recording"],
82
81
  ["ctrl+enter", "steer running assistant with editor input"],
@@ -104,7 +103,7 @@ export function createCommandRegistry() {
104
103
  id: "help",
105
104
  usage: "/help",
106
105
  description: "show this help",
107
- autocompleteDescription: "show help",
106
+ autocompleteDescription: "show commands and keyboard shortcuts",
108
107
  argument: "none",
109
108
  parse: (raw) => {
110
109
  const { command, extra } = splitCommandInput(raw);
@@ -118,7 +117,7 @@ export function createCommandRegistry() {
118
117
  id: "exit",
119
118
  usage: "/exit",
120
119
  description: "exit tau",
121
- autocompleteDescription: "exit tau",
120
+ autocompleteDescription: "close the TUI",
122
121
  argument: "none",
123
122
  allowDuringStreaming: true,
124
123
  parse: (raw) => {
@@ -133,7 +132,7 @@ export function createCommandRegistry() {
133
132
  id: "new",
134
133
  usage: "/new",
135
134
  description: "new session",
136
- autocompleteDescription: "new session",
135
+ autocompleteDescription: "start a new session",
137
136
  argument: "none",
138
137
  parse: (raw) => {
139
138
  const { command, extra } = splitCommandInput(raw);
@@ -147,7 +146,7 @@ export function createCommandRegistry() {
147
146
  id: "rewind",
148
147
  usage: "/rewind",
149
148
  description: "rewind context to an earlier user message",
150
- autocompleteDescription: "rewind context to a selected user message",
149
+ autocompleteDescription: "choose an earlier user message",
151
150
  argument: "none",
152
151
  parse: (raw) => {
153
152
  const { command, extra } = splitCommandInput(raw);
@@ -161,7 +160,7 @@ export function createCommandRegistry() {
161
160
  id: "diff",
162
161
  usage: "/diff [git diff args...]",
163
162
  description: "open the local diff review tool for the session diff",
164
- autocompleteDescription: "open diff review for git diff args",
163
+ autocompleteDescription: "review a git diff",
165
164
  argument: "none",
166
165
  parse: (raw) => {
167
166
  const { command, extra } = splitCommandInput(raw);
@@ -195,13 +194,13 @@ export function createCommandRegistry() {
195
194
  });
196
195
  registry.register({
197
196
  id: "compactSummaryOnly",
198
- usage: "/compact:summary-only",
197
+ usage: "/compact-all",
199
198
  description: "summarize and start new session",
200
- autocompleteDescription: "compact history to a summary",
199
+ autocompleteDescription: "replace all history with a summary",
201
200
  argument: "none",
202
201
  parse: (raw) => {
203
202
  const { command, extra } = splitCommandInput(raw);
204
- if (command !== "/compact:summary-only")
203
+ if (command !== "/compact-all")
205
204
  return null;
206
205
  return { type: "compactSummaryOnly", extra };
207
206
  },
@@ -209,13 +208,13 @@ export function createCommandRegistry() {
209
208
  });
210
209
  registry.register({
211
210
  id: "compactSummaryAndLast",
212
- usage: "/compact:summary-and-last",
211
+ usage: "/compact-keep-last",
213
212
  description: "summarize and include previous last assistant message",
214
- autocompleteDescription: "compact history, keep last assistant message",
213
+ autocompleteDescription: "summarize history and retain the last response",
215
214
  argument: "none",
216
215
  parse: (raw) => {
217
216
  const { command, extra } = splitCommandInput(raw);
218
- if (command !== "/compact:summary-and-last")
217
+ if (command !== "/compact-keep-last")
219
218
  return null;
220
219
  return { type: "compactSummaryAndLast", extra };
221
220
  },
@@ -239,7 +238,7 @@ export function createCommandRegistry() {
239
238
  id: "listen",
240
239
  usage: "/listen",
241
240
  description: "start voice recording and transcription",
242
- autocompleteDescription: "start voice recording",
241
+ autocompleteDescription: "record and transcribe voice input",
243
242
  argument: "none",
244
243
  allowDuringStreaming: true,
245
244
  parse: (raw) => {
@@ -254,7 +253,7 @@ export function createCommandRegistry() {
254
253
  id: "speak",
255
254
  usage: "/speak",
256
255
  description: "speak the last assistant message aloud",
257
- autocompleteDescription: "speak the last assistant message",
256
+ autocompleteDescription: "read the last response aloud",
258
257
  argument: "none",
259
258
  parse: (raw) => {
260
259
  const { command, extra } = splitCommandInput(raw);
@@ -266,13 +265,13 @@ export function createCommandRegistry() {
266
265
  });
267
266
  registry.register({
268
267
  id: "copyText",
269
- usage: "/copy:text",
268
+ usage: "/copy-text",
270
269
  description: "copy last assistant message",
271
- autocompleteDescription: "copy last assistant message",
270
+ autocompleteDescription: "copy the last response as plain text",
272
271
  argument: "none",
273
272
  parse: (raw) => {
274
273
  const { command, extra } = splitCommandInput(raw);
275
- if (command !== "/copy:text")
274
+ if (command !== "/copy-text")
276
275
  return null;
277
276
  return { type: "copyText", extra };
278
277
  },
@@ -280,13 +279,13 @@ export function createCommandRegistry() {
280
279
  });
281
280
  registry.register({
282
281
  id: "copyCode",
283
- usage: "/copy:code",
282
+ usage: "/copy-code",
284
283
  description: "copy code blocks from last assistant message",
285
- autocompleteDescription: "copy code blocks from last assistant message",
284
+ autocompleteDescription: "copy code blocks from the last response",
286
285
  argument: "none",
287
286
  parse: (raw) => {
288
287
  const { command, extra } = splitCommandInput(raw);
289
- if (command !== "/copy:code")
288
+ if (command !== "/copy-code")
290
289
  return null;
291
290
  return { type: "copyCode", extra };
292
291
  },
@@ -296,6 +295,7 @@ export function createCommandRegistry() {
296
295
  id: "persona",
297
296
  usage: "/persona:<id>",
298
297
  description: "switch persona",
298
+ autocompleteDescription: "change model, instructions, and tools",
299
299
  argument: "persona",
300
300
  parse: (raw) => {
301
301
  const { command, extra } = splitCommandInput(raw);
@@ -311,6 +311,7 @@ export function createCommandRegistry() {
311
311
  id: "prompt",
312
312
  usage: "/prompt:<id>",
313
313
  description: "insert prompt template",
314
+ autocompleteDescription: "insert a saved prompt into the editor",
314
315
  argument: "prompt",
315
316
  allowDuringStreaming: true,
316
317
  parse: (raw) => {
@@ -327,6 +328,7 @@ export function createCommandRegistry() {
327
328
  id: "theme",
328
329
  usage: "/theme:<id>",
329
330
  description: "switch theme",
331
+ autocompleteDescription: "change TUI colors",
330
332
  argument: "theme",
331
333
  parse: (raw) => {
332
334
  const { command, extra } = splitCommandInput(raw);
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/commands/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/commands/registry.ts"],"names":[],"mappings":"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"}