@qwen-code/qwen-code 0.14.2-nightly.20260410.4d2d4432d → 0.14.3-preview.0

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.
@@ -106,6 +106,7 @@ Settings are organized into categories. All settings should be placed within the
106
106
  | `ui.showMemoryUsage` | boolean | Display memory usage information in the UI. | `false` |
107
107
  | `ui.showLineNumbers` | boolean | Show line numbers in code blocks in the CLI output. | `true` |
108
108
  | `ui.showCitations` | boolean | Show citations for generated text in the chat. | `true` |
109
+ | `ui.compactMode` | boolean | Hide tool output and thinking for a cleaner view. Toggle with `Ctrl+O` during a session. When enabled, a `compact` indicator appears in the footer. The setting persists across sessions. | `false` |
109
110
  | `enableWelcomeBack` | boolean | Show welcome back dialog when returning to a project with conversation history. When enabled, Qwen Code will automatically detect if you're returning to a project with a previously generated project summary (`.qwen/PROJECT_SUMMARY.md`) and show a dialog allowing you to continue your previous conversation or start fresh. This feature integrates with the `/summary` command and quit confirmation dialog. | `true` |
110
111
  | `ui.accessibility.enableLoadingPhrases` | boolean | Enable loading phrases (disable for accessibility). | `true` |
111
112
  | `ui.accessibility.screenReader` | boolean | Enables screen reader mode, which adjusts the TUI for better compatibility with screen readers. | `false` |
@@ -203,9 +204,9 @@ The `extra_body` field allows you to add custom parameters to the request body s
203
204
 
204
205
  #### fastModel
205
206
 
206
- | Setting | Type | Description | Default |
207
- | ----------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
208
- | `fastModel` | string | Model for background tasks ([suggestion generation](../features/followup-suggestions), speculation). Leave empty to use the main model. A smaller/faster model (e.g., `qwen3.5-flash`) reduces latency and cost. Can also be set via `/model --fast`. | `""` |
207
+ | Setting | Type | Description | Default |
208
+ | ----------- | ------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
209
+ | `fastModel` | string | Model used for generating [prompt suggestions](../features/followup-suggestions) and speculative execution. Leave empty to use the main model. A smaller/faster model (e.g., `qwen3-coder-flash`) reduces latency and cost. Can also be set via `/model --fast`. | `""` |
209
210
 
210
211
  #### context
211
212
 
@@ -34,6 +34,7 @@ Commands for adjusting interface appearance and work environment.
34
34
  | ------------ | ---------------------------------------- | ----------------------------- |
35
35
  | `/clear` | Clear terminal screen content | `/clear` (shortcut: `Ctrl+L`) |
36
36
  | `/context` | Show context window usage breakdown | `/context` |
37
+ | → `detail` | Show per-item context usage breakdown | `/context detail` |
37
38
  | `/theme` | Change Qwen Code visual theme | `/theme` |
38
39
  | `/vim` | Turn input area Vim editing mode on/off | `/vim` |
39
40
  | `/directory` | Manage multi-directory support workspace | `/dir add ./src,./tests` |
@@ -56,21 +57,21 @@ Commands specifically for controlling interface and output language.
56
57
 
57
58
  Commands for managing AI tools and models.
58
59
 
59
- | Command | Description | Usage Examples |
60
- | ---------------- | ------------------------------------------------- | --------------------------------------------- |
61
- | `/mcp` | List configured MCP servers and tools | `/mcp`, `/mcp desc` |
62
- | `/tools` | Display currently available tool list | `/tools`, `/tools desc` |
63
- | `/skills` | List and run available skills | `/skills`, `/skills <name>` |
64
- | `/plan` | Switch to plan mode or exit plan mode | `/plan`, `/plan <task>`, `/plan exit` |
65
- | `/approval-mode` | Change approval mode for tool usage | `/approval-mode <mode (auto-edit)> --project` |
66
- | →`plan` | Analysis only, no execution | Secure review |
67
- | →`default` | Require approval for edits | Daily use |
68
- | →`auto-edit` | Automatically approve edits | Trusted environment |
69
- | →`yolo` | Automatically approve all | Quick prototyping |
70
- | `/model` | Switch model used in current session | `/model` |
71
- | `/model --fast` | Set or select the fast model for background tasks | `/model --fast qwen3.5-flash` |
72
- | `/extensions` | List all active extensions in current session | `/extensions` |
73
- | `/memory` | Manage AI's instruction context | `/memory add Important Info` |
60
+ | Command | Description | Usage Examples |
61
+ | ---------------- | --------------------------------------------- | --------------------------------------------- |
62
+ | `/mcp` | List configured MCP servers and tools | `/mcp`, `/mcp desc` |
63
+ | `/tools` | Display currently available tool list | `/tools`, `/tools desc` |
64
+ | `/skills` | List and run available skills | `/skills`, `/skills <name>` |
65
+ | `/plan` | Switch to plan mode or exit plan mode | `/plan`, `/plan <task>`, `/plan exit` |
66
+ | `/approval-mode` | Change approval mode for tool usage | `/approval-mode <mode (auto-edit)> --project` |
67
+ | →`plan` | Analysis only, no execution | Secure review |
68
+ | →`default` | Require approval for edits | Daily use |
69
+ | →`auto-edit` | Automatically approve edits | Trusted environment |
70
+ | →`yolo` | Automatically approve all | Quick prototyping |
71
+ | `/model` | Switch model used in current session | `/model` |
72
+ | `/model --fast` | Set a lighter model for prompt suggestions | `/model --fast qwen3-coder-flash` |
73
+ | `/extensions` | List all active extensions in current session | `/extensions` |
74
+ | `/memory` | Manage AI's instruction context | `/memory add Important Info` |
74
75
 
75
76
  ### 1.5 Built-in Skills
76
77
 
@@ -49,7 +49,7 @@ By default, suggestions use the same model as your main conversation. For faster
49
49
  ### Via command
50
50
 
51
51
  ```
52
- /model --fast qwen3.5-flash
52
+ /model --fast qwen3-coder-flash
53
53
  ```
54
54
 
55
55
  Or use `/model --fast` (without a model name) to open a selection dialog.
@@ -58,11 +58,11 @@ Or use `/model --fast` (without a model name) to open a selection dialog.
58
58
 
59
59
  ```json
60
60
  {
61
- "fastModel": "qwen3.5-flash"
61
+ "fastModel": "qwen3-coder-flash"
62
62
  }
63
63
  ```
64
64
 
65
- The fast model is used for background tasks like suggestion generation. When not configured, the main conversation model is used as fallback.
65
+ The fast model is used for prompt suggestions and speculative execution. When not configured, the main conversation model is used as fallback.
66
66
 
67
67
  Thinking/reasoning mode is automatically disabled for all background tasks (suggestion generation and speculation), regardless of your main model's thinking configuration. This avoids wasting tokens on internal reasoning that isn't needed for these tasks.
68
68
 
@@ -75,13 +75,13 @@ These settings can be configured in `settings.json`:
75
75
  | `ui.enableFollowupSuggestions` | boolean | `true` | Enable or disable followup suggestions |
76
76
  | `ui.enableCacheSharing` | boolean | `true` | Use cache-aware forked queries to reduce cost (experimental) |
77
77
  | `ui.enableSpeculation` | boolean | `false` | Speculatively execute suggestions before submission (experimental) |
78
- | `fastModel` | string | `""` | Model for background tasks (suggestion generation, speculation) |
78
+ | `fastModel` | string | `""` | Model for prompt suggestions and speculative execution |
79
79
 
80
80
  ### Example
81
81
 
82
82
  ```json
83
83
  {
84
- "fastModel": "qwen3.5-flash",
84
+ "fastModel": "qwen3-coder-flash",
85
85
  "ui": {
86
86
  "enableFollowupSuggestions": true,
87
87
  "enableCacheSharing": true
@@ -10,7 +10,7 @@ This document lists the available keyboard shortcuts in Qwen Code.
10
10
  | `Ctrl+C` | Cancel the ongoing request and clear the input. Press twice to exit the application. |
11
11
  | `Ctrl+D` | Exit the application if the input is empty. Press twice to confirm. |
12
12
  | `Ctrl+L` | Clear the screen. |
13
- | `Ctrl+O` | Toggle the display of the debug console. |
13
+ | `Ctrl+O` | Toggle compact mode (hide/show tool output and thinking). |
14
14
  | `Ctrl+S` | Allows long responses to print fully, disabling truncation. Use your terminal's scrollback to view the entire output. |
15
15
  | `Ctrl+T` | Toggle the display of tool descriptions. |
16
16
  | `Shift+Tab` (`Tab` on Windows) | Cycle approval modes (`plan` → `default` → `auto-edit` → `yolo`) |
package/cli.js CHANGED
@@ -171867,7 +171867,7 @@ __export(geminiContentGenerator_exports, {
171867
171867
  createGeminiContentGenerator: () => createGeminiContentGenerator
171868
171868
  });
171869
171869
  function createGeminiContentGenerator(config2, gcConfig) {
171870
- const version2 = "0.14.2-nightly.20260410.4d2d4432d";
171870
+ const version2 = "0.14.3-preview.0";
171871
171871
  const userAgent2 = config2.userAgent || `QwenCode/${version2} (${process.platform}; ${process.arch})`;
171872
171872
  const baseHeaders = {
171873
171873
  "User-Agent": userAgent2
@@ -178404,10 +178404,10 @@ function injectPermissionRulesIfMissing(confirmationDetails, pmCtx) {
178404
178404
  }
178405
178405
  }
178406
178406
  async function persistPermissionOutcome(outcome, confirmationDetails, persistFn, pm, payload) {
178407
- if (outcome !== ToolConfirmationOutcome.ProceedAlwaysProject && outcome !== ToolConfirmationOutcome.ProceedAlwaysUser) {
178407
+ if (outcome !== ToolConfirmationOutcome.ProceedAlways && outcome !== ToolConfirmationOutcome.ProceedAlwaysProject && outcome !== ToolConfirmationOutcome.ProceedAlwaysUser) {
178408
178408
  return;
178409
178409
  }
178410
- const scope = outcome === ToolConfirmationOutcome.ProceedAlwaysProject ? "project" : "user";
178410
+ const scope = outcome === ToolConfirmationOutcome.ProceedAlwaysUser ? "user" : "project";
178411
178411
  const detailsRules = confirmationDetails?.["permissionRules"];
178412
178412
  const payloadRules = payload?.permissionRules;
178413
178413
  const rules = payloadRules ?? detailsRules ?? [];
@@ -322648,8 +322648,8 @@ var init_de2 = __esm({
322648
322648
  // ============================================================================
322649
322649
  // Commands - Model
322650
322650
  // ============================================================================
322651
- "Switch the model for this session": "Modell f\xFCr diese Sitzung wechseln",
322652
- "Set fast model for background tasks": "Schnelles Modell f\xFCr Hintergrundaufgaben festlegen",
322651
+ "Switch the model for this session (--fast for suggestion model)": "Modell f\xFCr diese Sitzung wechseln (--fast f\xFCr Vorschlagsmodell)",
322652
+ "Set a lighter model for prompt suggestions and speculative execution": "Leichteres Modell f\xFCr Eingabevorschl\xE4ge und spekulative Ausf\xFChrung festlegen",
322653
322653
  "Content generator configuration not available.": "Inhaltsgenerator-Konfiguration nicht verf\xFCgbar.",
322654
322654
  "Authentication type not available.": "Authentifizierungstyp nicht verf\xFCgbar.",
322655
322655
  "No models available for the current authentication type ({{authType}}).": "Keine Modelle f\xFCr den aktuellen Authentifizierungstyp ({{authType}}) verf\xFCgbar.",
@@ -323389,8 +323389,8 @@ var init_de2 = __esm({
323389
323389
  "Select an option:": "Option ausw\xE4hlen:",
323390
323390
  "Raw mode not available. Please run in an interactive terminal.": "Raw-Modus nicht verf\xFCgbar. Bitte in einem interaktiven Terminal ausf\xFChren.",
323391
323391
  "(Use \u2191 \u2193 arrows to navigate, Enter to select, Ctrl+C to exit)\n": "(\u2191 \u2193 Pfeiltasten zum Navigieren, Enter zum Ausw\xE4hlen, Strg+C zum Beenden)\n",
323392
- verbose: "ausf\xFChrlich",
323393
- "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).": "Vollst\xE4ndige Tool-Ausgabe und Denkprozess im ausf\xFChrlichen Modus anzeigen (mit Strg+O umschalten).",
323392
+ compact: "kompakt",
323393
+ "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).": "Tool-Ausgabe und Denkprozess ausblenden f\xFCr eine \xFCbersichtlichere Ansicht (mit Strg+O umschalten).",
323394
323394
  "Press Ctrl+O to show full tool output": "Strg+O f\xFCr vollst\xE4ndige Tool-Ausgabe dr\xFCcken",
323395
323395
  "Switch to plan mode or exit plan mode": "Switch to plan mode or exit plan mode",
323396
323396
  "Exited plan mode. Previous approval mode restored.": "Exited plan mode. Previous approval mode restored.",
@@ -324268,8 +324268,8 @@ var init_en3 = __esm({
324268
324268
  // ============================================================================
324269
324269
  // Commands - Model
324270
324270
  // ============================================================================
324271
- "Switch the model for this session": "Switch the model for this session",
324272
- "Set fast model for background tasks": "Set fast model for background tasks",
324271
+ "Switch the model for this session (--fast for suggestion model)": "Switch the model for this session (--fast for suggestion model)",
324272
+ "Set a lighter model for prompt suggestions and speculative execution": "Set a lighter model for prompt suggestions and speculative execution",
324273
324273
  "Content generator configuration not available.": "Content generator configuration not available.",
324274
324274
  "Authentication type not available.": "Authentication type not available.",
324275
324275
  "No models available for the current authentication type ({{authType}}).": "No models available for the current authentication type ({{authType}}).",
@@ -324927,8 +324927,8 @@ var init_en3 = __esm({
324927
324927
  "Select an option:": "Select an option:",
324928
324928
  "Raw mode not available. Please run in an interactive terminal.": "Raw mode not available. Please run in an interactive terminal.",
324929
324929
  "(Use \u2191 \u2193 arrows to navigate, Enter to select, Ctrl+C to exit)\n": "(Use \u2191 \u2193 arrows to navigate, Enter to select, Ctrl+C to exit)\n",
324930
- verbose: "verbose",
324931
- "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).": "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).",
324930
+ compact: "compact",
324931
+ "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).": "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).",
324932
324932
  "Press Ctrl+O to show full tool output": "Press Ctrl+O to show full tool output",
324933
324933
  "Switch to plan mode or exit plan mode": "Switch to plan mode or exit plan mode",
324934
324934
  "Exited plan mode. Previous approval mode restored.": "Exited plan mode. Previous approval mode restored.",
@@ -325496,8 +325496,8 @@ var init_ja2 = __esm({
325496
325496
  "Generating project summary...": "\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30B5\u30DE\u30EA\u30FC\u3092\u751F\u6210\u4E2D...",
325497
325497
  "Failed to generate summary - no text content received from LLM response": "\u30B5\u30DE\u30EA\u30FC\u306E\u751F\u6210\u306B\u5931\u6557 - LLM\u30EC\u30B9\u30DD\u30F3\u30B9\u304B\u3089\u30C6\u30AD\u30B9\u30C8\u30B3\u30F3\u30C6\u30F3\u30C4\u3092\u53D7\u4FE1\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F",
325498
325498
  // Model
325499
- "Switch the model for this session": "\u3053\u306E\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u30E2\u30C7\u30EB\u3092\u5207\u308A\u66FF\u3048",
325500
- "Set fast model for background tasks": "\u30D0\u30C3\u30AF\u30B0\u30E9\u30A6\u30F3\u30C9\u30BF\u30B9\u30AF\u7528\u306E\u9AD8\u901F\u30E2\u30C7\u30EB\u3092\u8A2D\u5B9A",
325499
+ "Switch the model for this session (--fast for suggestion model)": "\u3053\u306E\u30BB\u30C3\u30B7\u30E7\u30F3\u306E\u30E2\u30C7\u30EB\u3092\u5207\u308A\u66FF\u3048\uFF08--fast \u3067\u63D0\u6848\u30E2\u30C7\u30EB\u3092\u8A2D\u5B9A\uFF09",
325500
+ "Set a lighter model for prompt suggestions and speculative execution": "\u30D7\u30ED\u30F3\u30D7\u30C8\u63D0\u6848\u3068\u6295\u6A5F\u7684\u5B9F\u884C\u7528\u306E\u8EFD\u91CF\u30E2\u30C7\u30EB\u3092\u8A2D\u5B9A",
325501
325501
  "Content generator configuration not available.": "\u30B3\u30F3\u30C6\u30F3\u30C4\u30B8\u30A7\u30CD\u30EC\u30FC\u30BF\u30FC\u8A2D\u5B9A\u304C\u5229\u7528\u3067\u304D\u307E\u305B\u3093",
325502
325502
  "Authentication type not available.": "\u8A8D\u8A3C\u30BF\u30A4\u30D7\u304C\u5229\u7528\u3067\u304D\u307E\u305B\u3093",
325503
325503
  "No models available for the current authentication type ({{authType}}).": "\u73FE\u5728\u306E\u8A8D\u8A3C\u30BF\u30A4\u30D7({{authType}})\u3067\u5229\u7528\u53EF\u80FD\u306A\u30E2\u30C7\u30EB\u306F\u3042\u308A\u307E\u305B\u3093",
@@ -326049,8 +326049,8 @@ var init_ja2 = __esm({
326049
326049
  "Select an option:": "\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u9078\u629E:",
326050
326050
  "Raw mode not available. Please run in an interactive terminal.": "Raw\u30E2\u30FC\u30C9\u304C\u5229\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u30A4\u30F3\u30BF\u30E9\u30AF\u30C6\u30A3\u30D6\u30BF\u30FC\u30DF\u30CA\u30EB\u3067\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
326051
326051
  "(Use \u2191 \u2193 arrows to navigate, Enter to select, Ctrl+C to exit)\n": "(\u2191 \u2193 \u77E2\u5370\u30AD\u30FC\u3067\u79FB\u52D5\u3001Enter \u3067\u9078\u629E\u3001Ctrl+C \u3067\u7D42\u4E86)\n",
326052
- verbose: "\u8A73\u7D30",
326053
- "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).": "\u8A73\u7D30\u30E2\u30FC\u30C9\u3067\u5B8C\u5168\u306A\u30C4\u30FC\u30EB\u51FA\u529B\u3068\u601D\u8003\u3092\u8868\u793A\u3057\u307E\u3059\uFF08Ctrl+O \u3067\u5207\u308A\u66FF\u3048\uFF09\u3002",
326052
+ compact: "\u30B3\u30F3\u30D1\u30AF\u30C8",
326053
+ "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).": "\u30B3\u30F3\u30D1\u30AF\u30C8\u30E2\u30FC\u30C9\u3067\u30C4\u30FC\u30EB\u51FA\u529B\u3068\u601D\u8003\u3092\u975E\u8868\u793A\u306B\u3057\u307E\u3059\uFF08Ctrl+O \u3067\u5207\u308A\u66FF\u3048\uFF09\u3002",
326054
326054
  "Press Ctrl+O to show full tool output": "Ctrl+O \u3067\u5B8C\u5168\u306A\u30C4\u30FC\u30EB\u51FA\u529B\u3092\u8868\u793A",
326055
326055
  "Switch to plan mode or exit plan mode": "Switch to plan mode or exit plan mode",
326056
326056
  "Exited plan mode. Previous approval mode restored.": "Exited plan mode. Previous approval mode restored.",
@@ -326774,8 +326774,8 @@ var init_pt2 = __esm({
326774
326774
  // ============================================================================
326775
326775
  // Commands - Model
326776
326776
  // ============================================================================
326777
- "Switch the model for this session": "Trocar o modelo para esta sess\xE3o",
326778
- "Set fast model for background tasks": "Definir modelo r\xE1pido para tarefas em segundo plano",
326777
+ "Switch the model for this session (--fast for suggestion model)": "Trocar o modelo para esta sess\xE3o (--fast para modelo de sugest\xF5es)",
326778
+ "Set a lighter model for prompt suggestions and speculative execution": "Definir modelo mais leve para sugest\xF5es de prompt e execu\xE7\xE3o especulativa",
326779
326779
  "Content generator configuration not available.": "Configura\xE7\xE3o do gerador de conte\xFAdo n\xE3o dispon\xEDvel.",
326780
326780
  "Authentication type not available.": "Tipo de autentica\xE7\xE3o n\xE3o dispon\xEDvel.",
326781
326781
  "No models available for the current authentication type ({{authType}}).": "Nenhum modelo dispon\xEDvel para o tipo de autentica\xE7\xE3o atual ({{authType}}).",
@@ -327508,8 +327508,8 @@ var init_pt2 = __esm({
327508
327508
  "Select an option:": "Selecione uma op\xE7\xE3o:",
327509
327509
  "Raw mode not available. Please run in an interactive terminal.": "Modo raw n\xE3o dispon\xEDvel. Execute em um terminal interativo.",
327510
327510
  "(Use \u2191 \u2193 arrows to navigate, Enter to select, Ctrl+C to exit)\n": "(Use \u2191 \u2193 para navegar, Enter para selecionar, Ctrl+C para sair)\n",
327511
- verbose: "detalhado",
327512
- "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).": "Mostrar sa\xEDda completa da ferramenta e racioc\xEDnio no modo detalhado (alternar com Ctrl+O).",
327511
+ compact: "compacto",
327512
+ "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).": "Ocultar sa\xEDda da ferramenta e racioc\xEDnio para uma visualiza\xE7\xE3o mais limpa (alternar com Ctrl+O).",
327513
327513
  "Press Ctrl+O to show full tool output": "Pressione Ctrl+O para exibir a sa\xEDda completa da ferramenta",
327514
327514
  "Switch to plan mode or exit plan mode": "Switch to plan mode or exit plan mode",
327515
327515
  "Exited plan mode. Previous approval mode restored.": "Exited plan mode. Previous approval mode restored.",
@@ -328243,8 +328243,8 @@ var init_ru2 = __esm({
328243
328243
  // ============================================================================
328244
328244
  // Команды - Модель
328245
328245
  // ============================================================================
328246
- "Switch the model for this session": "\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435 \u043C\u043E\u0434\u0435\u043B\u0438 \u0434\u043B\u044F \u044D\u0442\u043E\u0439 \u0441\u0435\u0441\u0441\u0438\u0438",
328247
- "Set fast model for background tasks": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u0431\u044B\u0441\u0442\u0440\u0443\u044E \u043C\u043E\u0434\u0435\u043B\u044C \u0434\u043B\u044F \u0444\u043E\u043D\u043E\u0432\u044B\u0445 \u0437\u0430\u0434\u0430\u0447",
328246
+ "Switch the model for this session (--fast for suggestion model)": "\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435 \u043C\u043E\u0434\u0435\u043B\u0438 \u0434\u043B\u044F \u044D\u0442\u043E\u0439 \u0441\u0435\u0441\u0441\u0438\u0438 (--fast \u0434\u043B\u044F \u043C\u043E\u0434\u0435\u043B\u0438 \u043F\u043E\u0434\u0441\u043A\u0430\u0437\u043E\u043A)",
328247
+ "Set a lighter model for prompt suggestions and speculative execution": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u043E\u0431\u043B\u0435\u0433\u0447\u0451\u043D\u043D\u0443\u044E \u043C\u043E\u0434\u0435\u043B\u044C \u0434\u043B\u044F \u043F\u043E\u0434\u0441\u043A\u0430\u0437\u043E\u043A \u0438 \u0441\u043F\u0435\u043A\u0443\u043B\u044F\u0442\u0438\u0432\u043D\u043E\u0433\u043E \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u044F",
328248
328248
  "Content generator configuration not available.": "\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F \u0433\u0435\u043D\u0435\u0440\u0430\u0442\u043E\u0440\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0438\u043C\u043E\u0433\u043E \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430.",
328249
328249
  "Authentication type not available.": "\u0422\u0438\u043F \u0430\u0432\u0442\u043E\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D.",
328250
328250
  "No models available for the current authentication type ({{authType}}).": "\u041D\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043C\u043E\u0434\u0435\u043B\u0435\u0439 \u0434\u043B\u044F \u0442\u0435\u043A\u0443\u0449\u0435\u0433\u043E \u0442\u0438\u043F\u0430 \u0430\u0432\u0442\u043E\u0440\u0438\u0437\u0430\u0446\u0438\u0438 ({{authType}}).",
@@ -328986,8 +328986,8 @@ var init_ru2 = __esm({
328986
328986
  "Select an option:": "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0432\u0430\u0440\u0438\u0430\u043D\u0442:",
328987
328987
  "Raw mode not available. Please run in an interactive terminal.": "Raw-\u0440\u0435\u0436\u0438\u043C \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u0435 \u0432 \u0438\u043D\u0442\u0435\u0440\u0430\u043A\u0442\u0438\u0432\u043D\u043E\u043C \u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B\u0435.",
328988
328988
  "(Use \u2191 \u2193 arrows to navigate, Enter to select, Ctrl+C to exit)\n": "(\u2191 \u2193 \u0441\u0442\u0440\u0435\u043B\u043A\u0438 \u0434\u043B\u044F \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438, Enter \u0434\u043B\u044F \u0432\u044B\u0431\u043E\u0440\u0430, Ctrl+C \u0434\u043B\u044F \u0432\u044B\u0445\u043E\u0434\u0430)\n",
328989
- verbose: "\u043F\u043E\u0434\u0440\u043E\u0431\u043D\u044B\u0439",
328990
- "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).": "\u041F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u043F\u043E\u043B\u043D\u044B\u0439 \u0432\u044B\u0432\u043E\u0434 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432 \u0438 \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043D\u0438\u0439 \u0432 \u043F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u043C \u0440\u0435\u0436\u0438\u043C\u0435 (\u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E Ctrl+O).",
328989
+ compact: "\u043A\u043E\u043C\u043F\u0430\u043A\u0442\u043D\u044B\u0439",
328990
+ "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).": "\u0421\u043A\u0440\u044B\u0432\u0430\u0442\u044C \u0432\u044B\u0432\u043E\u0434 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432 \u0438 \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u0440\u0430\u0441\u0441\u0443\u0436\u0434\u0435\u043D\u0438\u0439 \u0434\u043B\u044F \u0431\u043E\u043B\u0435\u0435 \u0447\u0438\u0441\u0442\u043E\u0433\u043E \u0432\u0438\u0434\u0430 (\u043F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0441 \u043F\u043E\u043C\u043E\u0449\u044C\u044E Ctrl+O).",
328991
328991
  "Press Ctrl+O to show full tool output": "\u041D\u0430\u0436\u043C\u0438\u0442\u0435 Ctrl+O \u0434\u043B\u044F \u043F\u043E\u043A\u0430\u0437\u0430 \u043F\u043E\u043B\u043D\u043E\u0433\u043E \u0432\u044B\u0432\u043E\u0434\u0430 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432",
328992
328992
  "Switch to plan mode or exit plan mode": "Switch to plan mode or exit plan mode",
328993
328993
  "Exited plan mode. Previous approval mode restored.": "Exited plan mode. Previous approval mode restored.",
@@ -329862,8 +329862,8 @@ var init_zh = __esm({
329862
329862
  // ============================================================================
329863
329863
  // Commands - Model
329864
329864
  // ============================================================================
329865
- "Switch the model for this session": "\u5207\u6362\u6B64\u4F1A\u8BDD\u7684\u6A21\u578B",
329866
- "Set fast model for background tasks": "\u8BBE\u7F6E\u540E\u53F0\u4EFB\u52A1\u7684\u5FEB\u901F\u6A21\u578B",
329865
+ "Switch the model for this session (--fast for suggestion model)": "\u5207\u6362\u6B64\u4F1A\u8BDD\u7684\u6A21\u578B\uFF08--fast \u53EF\u8BBE\u7F6E\u5EFA\u8BAE\u6A21\u578B\uFF09",
329866
+ "Set a lighter model for prompt suggestions and speculative execution": "\u8BBE\u7F6E\u7528\u4E8E\u8F93\u5165\u5EFA\u8BAE\u548C\u63A8\u6D4B\u6267\u884C\u7684\u8F7B\u91CF\u6A21\u578B",
329867
329867
  "Content generator configuration not available.": "\u5185\u5BB9\u751F\u6210\u5668\u914D\u7F6E\u4E0D\u53EF\u7528",
329868
329868
  "Authentication type not available.": "\u8BA4\u8BC1\u7C7B\u578B\u4E0D\u53EF\u7528",
329869
329869
  "No models available for the current authentication type ({{authType}}).": "\u5F53\u524D\u8BA4\u8BC1\u7C7B\u578B ({{authType}}) \u6CA1\u6709\u53EF\u7528\u7684\u6A21\u578B",
@@ -330347,6 +330347,7 @@ var init_zh = __esm({
330347
330347
  "No API response yet. Send a message to see actual usage.": "\u6682\u65E0 API \u54CD\u5E94\u3002\u53D1\u9001\u6D88\u606F\u4EE5\u67E5\u770B\u5B9E\u9645\u4F7F\u7528\u60C5\u51B5\u3002",
330348
330348
  "Show context window usage breakdown.": "\u663E\u793A\u4E0A\u4E0B\u6587\u7A97\u53E3\u4F7F\u7528\u60C5\u51B5\u5206\u89E3\u3002",
330349
330349
  "Run /context detail for per-item breakdown.": "\u8FD0\u884C /context detail \u67E5\u770B\u8BE6\u7EC6\u5206\u89E3\u3002",
330350
+ 'Show context window usage breakdown. Use "/context detail" for per-item breakdown.': '\u663E\u793A\u4E0A\u4E0B\u6587\u7A97\u53E3\u4F7F\u7528\u60C5\u51B5\u5206\u89E3\u3002\u8F93\u5165 "/context detail" \u67E5\u770B\u8BE6\u7EC6\u5206\u89E3\u3002',
330350
330351
  "body loaded": "\u5185\u5BB9\u5DF2\u52A0\u8F7D",
330351
330352
  memory: "\u8BB0\u5FC6",
330352
330353
  "{{region}} configuration updated successfully.": "{{region}} \u914D\u7F6E\u66F4\u65B0\u6210\u529F\u3002",
@@ -330421,8 +330422,8 @@ var init_zh = __esm({
330421
330422
  "Select an option:": "\u8BF7\u9009\u62E9\uFF1A",
330422
330423
  "Raw mode not available. Please run in an interactive terminal.": "\u539F\u59CB\u6A21\u5F0F\u4E0D\u53EF\u7528\u3002\u8BF7\u5728\u4EA4\u4E92\u5F0F\u7EC8\u7AEF\u4E2D\u8FD0\u884C\u3002",
330423
330424
  "(Use \u2191 \u2193 arrows to navigate, Enter to select, Ctrl+C to exit)\n": "(\u4F7F\u7528 \u2191 \u2193 \u7BAD\u5934\u5BFC\u822A\uFF0CEnter \u9009\u62E9\uFF0CCtrl+C \u9000\u51FA)\n",
330424
- verbose: "\u8BE6\u7EC6",
330425
- "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).": "\u8BE6\u7EC6\u6A21\u5F0F\u4E0B\u663E\u793A\u5B8C\u6574\u5DE5\u5177\u8F93\u51FA\u548C\u601D\u8003\u8FC7\u7A0B\uFF08Ctrl+O \u5207\u6362\uFF09\u3002",
330425
+ compact: "\u7D27\u51D1",
330426
+ "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).": "\u7D27\u51D1\u6A21\u5F0F\u4E0B\u9690\u85CF\u5DE5\u5177\u8F93\u51FA\u548C\u601D\u8003\u8FC7\u7A0B\uFF0C\u754C\u9762\u66F4\u7B80\u6D01\uFF08Ctrl+O \u5207\u6362\uFF09\u3002",
330426
330427
  "Press Ctrl+O to show full tool output": "\u6309 Ctrl+O \u67E5\u770B\u8BE6\u7EC6\u5DE5\u5177\u8C03\u7528\u7ED3\u679C",
330427
330428
  "Switch to plan mode or exit plan mode": "\u5207\u6362\u5230\u8BA1\u5212\u6A21\u5F0F\u6216\u9000\u51FA\u8BA1\u5212\u6A21\u5F0F",
330428
330429
  "Exited plan mode. Previous approval mode restored.": "\u5DF2\u9000\u51FA\u8BA1\u5212\u6A21\u5F0F\uFF0C\u5DF2\u6062\u590D\u4E4B\u524D\u7684\u5BA1\u6279\u6A21\u5F0F\u3002",
@@ -421062,14 +421063,14 @@ var SETTINGS_SCHEMA = {
421062
421063
  description: "The last time the feedback dialog was shown.",
421063
421064
  showInDialog: false
421064
421065
  },
421065
- verboseMode: {
421066
+ compactMode: {
421066
421067
  type: "boolean",
421067
- label: "Verbose Mode",
421068
+ label: "Compact Mode",
421068
421069
  category: "UI",
421069
421070
  requiresRestart: false,
421070
- default: true,
421071
- description: "Show full tool output and thinking in verbose mode (toggle with Ctrl+O).",
421072
- showInDialog: false
421071
+ default: false,
421072
+ description: "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).",
421073
+ showInDialog: true
421073
421074
  }
421074
421075
  }
421075
421076
  },
@@ -421137,7 +421138,7 @@ var SETTINGS_SCHEMA = {
421137
421138
  category: "Model",
421138
421139
  requiresRestart: false,
421139
421140
  default: "",
421140
- description: "Model for background tasks (suggestion generation, speculation). Leave empty to use the main model. A smaller/faster model (e.g., qwen3.5-flash) reduces latency and cost.",
421141
+ description: "Model used for generating prompt suggestions and speculative execution. Leave empty to use the main model. A smaller/faster model (e.g., qwen3-coder-flash) reduces latency and cost.",
421141
421142
  showInDialog: true
421142
421143
  },
421143
421144
  model: {
@@ -431311,7 +431312,7 @@ __name(getPackageJson, "getPackageJson");
431311
431312
  // packages/cli/src/utils/version.ts
431312
431313
  async function getCliVersion() {
431313
431314
  const pkgJson = await getPackageJson();
431314
- return "0.14.2-nightly.20260410.4d2d4432d";
431315
+ return "0.14.3-preview.0";
431315
431316
  }
431316
431317
  __name(getCliVersion, "getCliVersion");
431317
431318
 
@@ -444264,7 +444265,15 @@ async function startSingle(name4) {
444264
444265
  const channel = createChannel(name4, config2, bridge, { router });
444265
444266
  channels.set(name4, channel);
444266
444267
  registerToolCallDispatch(bridge, router, channels);
444267
- await channel.connect();
444268
+ try {
444269
+ await channel.connect();
444270
+ } catch (err2) {
444271
+ writeStderrLine(
444272
+ `Error: ${err2 instanceof Error ? err2.message : String(err2)}`
444273
+ );
444274
+ bridge.stop();
444275
+ process.exit(1);
444276
+ }
444268
444277
  writeServiceInfo([name4]);
444269
444278
  writeStdoutLine(`[Channel] "${name4}" is running. Press Ctrl+C to stop.`);
444270
444279
  bridge.on("disconnected", async () => {
@@ -444656,7 +444665,7 @@ async function waitForLogin(params) {
444656
444665
  const controller = new AbortController();
444657
444666
  const timeout2 = setTimeout(() => controller.abort(), 6e4);
444658
444667
  const resp = await fetch(`${apiBaseUrl}/ilink/bot/get_qrcode_status?qrcode=${encodeURIComponent(currentQrcodeId)}`, {
444659
- headers: { "iLink-App-ClientVersion": "1" },
444668
+ headers: buildHeaders2(),
444660
444669
  signal: controller.signal
444661
444670
  });
444662
444671
  clearTimeout(timeout2);
@@ -448499,7 +448508,7 @@ var formatDuration = /* @__PURE__ */ __name((milliseconds) => {
448499
448508
 
448500
448509
  // packages/cli/src/generated/git-commit.ts
448501
448510
  init_esbuild_shims();
448502
- var GIT_COMMIT_INFO = "48a2508d7";
448511
+ var GIT_COMMIT_INFO = "b3c429867";
448503
448512
 
448504
448513
  // packages/cli/src/utils/systemInfo.ts
448505
448514
  async function getNpmVersion() {
@@ -449938,7 +449947,19 @@ ${skill.level}
449938
449947
  showDetails
449939
449948
  };
449940
449949
  context2.ui.addItem(contextUsageItem, Date.now());
449941
- }, "action")
449950
+ }, "action"),
449951
+ subCommands: [
449952
+ {
449953
+ name: "detail",
449954
+ get description() {
449955
+ return t4("Show per-item context usage breakdown.");
449956
+ },
449957
+ kind: "built-in" /* BUILT_IN */,
449958
+ action: /* @__PURE__ */ __name(async (context2) => {
449959
+ await contextCommand.action(context2, "detail");
449960
+ }, "action")
449961
+ }
449962
+ ]
449942
449963
  };
449943
449964
 
449944
449965
  // packages/cli/src/ui/commands/copyCommand.ts
@@ -453391,15 +453412,17 @@ init_esbuild_shims();
453391
453412
  var modelCommand = {
453392
453413
  name: "model",
453393
453414
  get description() {
453394
- return t4("Switch the model for this session");
453415
+ return t4("Switch the model for this session (--fast for suggestion model)");
453395
453416
  },
453396
453417
  kind: "built-in" /* BUILT_IN */,
453397
453418
  completion: /* @__PURE__ */ __name(async (_context, partialArg) => {
453398
- if ("--fast".startsWith(partialArg)) {
453419
+ if (partialArg && "--fast".startsWith(partialArg)) {
453399
453420
  return [
453400
453421
  {
453401
453422
  value: "--fast",
453402
- description: t4("Set fast model for background tasks")
453423
+ description: t4(
453424
+ "Set a lighter model for prompt suggestions and speculative execution"
453425
+ )
453403
453426
  }
453404
453427
  ];
453405
453428
  }
@@ -478779,7 +478802,7 @@ var Command = /* @__PURE__ */ ((Command2) => {
478779
478802
  Command2["EXIT"] = "exit";
478780
478803
  Command2["SHOW_MORE_LINES"] = "showMoreLines";
478781
478804
  Command2["RETRY_LAST"] = "retryLast";
478782
- Command2["TOGGLE_VERBOSE_MODE"] = "toggleVerboseMode";
478805
+ Command2["TOGGLE_COMPACT_MODE"] = "toggleCompactMode";
478783
478806
  Command2["REVERSE_SEARCH"] = "reverseSearch";
478784
478807
  Command2["SUBMIT_REVERSE_SEARCH"] = "submitReverseSearch";
478785
478808
  Command2["ACCEPT_SUGGESTION_REVERSE_SEARCH"] = "acceptSuggestionReverseSearch";
@@ -478856,7 +478879,7 @@ var defaultKeyBindings = {
478856
478879
  ["exit" /* EXIT */]: [{ key: "d", ctrl: true }],
478857
478880
  ["showMoreLines" /* SHOW_MORE_LINES */]: [{ key: "s", ctrl: true }],
478858
478881
  ["retryLast" /* RETRY_LAST */]: [{ key: "y", ctrl: true }],
478859
- ["toggleVerboseMode" /* TOGGLE_VERBOSE_MODE */]: [{ key: "o", ctrl: true }],
478882
+ ["toggleCompactMode" /* TOGGLE_COMPACT_MODE */]: [{ key: "o", ctrl: true }],
478860
478883
  // Shell commands
478861
478884
  ["reverseSearch" /* REVERSE_SEARCH */]: [{ key: "r", ctrl: true }],
478862
478885
  // Note: original logic ONLY checked ctrl=false, ignored meta/shift/paste
@@ -484031,15 +484054,15 @@ var TOOL_STATUS = {
484031
484054
  ERROR: "x"
484032
484055
  };
484033
484056
 
484034
- // packages/cli/src/ui/contexts/VerboseModeContext.tsx
484057
+ // packages/cli/src/ui/contexts/CompactModeContext.tsx
484035
484058
  init_esbuild_shims();
484036
484059
  var import_react64 = __toESM(require_react(), 1);
484037
- var VerboseModeContext = (0, import_react64.createContext)({
484038
- verboseMode: true,
484060
+ var CompactModeContext = (0, import_react64.createContext)({
484061
+ compactMode: false,
484039
484062
  frozenSnapshot: null
484040
484063
  });
484041
- var useVerboseMode = /* @__PURE__ */ __name(() => (0, import_react64.useContext)(VerboseModeContext), "useVerboseMode");
484042
- var VerboseModeProvider = VerboseModeContext.Provider;
484064
+ var useCompactMode = /* @__PURE__ */ __name(() => (0, import_react64.useContext)(CompactModeContext), "useCompactMode");
484065
+ var CompactModeProvider = CompactModeContext.Provider;
484043
484066
 
484044
484067
  // packages/cli/src/ui/components/shared/ToolStatusIndicator.tsx
484045
484068
  init_esbuild_shims();
@@ -484257,8 +484280,8 @@ var ToolMessage = /* @__PURE__ */ __name(({
484257
484280
  renderOutputAsMarkdown = false;
484258
484281
  }
484259
484282
  const displayRenderer = useResultDisplayRenderer(resultDisplay);
484260
- const { verboseMode } = useVerboseMode();
484261
- const effectiveDisplayRenderer = verboseMode || forceShowResult ? displayRenderer : { type: "none" };
484283
+ const { compactMode } = useCompactMode();
484284
+ const effectiveDisplayRenderer = !compactMode || forceShowResult ? displayRenderer : { type: "none" };
484262
484285
  return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(Box_default, { paddingX: 1, paddingY: 0, flexDirection: "column", children: [
484263
484286
  /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(Box_default, { minHeight: 1, children: [
484264
484287
  /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(ToolStatusIndicator, { status, name: name4 }),
@@ -484456,7 +484479,7 @@ var ToolGroupMessage = /* @__PURE__ */ __name(({
484456
484479
  isUserInitiated
484457
484480
  }) => {
484458
484481
  const config2 = useConfig();
484459
- const { verboseMode } = useVerboseMode();
484482
+ const { compactMode } = useCompactMode();
484460
484483
  const hasConfirmingTool = toolCalls.some(
484461
484484
  (t5) => t5.status === "Confirming" /* Confirming */
484462
484485
  );
@@ -484482,7 +484505,7 @@ var ToolGroupMessage = /* @__PURE__ */ __name(({
484482
484505
  focusedSubagentRef.current = subagentsAwaitingApproval[0]?.callId ?? null;
484483
484506
  }
484484
484507
  const focusedSubagentCallId = focusedSubagentRef.current;
484485
- const showCompact = !verboseMode && !hasConfirmingTool && !hasErrorTool && !isEmbeddedShellFocused && !isUserInitiated;
484508
+ const showCompact = compactMode && !hasConfirmingTool && !hasErrorTool && !isEmbeddedShellFocused && !isUserInitiated;
484486
484509
  if (showCompact) {
484487
484510
  return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
484488
484511
  CompactToolGroupDisplay,
@@ -486640,7 +486663,7 @@ var HistoryItemDisplayComponent = /* @__PURE__ */ __name(({
486640
486663
  availableTerminalHeightGemini
486641
486664
  }) => {
486642
486665
  const marginTop = item.type === "gemini_content" || item.type === "gemini_thought_content" ? 0 : 1;
486643
- const { verboseMode } = useVerboseMode();
486666
+ const { compactMode } = useCompactMode();
486644
486667
  const itemForDisplay = (0, import_react72.useMemo)(() => escapeAnsiCtrlCodes(item), [item]);
486645
486668
  const contentWidth = terminalWidth - 4;
486646
486669
  const boxWidth = mainAreaWidth || contentWidth;
@@ -486672,7 +486695,7 @@ var HistoryItemDisplayComponent = /* @__PURE__ */ __name(({
486672
486695
  contentWidth
486673
486696
  }
486674
486697
  ),
486675
- verboseMode && itemForDisplay.type === "gemini_thought" && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
486698
+ !compactMode && itemForDisplay.type === "gemini_thought" && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
486676
486699
  ThinkMessage,
486677
486700
  {
486678
486701
  text: itemForDisplay.text,
@@ -486681,7 +486704,7 @@ var HistoryItemDisplayComponent = /* @__PURE__ */ __name(({
486681
486704
  contentWidth
486682
486705
  }
486683
486706
  ),
486684
- verboseMode && itemForDisplay.type === "gemini_thought_content" && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
486707
+ !compactMode && itemForDisplay.type === "gemini_thought_content" && /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
486685
486708
  ThinkMessageContent,
486686
486709
  {
486687
486710
  text: itemForDisplay.text,
@@ -487129,7 +487152,7 @@ var MAX_GEMINI_MESSAGE_LINES = 65536;
487129
487152
  var MainContent = /* @__PURE__ */ __name(() => {
487130
487153
  const { version: version2 } = useAppContext();
487131
487154
  const uiState = useUIState();
487132
- const { frozenSnapshot } = useVerboseMode();
487155
+ const { frozenSnapshot } = useCompactMode();
487133
487156
  const {
487134
487157
  pendingHistoryItems,
487135
487158
  terminalWidth,
@@ -498109,7 +498132,7 @@ ${finalValue.trim()}`;
498109
498132
  handleSubmitAndClear(buffer.text);
498110
498133
  return true;
498111
498134
  }
498112
- if (key.name === "tab" && buffer.text.length === 0 && !completion3.showSuggestions && !reverseSearchActive && !commandSearchActive && followup.state.isVisible && followup.state.suggestion) {
498135
+ if (key.name === "tab" && !key.shift && buffer.text.length === 0 && !completion3.showSuggestions && !reverseSearchActive && !commandSearchActive && followup.state.isVisible && followup.state.suggestion) {
498113
498136
  followup.accept("tab");
498114
498137
  return true;
498115
498138
  }
@@ -498784,7 +498807,7 @@ var Footer = /* @__PURE__ */ __name(() => {
498784
498807
  const config2 = useConfig();
498785
498808
  const { vimEnabled, vimMode } = useVimMode();
498786
498809
  const { text: statusLineText } = useStatusLine();
498787
- const { verboseMode } = useVerboseMode();
498810
+ const { compactMode } = useCompactMode();
498788
498811
  const { promptTokenCount, showAutoAcceptIndicator } = {
498789
498812
  promptTokenCount: uiState.sessionStats.lastPromptTokenCount,
498790
498813
  showAutoAcceptIndicator: uiState.showAutoAcceptIndicator
@@ -498826,10 +498849,10 @@ var Footer = /* @__PURE__ */ __name(() => {
498826
498849
  ) })
498827
498850
  });
498828
498851
  }
498829
- if (verboseMode) {
498852
+ if (compactMode) {
498830
498853
  rightItems.push({
498831
- key: "verbose",
498832
- node: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(Text3, { color: theme.text.accent, children: t4("verbose") })
498854
+ key: "compact",
498855
+ node: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(Text3, { color: theme.text.accent, children: t4("compact") })
498833
498856
  });
498834
498857
  }
498835
498858
  return /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(
@@ -509720,8 +509743,8 @@ ${queuedText}` : queuedText;
509720
509743
  setShowMigrationNudge: setShowCommandMigrationNudge
509721
509744
  } = useCommandMigration(settings, config2.storage);
509722
509745
  const [showToolDescriptions, setShowToolDescriptions] = (0, import_react166.useState)(false);
509723
- const [verboseMode, setVerboseMode] = (0, import_react166.useState)(
509724
- settings.merged.ui?.verboseMode ?? true
509746
+ const [compactMode, setCompactMode] = (0, import_react166.useState)(
509747
+ settings.merged.ui?.compactMode ?? false
509725
509748
  );
509726
509749
  const [frozenSnapshot, setFrozenSnapshot] = (0, import_react166.useState)(null);
509727
509750
  const [ctrlCPressedOnce, setCtrlCPressedOnce] = (0, import_react166.useState)(false);
@@ -510024,10 +510047,10 @@ ${migrationResult.failedFiles.map((f5) => ` \u2022 ${f5.file}: ${f5.error}`).jo
510024
510047
  if (activePtyId || embeddedShellFocused) {
510025
510048
  setEmbeddedShellFocused((prev) => !prev);
510026
510049
  }
510027
- } else if (keyMatchers["toggleVerboseMode" /* TOGGLE_VERBOSE_MODE */](key)) {
510028
- const newValue = !verboseMode;
510029
- setVerboseMode(newValue);
510030
- void settings.setValue("User" /* User */, "ui.verboseMode", newValue);
510050
+ } else if (keyMatchers["toggleCompactMode" /* TOGGLE_COMPACT_MODE */](key)) {
510051
+ const newValue = !compactMode;
510052
+ setCompactMode(newValue);
510053
+ void settings.setValue("User" /* User */, "ui.compactMode", newValue);
510031
510054
  refreshStatic();
510032
510055
  if (streamingState === "responding" /* Responding */) {
510033
510056
  setFrozenSnapshot([...pendingHistoryItems]);
@@ -510067,8 +510090,8 @@ ${migrationResult.failedFiles.map((f5) => ` \u2022 ${f5.file}: ${f5.error}`).jo
510067
510090
  // debugKeystrokeLogging is read at call time, so no stale closure risk.
510068
510091
  settings,
510069
510092
  isAuthenticating,
510070
- verboseMode,
510071
- setVerboseMode,
510093
+ compactMode,
510094
+ setCompactMode,
510072
510095
  setFrozenSnapshot,
510073
510096
  pendingHistoryItems,
510074
510097
  refreshStatic
@@ -510446,9 +510469,9 @@ ${migrationResult.failedFiles.map((f5) => ` \u2022 ${f5.file}: ${f5.error}`).jo
510446
510469
  submitFeedback
510447
510470
  ]
510448
510471
  );
510449
- const verboseModeValue = (0, import_react166.useMemo)(
510450
- () => ({ verboseMode, frozenSnapshot }),
510451
- [verboseMode, frozenSnapshot]
510472
+ const compactModeValue = (0, import_react166.useMemo)(
510473
+ () => ({ compactMode, frozenSnapshot }),
510474
+ [compactMode, frozenSnapshot]
510452
510475
  );
510453
510476
  return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(UIStateContext.Provider, { value: uiState, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(UIActionsContext.Provider, { value: uiActions, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ConfigContext.Provider, { value: config2, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
510454
510477
  AppContext2.Provider,
@@ -510457,7 +510480,7 @@ ${migrationResult.failedFiles.map((f5) => ` \u2022 ${f5.file}: ${f5.error}`).jo
510457
510480
  version: props.version,
510458
510481
  startupWarnings: props.startupWarnings || []
510459
510482
  },
510460
- children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(VerboseModeProvider, { value: verboseModeValue, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ShellFocusContext.Provider, { value: isFocused, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(App2, {}) }) })
510483
+ children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(CompactModeProvider, { value: compactModeValue, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(ShellFocusContext.Provider, { value: isFocused, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(App2, {}) }) })
510461
510484
  }
510462
510485
  ) }) }) });
510463
510486
  }, "AppContainer");
@@ -513039,7 +513062,7 @@ var QwenAgent = class {
513039
513062
  async initialize(args2) {
513040
513063
  this.clientCapabilities = args2.clientCapabilities;
513041
513064
  const authMethods = buildAuthMethods();
513042
- const version2 = "0.14.2-nightly.20260410.4d2d4432d";
513065
+ const version2 = "0.14.3-preview.0";
513043
513066
  return {
513044
513067
  protocolVersion: PROTOCOL_VERSION,
513045
513068
  agentInfo: {
package/locales/de.js CHANGED
@@ -989,9 +989,10 @@ export default {
989
989
  // ============================================================================
990
990
  // Commands - Model
991
991
  // ============================================================================
992
- 'Switch the model for this session': 'Modell für diese Sitzung wechseln',
993
- 'Set fast model for background tasks':
994
- 'Schnelles Modell für Hintergrundaufgaben festlegen',
992
+ 'Switch the model for this session (--fast for suggestion model)':
993
+ 'Modell für diese Sitzung wechseln (--fast für Vorschlagsmodell)',
994
+ 'Set a lighter model for prompt suggestions and speculative execution':
995
+ 'Leichteres Modell für Eingabevorschläge und spekulative Ausführung festlegen',
995
996
  'Content generator configuration not available.':
996
997
  'Inhaltsgenerator-Konfiguration nicht verfügbar.',
997
998
  'Authentication type not available.':
@@ -1970,9 +1971,9 @@ export default {
1970
1971
  'Raw-Modus nicht verfügbar. Bitte in einem interaktiven Terminal ausführen.',
1971
1972
  '(Use ↑ ↓ arrows to navigate, Enter to select, Ctrl+C to exit)\n':
1972
1973
  '(↑ ↓ Pfeiltasten zum Navigieren, Enter zum Auswählen, Strg+C zum Beenden)\n',
1973
- verbose: 'ausführlich',
1974
- 'Show full tool output and thinking in verbose mode (toggle with Ctrl+O).':
1975
- 'Vollständige Tool-Ausgabe und Denkprozess im ausführlichen Modus anzeigen (mit Strg+O umschalten).',
1974
+ compact: 'kompakt',
1975
+ 'Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).':
1976
+ 'Tool-Ausgabe und Denkprozess ausblenden für eine übersichtlichere Ansicht (mit Strg+O umschalten).',
1976
1977
  'Press Ctrl+O to show full tool output':
1977
1978
  'Strg+O für vollständige Tool-Ausgabe drücken',
1978
1979
 
package/locales/en.js CHANGED
@@ -1151,8 +1151,10 @@ export default {
1151
1151
  // ============================================================================
1152
1152
  // Commands - Model
1153
1153
  // ============================================================================
1154
- 'Switch the model for this session': 'Switch the model for this session',
1155
- 'Set fast model for background tasks': 'Set fast model for background tasks',
1154
+ 'Switch the model for this session (--fast for suggestion model)':
1155
+ 'Switch the model for this session (--fast for suggestion model)',
1156
+ 'Set a lighter model for prompt suggestions and speculative execution':
1157
+ 'Set a lighter model for prompt suggestions and speculative execution',
1156
1158
  'Content generator configuration not available.':
1157
1159
  'Content generator configuration not available.',
1158
1160
  'Authentication type not available.': 'Authentication type not available.',
@@ -2010,9 +2012,9 @@ export default {
2010
2012
  'Raw mode not available. Please run in an interactive terminal.',
2011
2013
  '(Use ↑ ↓ arrows to navigate, Enter to select, Ctrl+C to exit)\n':
2012
2014
  '(Use ↑ ↓ arrows to navigate, Enter to select, Ctrl+C to exit)\n',
2013
- verbose: 'verbose',
2014
- 'Show full tool output and thinking in verbose mode (toggle with Ctrl+O).':
2015
- 'Show full tool output and thinking in verbose mode (toggle with Ctrl+O).',
2015
+ compact: 'compact',
2016
+ 'Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).':
2017
+ 'Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).',
2016
2018
  'Press Ctrl+O to show full tool output':
2017
2019
  'Press Ctrl+O to show full tool output',
2018
2020
 
package/locales/ja.js CHANGED
@@ -743,9 +743,10 @@ export default {
743
743
  'Failed to generate summary - no text content received from LLM response':
744
744
  'サマリーの生成に失敗 - LLMレスポンスからテキストコンテンツを受信できませんでした',
745
745
  // Model
746
- 'Switch the model for this session': 'このセッションのモデルを切り替え',
747
- 'Set fast model for background tasks':
748
- 'バックグラウンドタスク用の高速モデルを設定',
746
+ 'Switch the model for this session (--fast for suggestion model)':
747
+ 'このセッションのモデルを切り替え(--fast で提案モデルを設定)',
748
+ 'Set a lighter model for prompt suggestions and speculative execution':
749
+ 'プロンプト提案と投機的実行用の軽量モデルを設定',
749
750
  'Content generator configuration not available.':
750
751
  'コンテンツジェネレーター設定が利用できません',
751
752
  'Authentication type not available.': '認証タイプが利用できません',
@@ -1462,9 +1463,9 @@ export default {
1462
1463
  'Rawモードが利用できません。インタラクティブターミナルで実行してください。',
1463
1464
  '(Use ↑ ↓ arrows to navigate, Enter to select, Ctrl+C to exit)\n':
1464
1465
  '(↑ ↓ 矢印キーで移動、Enter で選択、Ctrl+C で終了)\n',
1465
- verbose: '詳細',
1466
- 'Show full tool output and thinking in verbose mode (toggle with Ctrl+O).':
1467
- '詳細モードで完全なツール出力と思考を表示します(Ctrl+O で切り替え)。',
1466
+ compact: 'コンパクト',
1467
+ 'Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).':
1468
+ 'コンパクトモードでツール出力と思考を非表示にします(Ctrl+O で切り替え)。',
1468
1469
  'Press Ctrl+O to show full tool output': 'Ctrl+O で完全なツール出力を表示',
1469
1470
 
1470
1471
  'Switch to plan mode or exit plan mode':
package/locales/pt.js CHANGED
@@ -996,9 +996,10 @@ export default {
996
996
  // ============================================================================
997
997
  // Commands - Model
998
998
  // ============================================================================
999
- 'Switch the model for this session': 'Trocar o modelo para esta sessão',
1000
- 'Set fast model for background tasks':
1001
- 'Definir modelo rápido para tarefas em segundo plano',
999
+ 'Switch the model for this session (--fast for suggestion model)':
1000
+ 'Trocar o modelo para esta sessão (--fast para modelo de sugestões)',
1001
+ 'Set a lighter model for prompt suggestions and speculative execution':
1002
+ 'Definir modelo mais leve para sugestões de prompt e execução especulativa',
1002
1003
  'Content generator configuration not available.':
1003
1004
  'Configuração do gerador de conteúdo não disponível.',
1004
1005
  'Authentication type not available.': 'Tipo de autenticação não disponível.',
@@ -1960,9 +1961,9 @@ export default {
1960
1961
  'Modo raw não disponível. Execute em um terminal interativo.',
1961
1962
  '(Use ↑ ↓ arrows to navigate, Enter to select, Ctrl+C to exit)\n':
1962
1963
  '(Use ↑ ↓ para navegar, Enter para selecionar, Ctrl+C para sair)\n',
1963
- verbose: 'detalhado',
1964
- 'Show full tool output and thinking in verbose mode (toggle with Ctrl+O).':
1965
- 'Mostrar saída completa da ferramenta e raciocínio no modo detalhado (alternar com Ctrl+O).',
1964
+ compact: 'compacto',
1965
+ 'Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).':
1966
+ 'Ocultar saída da ferramenta e raciocínio para uma visualização mais limpa (alternar com Ctrl+O).',
1966
1967
  'Press Ctrl+O to show full tool output':
1967
1968
  'Pressione Ctrl+O para exibir a saída completa da ferramenta',
1968
1969
 
package/locales/ru.js CHANGED
@@ -997,9 +997,10 @@ export default {
997
997
  // ============================================================================
998
998
  // Команды - Модель
999
999
  // ============================================================================
1000
- 'Switch the model for this session': 'Переключение модели для этой сессии',
1001
- 'Set fast model for background tasks':
1002
- 'Установить быструю модель для фоновых задач',
1000
+ 'Switch the model for this session (--fast for suggestion model)':
1001
+ 'Переключение модели для этой сессии (--fast для модели подсказок)',
1002
+ 'Set a lighter model for prompt suggestions and speculative execution':
1003
+ 'Установить облегчённую модель для подсказок и спекулятивного выполнения',
1003
1004
  'Content generator configuration not available.':
1004
1005
  'Конфигурация генератора содержимого недоступна.',
1005
1006
  'Authentication type not available.': 'Тип авторизации недоступен.',
@@ -1967,9 +1968,9 @@ export default {
1967
1968
  'Raw-режим недоступен. Пожалуйста, запустите в интерактивном терминале.',
1968
1969
  '(Use ↑ ↓ arrows to navigate, Enter to select, Ctrl+C to exit)\n':
1969
1970
  '(↑ ↓ стрелки для навигации, Enter для выбора, Ctrl+C для выхода)\n',
1970
- verbose: 'подробный',
1971
- 'Show full tool output and thinking in verbose mode (toggle with Ctrl+O).':
1972
- 'Показывать полный вывод инструментов и процесс рассуждений в подробном режиме (переключить с помощью Ctrl+O).',
1971
+ compact: 'компактный',
1972
+ 'Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).':
1973
+ 'Скрывать вывод инструментов и процесс рассуждений для более чистого вида (переключить с помощью Ctrl+O).',
1973
1974
  'Press Ctrl+O to show full tool output':
1974
1975
  'Нажмите Ctrl+O для показа полного вывода инструментов',
1975
1976
 
package/locales/zh.js CHANGED
@@ -1092,8 +1092,10 @@ export default {
1092
1092
  // ============================================================================
1093
1093
  // Commands - Model
1094
1094
  // ============================================================================
1095
- 'Switch the model for this session': '切换此会话的模型',
1096
- 'Set fast model for background tasks': '设置后台任务的快速模型',
1095
+ 'Switch the model for this session (--fast for suggestion model)':
1096
+ '切换此会话的模型(--fast 可设置建议模型)',
1097
+ 'Set a lighter model for prompt suggestions and speculative execution':
1098
+ '设置用于输入建议和推测执行的轻量模型',
1097
1099
  'Content generator configuration not available.': '内容生成器配置不可用',
1098
1100
  'Authentication type not available.': '认证类型不可用',
1099
1101
  'No models available for the current authentication type ({{authType}}).':
@@ -1714,6 +1716,8 @@ export default {
1714
1716
  'Show context window usage breakdown.': '显示上下文窗口使用情况分解。',
1715
1717
  'Run /context detail for per-item breakdown.':
1716
1718
  '运行 /context detail 查看详细分解。',
1719
+ 'Show context window usage breakdown. Use "/context detail" for per-item breakdown.':
1720
+ '显示上下文窗口使用情况分解。输入 "/context detail" 查看详细分解。',
1717
1721
  'body loaded': '内容已加载',
1718
1722
  memory: '记忆',
1719
1723
  '{{region}} configuration updated successfully.': '{{region}} 配置更新成功。',
@@ -1814,9 +1818,9 @@ export default {
1814
1818
  '原始模式不可用。请在交互式终端中运行。',
1815
1819
  '(Use ↑ ↓ arrows to navigate, Enter to select, Ctrl+C to exit)\n':
1816
1820
  '(使用 ↑ ↓ 箭头导航,Enter 选择,Ctrl+C 退出)\n',
1817
- verbose: '详细',
1818
- 'Show full tool output and thinking in verbose mode (toggle with Ctrl+O).':
1819
- '详细模式下显示完整工具输出和思考过程(Ctrl+O 切换)。',
1821
+ compact: '紧凑',
1822
+ 'Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).':
1823
+ '紧凑模式下隐藏工具输出和思考过程,界面更简洁(Ctrl+O 切换)。',
1820
1824
  'Press Ctrl+O to show full tool output': '按 Ctrl+O 查看详细工具调用结果',
1821
1825
 
1822
1826
  'Switch to plan mode or exit plan mode': '切换到计划模式或退出计划模式',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qwen-code/qwen-code",
3
- "version": "0.14.2-nightly.20260410.4d2d4432d",
3
+ "version": "0.14.3-preview.0",
4
4
  "description": "Qwen Code - AI-powered coding assistant",
5
5
  "repository": {
6
6
  "type": "git",
@@ -21,7 +21,7 @@
21
21
  "bundled"
22
22
  ],
23
23
  "config": {
24
- "sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.14.2-nightly.20260410.4d2d4432d"
24
+ "sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.14.3-preview.0"
25
25
  },
26
26
  "dependencies": {},
27
27
  "optionalDependencies": {