@qwen-code/qwen-code 0.6.0 → 0.6.1-nightly.20260107.2c285394

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.
package/cli.js CHANGED
@@ -70952,16 +70952,21 @@ var require_dist3 = __commonJS({
70952
70952
  });
70953
70953
 
70954
70954
  // packages/core/dist/src/utils/schemaValidator.js
70955
- function fixBooleanCasing(data) {
70955
+ function fixBooleanValues(data) {
70956
70956
  for (const key of Object.keys(data)) {
70957
70957
  if (!(key in data))
70958
70958
  continue;
70959
- if (typeof data[key] === "object") {
70960
- fixBooleanCasing(data[key]);
70961
- } else if (data[key] === "True")
70962
- data[key] = "true";
70963
- else if (data[key] === "False")
70964
- data[key] = "false";
70959
+ const value = data[key];
70960
+ if (typeof value === "object" && value !== null) {
70961
+ fixBooleanValues(value);
70962
+ } else if (typeof value === "string") {
70963
+ const lower3 = value.toLowerCase();
70964
+ if (lower3 === "true") {
70965
+ data[key] = true;
70966
+ } else if (lower3 === "false") {
70967
+ data[key] = false;
70968
+ }
70969
+ }
70965
70970
  }
70966
70971
  }
70967
70972
  var import_ajv, addFormats, AjvClass, ajValidator, addFormatsFunc, SchemaValidator;
@@ -71002,19 +71007,18 @@ var init_schemaValidator = __esm({
71002
71007
  return "Value of params must be an object";
71003
71008
  }
71004
71009
  const validate3 = ajValidator.compile(schema);
71005
- const valid = validate3(data);
71010
+ let valid = validate3(data);
71006
71011
  if (!valid && validate3.errors) {
71007
- fixBooleanCasing(data);
71008
- const validate4 = ajValidator.compile(schema);
71009
- const valid2 = validate4(data);
71010
- if (!valid2 && validate4.errors) {
71011
- return ajValidator.errorsText(validate4.errors, { dataVar: "params" });
71012
+ fixBooleanValues(data);
71013
+ valid = validate3(data);
71014
+ if (!valid && validate3.errors) {
71015
+ return ajValidator.errorsText(validate3.errors, { dataVar: "params" });
71012
71016
  }
71013
71017
  }
71014
71018
  return null;
71015
71019
  }
71016
71020
  };
71017
- __name(fixBooleanCasing, "fixBooleanCasing");
71021
+ __name(fixBooleanValues, "fixBooleanValues");
71018
71022
  }
71019
71023
  });
71020
71024
 
@@ -131561,10 +131565,23 @@ var init_converter = __esm({
131561
131565
  if (message.role === "assistant" && merged.length > 0) {
131562
131566
  const lastMessage = merged[merged.length - 1];
131563
131567
  if (lastMessage.role === "assistant") {
131564
- const combinedContent = [
131565
- typeof lastMessage.content === "string" ? lastMessage.content : "",
131566
- typeof message.content === "string" ? message.content : ""
131567
- ].filter(Boolean).join("");
131568
+ const lastContent = lastMessage.content;
131569
+ const currentContent = message.content;
131570
+ const useArrayFormat = Array.isArray(lastContent) || Array.isArray(currentContent);
131571
+ let combinedContent;
131572
+ if (useArrayFormat) {
131573
+ const lastParts = Array.isArray(lastContent) ? lastContent : typeof lastContent === "string" && lastContent ? [{ type: "text", text: lastContent }] : [];
131574
+ const currentParts = Array.isArray(currentContent) ? currentContent : typeof currentContent === "string" && currentContent ? [{ type: "text", text: currentContent }] : [];
131575
+ combinedContent = [
131576
+ ...lastParts,
131577
+ ...currentParts
131578
+ ];
131579
+ } else {
131580
+ const lastText = typeof lastContent === "string" ? lastContent : "";
131581
+ const currentText = typeof currentContent === "string" ? currentContent : "";
131582
+ const mergedText = [lastText, currentText].filter(Boolean).join("");
131583
+ combinedContent = mergedText || null;
131584
+ }
131568
131585
  const lastToolCalls = "tool_calls" in lastMessage ? lastMessage.tool_calls || [] : [];
131569
131586
  const currentToolCalls = "tool_calls" in message ? message.tool_calls || [] : [];
131570
131587
  const combinedToolCalls = [...lastToolCalls, ...currentToolCalls];
@@ -154418,7 +154435,7 @@ __export(geminiContentGenerator_exports, {
154418
154435
  createGeminiContentGenerator: () => createGeminiContentGenerator
154419
154436
  });
154420
154437
  function createGeminiContentGenerator(config2, gcConfig) {
154421
- const version2 = "0.6.0";
154438
+ const version2 = "0.6.1-nightly.20260107.2c285394";
154422
154439
  const userAgent2 = config2.userAgent || `QwenCode/${version2} (${process.platform}; ${process.arch})`;
154423
154440
  const baseHeaders = {
154424
154441
  "User-Agent": userAgent2
@@ -169268,10 +169285,10 @@ var init_terminalSerializer = __esm({
169268
169285
  });
169269
169286
 
169270
169287
  // packages/core/dist/src/services/shellExecutionService.js
169271
- import { spawn as cpSpawn } from "node:child_process";
169288
+ import { spawn as cpSpawn, spawnSync as spawnSync2 } from "node:child_process";
169272
169289
  import { TextDecoder as TextDecoder2 } from "node:util";
169273
169290
  import os12 from "node:os";
169274
- var import_headless, Terminal, SIGKILL_TIMEOUT_MS, getFullBufferText, ShellExecutionService;
169291
+ var import_headless, Terminal, SIGKILL_TIMEOUT_MS, getFullBufferText, windowsStrategy, posixStrategy, getCleanupStrategy, ShellExecutionService;
169275
169292
  var init_shellExecutionService = __esm({
169276
169293
  "packages/core/dist/src/services/shellExecutionService.js"() {
169277
169294
  "use strict";
@@ -169294,11 +169311,58 @@ var init_shellExecutionService = __esm({
169294
169311
  }
169295
169312
  return lines.join("\n").trimEnd();
169296
169313
  }, "getFullBufferText");
169297
- ShellExecutionService = class {
169314
+ windowsStrategy = {
169315
+ killPty: /* @__PURE__ */ __name((_pid, pty) => {
169316
+ pty.ptyProcess.kill();
169317
+ }, "killPty"),
169318
+ killChildProcesses: /* @__PURE__ */ __name((pids) => {
169319
+ if (pids.size > 0) {
169320
+ try {
169321
+ const args = ["/f", "/t"];
169322
+ for (const pid of pids) {
169323
+ args.push("/pid", pid.toString());
169324
+ }
169325
+ spawnSync2("taskkill", args);
169326
+ } catch {
169327
+ }
169328
+ }
169329
+ }, "killChildProcesses")
169330
+ };
169331
+ posixStrategy = {
169332
+ killPty: /* @__PURE__ */ __name((pid, _pty) => {
169333
+ process.kill(-pid, "SIGKILL");
169334
+ }, "killPty"),
169335
+ killChildProcesses: /* @__PURE__ */ __name((pids) => {
169336
+ for (const pid of pids) {
169337
+ try {
169338
+ process.kill(-pid, "SIGKILL");
169339
+ } catch {
169340
+ }
169341
+ }
169342
+ }, "killChildProcesses")
169343
+ };
169344
+ getCleanupStrategy = /* @__PURE__ */ __name(() => os12.platform() === "win32" ? windowsStrategy : posixStrategy, "getCleanupStrategy");
169345
+ ShellExecutionService = class _ShellExecutionService {
169298
169346
  static {
169299
169347
  __name(this, "ShellExecutionService");
169300
169348
  }
169301
169349
  static activePtys = /* @__PURE__ */ new Map();
169350
+ static activeChildProcesses = /* @__PURE__ */ new Set();
169351
+ static cleanup() {
169352
+ const strategy = getCleanupStrategy();
169353
+ for (const [pid, pty] of this.activePtys) {
169354
+ try {
169355
+ strategy.killPty(pid, pty);
169356
+ } catch {
169357
+ }
169358
+ }
169359
+ strategy.killChildProcesses(this.activeChildProcesses);
169360
+ }
169361
+ static {
169362
+ process.on("exit", () => {
169363
+ _ShellExecutionService.cleanup();
169364
+ });
169365
+ }
169302
169366
  /**
169303
169367
  * Executes a shell command using `node-pty`, capturing all output and lifecycle events.
169304
169368
  *
@@ -169329,7 +169393,7 @@ var init_shellExecutionService = __esm({
169329
169393
  stdio: ["ignore", "pipe", "pipe"],
169330
169394
  windowsVerbatimArguments: true,
169331
169395
  shell: isWindows8 ? true : "bash",
169332
- detached: !isWindows8,
169396
+ detached: true,
169333
169397
  env: {
169334
169398
  ...process.env,
169335
169399
  QWEN_CODE: "1",
@@ -169425,9 +169489,12 @@ var init_shellExecutionService = __esm({
169425
169489
  }
169426
169490
  }, "abortHandler");
169427
169491
  abortSignal.addEventListener("abort", abortHandler, { once: true });
169492
+ if (child.pid) {
169493
+ this.activeChildProcesses.add(child.pid);
169494
+ }
169428
169495
  child.on("exit", (code2, signal) => {
169429
169496
  if (child.pid) {
169430
- this.activePtys.delete(child.pid);
169497
+ this.activeChildProcesses.delete(child.pid);
169431
169498
  }
169432
169499
  handleExit(code2, signal);
169433
169500
  });
@@ -169451,7 +169518,7 @@ var init_shellExecutionService = __esm({
169451
169518
  }
169452
169519
  __name(cleanup, "cleanup");
169453
169520
  });
169454
- return { pid: void 0, result };
169521
+ return { pid: child.pid, result };
169455
169522
  } catch (e4) {
169456
169523
  const error2 = e4;
169457
169524
  return {
@@ -170730,9 +170797,12 @@ var init_shell = __esm({
170730
170797
  const processedCommand = this.addCoAuthorToGitCommit(strippedCommand);
170731
170798
  const shouldRunInBackground = this.params.is_background;
170732
170799
  let finalCommand = processedCommand;
170733
- if (shouldRunInBackground && !finalCommand.trim().endsWith("&")) {
170800
+ if (!isWindows8 && shouldRunInBackground && !finalCommand.trim().endsWith("&")) {
170734
170801
  finalCommand = finalCommand.trim() + " &";
170735
170802
  }
170803
+ if (isWindows8 && shouldRunInBackground) {
170804
+ finalCommand = finalCommand.trim().replace(/&+$/, "").trim();
170805
+ }
170736
170806
  const commandToExecute = isWindows8 ? finalCommand : (() => {
170737
170807
  let command2 = finalCommand.trim();
170738
170808
  if (!command2.endsWith("&"))
@@ -170744,9 +170814,6 @@ var init_shell = __esm({
170744
170814
  let lastUpdateTime = Date.now();
170745
170815
  let isBinaryStream = false;
170746
170816
  const { result: resultPromise, pid } = await ShellExecutionService.execute(commandToExecute, cwd7, (event) => {
170747
- if (!updateOutput2) {
170748
- return;
170749
- }
170750
170817
  let shouldUpdate = false;
170751
170818
  switch (event.type) {
170752
170819
  case "data":
@@ -170771,7 +170838,7 @@ var init_shell = __esm({
170771
170838
  throw new Error("An unhandled ShellOutputEvent was found.");
170772
170839
  }
170773
170840
  }
170774
- if (shouldUpdate) {
170841
+ if (shouldUpdate && updateOutput2) {
170775
170842
  updateOutput2(typeof cumulativeOutput === "string" ? cumulativeOutput : { ansiOutput: cumulativeOutput });
170776
170843
  lastUpdateTime = Date.now();
170777
170844
  }
@@ -170779,6 +170846,14 @@ var init_shell = __esm({
170779
170846
  if (pid && setPidCallback) {
170780
170847
  setPidCallback(pid);
170781
170848
  }
170849
+ if (shouldRunInBackground) {
170850
+ const pidMsg = pid ? ` PID: ${pid}` : "";
170851
+ const killHint = isWindows8 ? " (Use taskkill /F /T /PID <pid> to stop)" : " (Use kill <pid> to stop)";
170852
+ return {
170853
+ llmContent: `Background command started.${pidMsg}${killHint}`,
170854
+ returnDisplay: `Background command started.${pidMsg}${killHint}`
170855
+ };
170856
+ }
170782
170857
  const result = await resultPromise;
170783
170858
  const backgroundPIDs = [];
170784
170859
  if (os14.platform() !== "win32") {
@@ -202396,16 +202471,16 @@ var require_cross_spawn = __commonJS({
202396
202471
  return spawned;
202397
202472
  }
202398
202473
  __name(spawn11, "spawn");
202399
- function spawnSync5(command2, args, options2) {
202474
+ function spawnSync6(command2, args, options2) {
202400
202475
  const parsed = parse13(command2, args, options2);
202401
202476
  const result = cp2.spawnSync(parsed.command, parsed.args, parsed.options);
202402
202477
  result.error = result.error || enoent.verifyENOENTSync(result.status, parsed);
202403
202478
  return result;
202404
202479
  }
202405
- __name(spawnSync5, "spawnSync");
202480
+ __name(spawnSync6, "spawnSync");
202406
202481
  module2.exports = spawn11;
202407
202482
  module2.exports.spawn = spawn11;
202408
- module2.exports.sync = spawnSync5;
202483
+ module2.exports.sync = spawnSync6;
202409
202484
  module2.exports._parse = parse13;
202410
202485
  module2.exports._enoent = enoent;
202411
202486
  }
@@ -287084,6 +287159,842 @@ var require_ajv3 = __commonJS({
287084
287159
  }
287085
287160
  });
287086
287161
 
287162
+ // packages/cli/src/i18n/locales/de.js
287163
+ var de_exports = {};
287164
+ __export(de_exports, {
287165
+ default: () => de_default
287166
+ });
287167
+ var de_default;
287168
+ var init_de = __esm({
287169
+ "packages/cli/src/i18n/locales/de.js"() {
287170
+ "use strict";
287171
+ init_esbuild_shims();
287172
+ de_default = {
287173
+ // ============================================================================
287174
+ // Help / UI Components
287175
+ // ============================================================================
287176
+ "Basics:": "Grundlagen:",
287177
+ "Add context": "Kontext hinzuf\xFCgen",
287178
+ "Use {{symbol}} to specify files for context (e.g., {{example}}) to target specific files or folders.": "Verwenden Sie {{symbol}}, um Dateien als Kontext anzugeben (z.B. {{example}}), um bestimmte Dateien oder Ordner auszuw\xE4hlen.",
287179
+ "@": "@",
287180
+ "@src/myFile.ts": "@src/myFile.ts",
287181
+ "Shell mode": "Shell-Modus",
287182
+ "YOLO mode": "YOLO-Modus",
287183
+ "plan mode": "Planungsmodus",
287184
+ "auto-accept edits": "\xC4nderungen automatisch akzeptieren",
287185
+ "Accepting edits": "\xC4nderungen werden akzeptiert",
287186
+ "(shift + tab to cycle)": "(Umschalt + Tab zum Wechseln)",
287187
+ "Execute shell commands via {{symbol}} (e.g., {{example1}}) or use natural language (e.g., {{example2}}).": "Shell-Befehle \xFCber {{symbol}} ausf\xFChren (z.B. {{example1}}) oder nat\xFCrliche Sprache verwenden (z.B. {{example2}}).",
287188
+ "!": "!",
287189
+ "!npm run start": "!npm run start",
287190
+ "start server": "Server starten",
287191
+ "Commands:": "Befehle:",
287192
+ "shell command": "Shell-Befehl",
287193
+ "Model Context Protocol command (from external servers)": "Model Context Protocol Befehl (von externen Servern)",
287194
+ "Keyboard Shortcuts:": "Tastenk\xFCrzel:",
287195
+ "Jump through words in the input": "W\xF6rter in der Eingabe \xFCberspringen",
287196
+ "Close dialogs, cancel requests, or quit application": "Dialoge schlie\xDFen, Anfragen abbrechen oder Anwendung beenden",
287197
+ "New line": "Neue Zeile",
287198
+ "New line (Alt+Enter works for certain linux distros)": "Neue Zeile (Alt+Enter funktioniert bei bestimmten Linux-Distributionen)",
287199
+ "Clear the screen": "Bildschirm l\xF6schen",
287200
+ "Open input in external editor": "Eingabe in externem Editor \xF6ffnen",
287201
+ "Send message": "Nachricht senden",
287202
+ "Initializing...": "Initialisierung...",
287203
+ "Connecting to MCP servers... ({{connected}}/{{total}})": "Verbindung zu MCP-Servern wird hergestellt... ({{connected}}/{{total}})",
287204
+ "Type your message or @path/to/file": "Nachricht eingeben oder @Pfad/zur/Datei",
287205
+ "Press 'i' for INSERT mode and 'Esc' for NORMAL mode.": "Dr\xFCcken Sie 'i' f\xFCr den EINF\xDCGE-Modus und 'Esc' f\xFCr den NORMAL-Modus.",
287206
+ "Cancel operation / Clear input (double press)": "Vorgang abbrechen / Eingabe l\xF6schen (doppelt dr\xFCcken)",
287207
+ "Cycle approval modes": "Genehmigungsmodi durchschalten",
287208
+ "Cycle through your prompt history": "Eingabeverlauf durchbl\xE4ttern",
287209
+ "For a full list of shortcuts, see {{docPath}}": "Eine vollst\xE4ndige Liste der Tastenk\xFCrzel finden Sie unter {{docPath}}",
287210
+ "docs/keyboard-shortcuts.md": "docs/keyboard-shortcuts.md",
287211
+ "for help on Qwen Code": "f\xFCr Hilfe zu Qwen Code",
287212
+ "show version info": "Versionsinformationen anzeigen",
287213
+ "submit a bug report": "Fehlerbericht einreichen",
287214
+ "About Qwen Code": "\xDCber Qwen Code",
287215
+ // ============================================================================
287216
+ // System Information Fields
287217
+ // ============================================================================
287218
+ "CLI Version": "CLI-Version",
287219
+ "Git Commit": "Git-Commit",
287220
+ Model: "Modell",
287221
+ Sandbox: "Sandbox",
287222
+ "OS Platform": "Betriebssystem",
287223
+ "OS Arch": "OS-Architektur",
287224
+ "OS Release": "OS-Version",
287225
+ "Node.js Version": "Node.js-Version",
287226
+ "NPM Version": "NPM-Version",
287227
+ "Session ID": "Sitzungs-ID",
287228
+ "Auth Method": "Authentifizierungsmethode",
287229
+ "Base URL": "Basis-URL",
287230
+ "Memory Usage": "Speichernutzung",
287231
+ "IDE Client": "IDE-Client",
287232
+ // ============================================================================
287233
+ // Commands - General
287234
+ // ============================================================================
287235
+ "Analyzes the project and creates a tailored QWEN.md file.": "Analysiert das Projekt und erstellt eine ma\xDFgeschneiderte QWEN.md-Datei.",
287236
+ "list available Qwen Code tools. Usage: /tools [desc]": "Verf\xFCgbare Qwen Code Werkzeuge auflisten. Verwendung: /tools [desc]",
287237
+ "Available Qwen Code CLI tools:": "Verf\xFCgbare Qwen Code CLI-Werkzeuge:",
287238
+ "No tools available": "Keine Werkzeuge verf\xFCgbar",
287239
+ "View or change the approval mode for tool usage": "Genehmigungsmodus f\xFCr Werkzeugnutzung anzeigen oder \xE4ndern",
287240
+ "View or change the language setting": "Spracheinstellung anzeigen oder \xE4ndern",
287241
+ "change the theme": "Design \xE4ndern",
287242
+ "Select Theme": "Design ausw\xE4hlen",
287243
+ Preview: "Vorschau",
287244
+ "(Use Enter to select, Tab to configure scope)": "(Enter zum Ausw\xE4hlen, Tab zum Konfigurieren des Bereichs)",
287245
+ "(Use Enter to apply scope, Tab to select theme)": "(Enter zum Anwenden des Bereichs, Tab zum Ausw\xE4hlen des Designs)",
287246
+ "Theme configuration unavailable due to NO_COLOR env variable.": "Design-Konfiguration aufgrund der NO_COLOR-Umgebungsvariable nicht verf\xFCgbar.",
287247
+ 'Theme "{{themeName}}" not found.': 'Design "{{themeName}}" nicht gefunden.',
287248
+ 'Theme "{{themeName}}" not found in selected scope.': 'Design "{{themeName}}" im ausgew\xE4hlten Bereich nicht gefunden.',
287249
+ "Clear conversation history and free up context": "Gespr\xE4chsverlauf l\xF6schen und Kontext freigeben",
287250
+ "Compresses the context by replacing it with a summary.": "Komprimiert den Kontext durch Ersetzen mit einer Zusammenfassung.",
287251
+ "open full Qwen Code documentation in your browser": "Vollst\xE4ndige Qwen Code Dokumentation im Browser \xF6ffnen",
287252
+ "Configuration not available.": "Konfiguration nicht verf\xFCgbar.",
287253
+ "change the auth method": "Authentifizierungsmethode \xE4ndern",
287254
+ "Copy the last result or code snippet to clipboard": "Letztes Ergebnis oder Codeausschnitt in die Zwischenablage kopieren",
287255
+ // ============================================================================
287256
+ // Commands - Agents
287257
+ // ============================================================================
287258
+ "Manage subagents for specialized task delegation.": "Unteragenten f\xFCr spezialisierte Aufgabendelegation verwalten.",
287259
+ "Manage existing subagents (view, edit, delete).": "Bestehende Unteragenten verwalten (anzeigen, bearbeiten, l\xF6schen).",
287260
+ "Create a new subagent with guided setup.": "Neuen Unteragenten mit gef\xFChrter Einrichtung erstellen.",
287261
+ // ============================================================================
287262
+ // Agents - Management Dialog
287263
+ // ============================================================================
287264
+ Agents: "Agenten",
287265
+ "Choose Action": "Aktion w\xE4hlen",
287266
+ "Edit {{name}}": "{{name}} bearbeiten",
287267
+ "Edit Tools: {{name}}": "Werkzeuge bearbeiten: {{name}}",
287268
+ "Edit Color: {{name}}": "Farbe bearbeiten: {{name}}",
287269
+ "Delete {{name}}": "{{name}} l\xF6schen",
287270
+ "Unknown Step": "Unbekannter Schritt",
287271
+ "Esc to close": "Esc zum Schlie\xDFen",
287272
+ "Enter to select, \u2191\u2193 to navigate, Esc to close": "Enter zum Ausw\xE4hlen, \u2191\u2193 zum Navigieren, Esc zum Schlie\xDFen",
287273
+ "Esc to go back": "Esc zum Zur\xFCckgehen",
287274
+ "Enter to confirm, Esc to cancel": "Enter zum Best\xE4tigen, Esc zum Abbrechen",
287275
+ "Enter to select, \u2191\u2193 to navigate, Esc to go back": "Enter zum Ausw\xE4hlen, \u2191\u2193 zum Navigieren, Esc zum Zur\xFCckgehen",
287276
+ "Invalid step: {{step}}": "Ung\xFCltiger Schritt: {{step}}",
287277
+ "No subagents found.": "Keine Unteragenten gefunden.",
287278
+ "Use '/agents create' to create your first subagent.": "Verwenden Sie '/agents create', um Ihren ersten Unteragenten zu erstellen.",
287279
+ "(built-in)": "(integriert)",
287280
+ "(overridden by project level agent)": "(\xFCberschrieben durch Projektagent)",
287281
+ "Project Level ({{path}})": "Projektebene ({{path}})",
287282
+ "User Level ({{path}})": "Benutzerebene ({{path}})",
287283
+ "Built-in Agents": "Integrierte Agenten",
287284
+ "Using: {{count}} agents": "Verwendet: {{count}} Agenten",
287285
+ "View Agent": "Agent anzeigen",
287286
+ "Edit Agent": "Agent bearbeiten",
287287
+ "Delete Agent": "Agent l\xF6schen",
287288
+ Back: "Zur\xFCck",
287289
+ "No agent selected": "Kein Agent ausgew\xE4hlt",
287290
+ "File Path: ": "Dateipfad: ",
287291
+ "Tools: ": "Werkzeuge: ",
287292
+ "Color: ": "Farbe: ",
287293
+ "Description:": "Beschreibung:",
287294
+ "System Prompt:": "System-Prompt:",
287295
+ "Open in editor": "Im Editor \xF6ffnen",
287296
+ "Edit tools": "Werkzeuge bearbeiten",
287297
+ "Edit color": "Farbe bearbeiten",
287298
+ "\u274C Error:": "\u274C Fehler:",
287299
+ 'Are you sure you want to delete agent "{{name}}"?': 'Sind Sie sicher, dass Sie den Agenten "{{name}}" l\xF6schen m\xF6chten?',
287300
+ // ============================================================================
287301
+ // Agents - Creation Wizard
287302
+ // ============================================================================
287303
+ "Project Level (.qwen/agents/)": "Projektebene (.qwen/agents/)",
287304
+ "User Level (~/.qwen/agents/)": "Benutzerebene (~/.qwen/agents/)",
287305
+ "\u2705 Subagent Created Successfully!": "\u2705 Unteragent erfolgreich erstellt!",
287306
+ 'Subagent "{{name}}" has been saved to {{level}} level.': 'Unteragent "{{name}}" wurde auf {{level}}-Ebene gespeichert.',
287307
+ "Name: ": "Name: ",
287308
+ "Location: ": "Speicherort: ",
287309
+ "\u274C Error saving subagent:": "\u274C Fehler beim Speichern des Unteragenten:",
287310
+ "Warnings:": "Warnungen:",
287311
+ 'Name "{{name}}" already exists at {{level}} level - will overwrite existing subagent': 'Name "{{name}}" existiert bereits auf {{level}}-Ebene - bestehender Unteragent wird \xFCberschrieben',
287312
+ 'Name "{{name}}" exists at user level - project level will take precedence': 'Name "{{name}}" existiert auf Benutzerebene - Projektebene hat Vorrang',
287313
+ 'Name "{{name}}" exists at project level - existing subagent will take precedence': 'Name "{{name}}" existiert auf Projektebene - bestehender Unteragent hat Vorrang',
287314
+ "Description is over {{length}} characters": "Beschreibung ist \xFCber {{length}} Zeichen",
287315
+ "System prompt is over {{length}} characters": "System-Prompt ist \xFCber {{length}} Zeichen",
287316
+ // Agents - Creation Wizard Steps
287317
+ "Step {{n}}: Choose Location": "Schritt {{n}}: Speicherort w\xE4hlen",
287318
+ "Step {{n}}: Choose Generation Method": "Schritt {{n}}: Generierungsmethode w\xE4hlen",
287319
+ "Generate with Qwen Code (Recommended)": "Mit Qwen Code generieren (Empfohlen)",
287320
+ "Manual Creation": "Manuelle Erstellung",
287321
+ "Describe what this subagent should do and when it should be used. (Be comprehensive for best results)": "Beschreiben Sie, was dieser Unteragent tun soll und wann er verwendet werden soll. (Ausf\xFChrliche Beschreibung f\xFCr beste Ergebnisse)",
287322
+ "e.g., Expert code reviewer that reviews code based on best practices...": "z.B. Experte f\xFCr Code-Reviews, der Code nach Best Practices \xFCberpr\xFCft...",
287323
+ "Generating subagent configuration...": "Unteragent-Konfiguration wird generiert...",
287324
+ "Failed to generate subagent: {{error}}": "Fehler beim Generieren des Unteragenten: {{error}}",
287325
+ "Step {{n}}: Describe Your Subagent": "Schritt {{n}}: Unteragent beschreiben",
287326
+ "Step {{n}}: Enter Subagent Name": "Schritt {{n}}: Unteragent-Name eingeben",
287327
+ "Step {{n}}: Enter System Prompt": "Schritt {{n}}: System-Prompt eingeben",
287328
+ "Step {{n}}: Enter Description": "Schritt {{n}}: Beschreibung eingeben",
287329
+ // Agents - Tool Selection
287330
+ "Step {{n}}: Select Tools": "Schritt {{n}}: Werkzeuge ausw\xE4hlen",
287331
+ "All Tools (Default)": "Alle Werkzeuge (Standard)",
287332
+ "All Tools": "Alle Werkzeuge",
287333
+ "Read-only Tools": "Nur-Lese-Werkzeuge",
287334
+ "Read & Edit Tools": "Lese- und Bearbeitungswerkzeuge",
287335
+ "Read & Edit & Execution Tools": "Lese-, Bearbeitungs- und Ausf\xFChrungswerkzeuge",
287336
+ "All tools selected, including MCP tools": "Alle Werkzeuge ausgew\xE4hlt, einschlie\xDFlich MCP-Werkzeuge",
287337
+ "Selected tools:": "Ausgew\xE4hlte Werkzeuge:",
287338
+ "Read-only tools:": "Nur-Lese-Werkzeuge:",
287339
+ "Edit tools:": "Bearbeitungswerkzeuge:",
287340
+ "Execution tools:": "Ausf\xFChrungswerkzeuge:",
287341
+ "Step {{n}}: Choose Background Color": "Schritt {{n}}: Hintergrundfarbe w\xE4hlen",
287342
+ "Step {{n}}: Confirm and Save": "Schritt {{n}}: Best\xE4tigen und Speichern",
287343
+ // Agents - Navigation & Instructions
287344
+ "Esc to cancel": "Esc zum Abbrechen",
287345
+ "Press Enter to save, e to save and edit, Esc to go back": "Enter zum Speichern, e zum Speichern und Bearbeiten, Esc zum Zur\xFCckgehen",
287346
+ "Press Enter to continue, {{navigation}}Esc to {{action}}": "Enter zum Fortfahren, {{navigation}}Esc zum {{action}}",
287347
+ cancel: "Abbrechen",
287348
+ "go back": "Zur\xFCckgehen",
287349
+ "\u2191\u2193 to navigate, ": "\u2191\u2193 zum Navigieren, ",
287350
+ "Enter a clear, unique name for this subagent.": "Geben Sie einen eindeutigen Namen f\xFCr diesen Unteragenten ein.",
287351
+ "e.g., Code Reviewer": "z.B. Code-Reviewer",
287352
+ "Name cannot be empty.": "Name darf nicht leer sein.",
287353
+ "Write the system prompt that defines this subagent's behavior. Be comprehensive for best results.": "Schreiben Sie den System-Prompt, der das Verhalten dieses Unteragenten definiert. Ausf\xFChrlich f\xFCr beste Ergebnisse.",
287354
+ "e.g., You are an expert code reviewer...": "z.B. Sie sind ein Experte f\xFCr Code-Reviews...",
287355
+ "System prompt cannot be empty.": "System-Prompt darf nicht leer sein.",
287356
+ "Describe when and how this subagent should be used.": "Beschreiben Sie, wann und wie dieser Unteragent verwendet werden soll.",
287357
+ "e.g., Reviews code for best practices and potential bugs.": "z.B. \xDCberpr\xFCft Code auf Best Practices und m\xF6gliche Fehler.",
287358
+ "Description cannot be empty.": "Beschreibung darf nicht leer sein.",
287359
+ "Failed to launch editor: {{error}}": "Fehler beim Starten des Editors: {{error}}",
287360
+ "Failed to save and edit subagent: {{error}}": "Fehler beim Speichern und Bearbeiten des Unteragenten: {{error}}",
287361
+ // ============================================================================
287362
+ // Commands - General (continued)
287363
+ // ============================================================================
287364
+ "View and edit Qwen Code settings": "Qwen Code Einstellungen anzeigen und bearbeiten",
287365
+ Settings: "Einstellungen",
287366
+ "(Use Enter to select{{tabText}})": "(Enter zum Ausw\xE4hlen{{tabText}})",
287367
+ ", Tab to change focus": ", Tab zum Fokuswechsel",
287368
+ "To see changes, Qwen Code must be restarted. Press r to exit and apply changes now.": "Um \xC4nderungen zu sehen, muss Qwen Code neu gestartet werden. Dr\xFCcken Sie r, um jetzt zu beenden und \xC4nderungen anzuwenden.",
287369
+ 'The command "/{{command}}" is not supported in non-interactive mode.': 'Der Befehl "/{{command}}" wird im nicht-interaktiven Modus nicht unterst\xFCtzt.',
287370
+ // ============================================================================
287371
+ // Settings Labels
287372
+ // ============================================================================
287373
+ "Vim Mode": "Vim-Modus",
287374
+ "Disable Auto Update": "Automatische Updates deaktivieren",
287375
+ "Enable Prompt Completion": "Eingabevervollst\xE4ndigung aktivieren",
287376
+ "Debug Keystroke Logging": "Debug-Protokollierung von Tastatureingaben",
287377
+ Language: "Sprache",
287378
+ "Output Format": "Ausgabeformat",
287379
+ "Hide Window Title": "Fenstertitel ausblenden",
287380
+ "Show Status in Title": "Status im Titel anzeigen",
287381
+ "Hide Tips": "Tipps ausblenden",
287382
+ "Hide Banner": "Banner ausblenden",
287383
+ "Hide Context Summary": "Kontextzusammenfassung ausblenden",
287384
+ "Hide CWD": "Arbeitsverzeichnis ausblenden",
287385
+ "Hide Sandbox Status": "Sandbox-Status ausblenden",
287386
+ "Hide Model Info": "Modellinformationen ausblenden",
287387
+ "Hide Footer": "Fu\xDFzeile ausblenden",
287388
+ "Show Memory Usage": "Speichernutzung anzeigen",
287389
+ "Show Line Numbers": "Zeilennummern anzeigen",
287390
+ "Show Citations": "Quellenangaben anzeigen",
287391
+ "Custom Witty Phrases": "Benutzerdefinierte Witzige Spr\xFCche",
287392
+ "Enable Welcome Back": "Willkommen-zur\xFCck aktivieren",
287393
+ "Disable Loading Phrases": "Ladespr\xFCche deaktivieren",
287394
+ "Screen Reader Mode": "Bildschirmleser-Modus",
287395
+ "IDE Mode": "IDE-Modus",
287396
+ "Max Session Turns": "Maximale Sitzungsrunden",
287397
+ "Skip Next Speaker Check": "N\xE4chste-Sprecher-Pr\xFCfung \xFCberspringen",
287398
+ "Skip Loop Detection": "Schleifenerkennung \xFCberspringen",
287399
+ "Skip Startup Context": "Startkontext \xFCberspringen",
287400
+ "Enable OpenAI Logging": "OpenAI-Protokollierung aktivieren",
287401
+ "OpenAI Logging Directory": "OpenAI-Protokollierungsverzeichnis",
287402
+ Timeout: "Zeitlimit",
287403
+ "Max Retries": "Maximale Wiederholungen",
287404
+ "Disable Cache Control": "Cache-Steuerung deaktivieren",
287405
+ "Memory Discovery Max Dirs": "Maximale Verzeichnisse f\xFCr Speichererkennung",
287406
+ "Load Memory From Include Directories": "Speicher aus Include-Verzeichnissen laden",
287407
+ "Respect .gitignore": ".gitignore beachten",
287408
+ "Respect .qwenignore": ".qwenignore beachten",
287409
+ "Enable Recursive File Search": "Rekursive Dateisuche aktivieren",
287410
+ "Disable Fuzzy Search": "Unscharfe Suche deaktivieren",
287411
+ "Enable Interactive Shell": "Interaktive Shell aktivieren",
287412
+ "Show Color": "Farbe anzeigen",
287413
+ "Auto Accept": "Automatisch akzeptieren",
287414
+ "Use Ripgrep": "Ripgrep verwenden",
287415
+ "Use Builtin Ripgrep": "Integriertes Ripgrep verwenden",
287416
+ "Enable Tool Output Truncation": "Werkzeugausgabe-K\xFCrzung aktivieren",
287417
+ "Tool Output Truncation Threshold": "Schwellenwert f\xFCr Werkzeugausgabe-K\xFCrzung",
287418
+ "Tool Output Truncation Lines": "Zeilen f\xFCr Werkzeugausgabe-K\xFCrzung",
287419
+ "Folder Trust": "Ordnervertrauen",
287420
+ "Vision Model Preview": "Vision-Modell-Vorschau",
287421
+ "Tool Schema Compliance": "Werkzeug-Schema-Konformit\xE4t",
287422
+ // Settings enum options
287423
+ "Auto (detect from system)": "Automatisch (vom System erkennen)",
287424
+ Text: "Text",
287425
+ JSON: "JSON",
287426
+ Plan: "Plan",
287427
+ Default: "Standard",
287428
+ "Auto Edit": "Automatisch bearbeiten",
287429
+ YOLO: "YOLO",
287430
+ "toggle vim mode on/off": "Vim-Modus ein-/ausschalten",
287431
+ "check session stats. Usage: /stats [model|tools]": "Sitzungsstatistiken pr\xFCfen. Verwendung: /stats [model|tools]",
287432
+ "Show model-specific usage statistics.": "Modellspezifische Nutzungsstatistiken anzeigen.",
287433
+ "Show tool-specific usage statistics.": "Werkzeugspezifische Nutzungsstatistiken anzeigen.",
287434
+ "exit the cli": "CLI beenden",
287435
+ "list configured MCP servers and tools, or authenticate with OAuth-enabled servers": "Konfigurierte MCP-Server und Werkzeuge auflisten oder mit OAuth-f\xE4higen Servern authentifizieren",
287436
+ "Manage workspace directories": "Arbeitsbereichsverzeichnisse verwalten",
287437
+ "Add directories to the workspace. Use comma to separate multiple paths": "Verzeichnisse zum Arbeitsbereich hinzuf\xFCgen. Komma zum Trennen mehrerer Pfade verwenden",
287438
+ "Show all directories in the workspace": "Alle Verzeichnisse im Arbeitsbereich anzeigen",
287439
+ "set external editor preference": "Externen Editor festlegen",
287440
+ "Manage extensions": "Erweiterungen verwalten",
287441
+ "List active extensions": "Aktive Erweiterungen auflisten",
287442
+ "Update extensions. Usage: update <extension-names>|--all": "Erweiterungen aktualisieren. Verwendung: update <Erweiterungsnamen>|--all",
287443
+ "manage IDE integration": "IDE-Integration verwalten",
287444
+ "check status of IDE integration": "Status der IDE-Integration pr\xFCfen",
287445
+ "install required IDE companion for {{ideName}}": "Erforderlichen IDE-Begleiter f\xFCr {{ideName}} installieren",
287446
+ "enable IDE integration": "IDE-Integration aktivieren",
287447
+ "disable IDE integration": "IDE-Integration deaktivieren",
287448
+ "IDE integration is not supported in your current environment. To use this feature, run Qwen Code in one of these supported IDEs: VS Code or VS Code forks.": "IDE-Integration wird in Ihrer aktuellen Umgebung nicht unterst\xFCtzt. Um diese Funktion zu nutzen, f\xFChren Sie Qwen Code in einer dieser unterst\xFCtzten IDEs aus: VS Code oder VS Code-Forks.",
287449
+ "Set up GitHub Actions": "GitHub Actions einrichten",
287450
+ "Configure terminal keybindings for multiline input (VS Code, Cursor, Windsurf, Trae)": "Terminal-Tastenbelegungen f\xFCr mehrzeilige Eingabe konfigurieren (VS Code, Cursor, Windsurf, Trae)",
287451
+ "Please restart your terminal for the changes to take effect.": "Bitte starten Sie Ihr Terminal neu, damit die \xC4nderungen wirksam werden.",
287452
+ "Failed to configure terminal: {{error}}": "Fehler beim Konfigurieren des Terminals: {{error}}",
287453
+ "Could not determine {{terminalName}} config path on Windows: APPDATA environment variable is not set.": "Konnte {{terminalName}}-Konfigurationspfad unter Windows nicht ermitteln: APPDATA-Umgebungsvariable ist nicht gesetzt.",
287454
+ "{{terminalName}} keybindings.json exists but is not a valid JSON array. Please fix the file manually or delete it to allow automatic configuration.": "{{terminalName}} keybindings.json existiert, ist aber kein g\xFCltiges JSON-Array. Bitte korrigieren Sie die Datei manuell oder l\xF6schen Sie sie, um automatische Konfiguration zu erm\xF6glichen.",
287455
+ "File: {{file}}": "Datei: {{file}}",
287456
+ "Failed to parse {{terminalName}} keybindings.json. The file contains invalid JSON. Please fix the file manually or delete it to allow automatic configuration.": "Fehler beim Parsen von {{terminalName}} keybindings.json. Die Datei enth\xE4lt ung\xFCltiges JSON. Bitte korrigieren Sie die Datei manuell oder l\xF6schen Sie sie, um automatische Konfiguration zu erm\xF6glichen.",
287457
+ "Error: {{error}}": "Fehler: {{error}}",
287458
+ "Shift+Enter binding already exists": "Umschalt+Enter-Belegung existiert bereits",
287459
+ "Ctrl+Enter binding already exists": "Strg+Enter-Belegung existiert bereits",
287460
+ "Existing keybindings detected. Will not modify to avoid conflicts.": "Bestehende Tastenbelegungen erkannt. Keine \xC4nderungen, um Konflikte zu vermeiden.",
287461
+ "Please check and modify manually if needed: {{file}}": "Bitte pr\xFCfen und bei Bedarf manuell \xE4ndern: {{file}}",
287462
+ "Added Shift+Enter and Ctrl+Enter keybindings to {{terminalName}}.": "Umschalt+Enter und Strg+Enter Tastenbelegungen zu {{terminalName}} hinzugef\xFCgt.",
287463
+ "Modified: {{file}}": "Ge\xE4ndert: {{file}}",
287464
+ "{{terminalName}} keybindings already configured.": "{{terminalName}}-Tastenbelegungen bereits konfiguriert.",
287465
+ "Failed to configure {{terminalName}}.": "Fehler beim Konfigurieren von {{terminalName}}.",
287466
+ "Your terminal is already configured for an optimal experience with multiline input (Shift+Enter and Ctrl+Enter).": "Ihr Terminal ist bereits f\xFCr optimale Erfahrung mit mehrzeiliger Eingabe konfiguriert (Umschalt+Enter und Strg+Enter).",
287467
+ "Could not detect terminal type. Supported terminals: VS Code, Cursor, Windsurf, and Trae.": "Terminal-Typ konnte nicht erkannt werden. Unterst\xFCtzte Terminals: VS Code, Cursor, Windsurf und Trae.",
287468
+ 'Terminal "{{terminal}}" is not supported yet.': 'Terminal "{{terminal}}" wird noch nicht unterst\xFCtzt.',
287469
+ // ============================================================================
287470
+ // Commands - Language
287471
+ // ============================================================================
287472
+ "Invalid language. Available: en-US, zh-CN": "Ung\xFCltige Sprache. Verf\xFCgbar: en-US, zh-CN",
287473
+ "Language subcommands do not accept additional arguments.": "Sprach-Unterbefehle akzeptieren keine zus\xE4tzlichen Argumente.",
287474
+ "Current UI language: {{lang}}": "Aktuelle UI-Sprache: {{lang}}",
287475
+ "Current LLM output language: {{lang}}": "Aktuelle LLM-Ausgabesprache: {{lang}}",
287476
+ "LLM output language not set": "LLM-Ausgabesprache nicht festgelegt",
287477
+ "Set UI language": "UI-Sprache festlegen",
287478
+ "Set LLM output language": "LLM-Ausgabesprache festlegen",
287479
+ "Usage: /language ui [zh-CN|en-US]": "Verwendung: /language ui [zh-CN|en-US]",
287480
+ "Usage: /language output <language>": "Verwendung: /language output <Sprache>",
287481
+ "Example: /language output \u4E2D\u6587": "Beispiel: /language output Deutsch",
287482
+ "Example: /language output English": "Beispiel: /language output English",
287483
+ "Example: /language output \u65E5\u672C\u8A9E": "Beispiel: /language output Japanisch",
287484
+ "UI language changed to {{lang}}": "UI-Sprache ge\xE4ndert zu {{lang}}",
287485
+ "LLM output language rule file generated at {{path}}": "LLM-Ausgabesprach-Regeldatei generiert unter {{path}}",
287486
+ "Please restart the application for the changes to take effect.": "Bitte starten Sie die Anwendung neu, damit die \xC4nderungen wirksam werden.",
287487
+ "Failed to generate LLM output language rule file: {{error}}": "Fehler beim Generieren der LLM-Ausgabesprach-Regeldatei: {{error}}",
287488
+ "Invalid command. Available subcommands:": "Ung\xFCltiger Befehl. Verf\xFCgbare Unterbefehle:",
287489
+ "Available subcommands:": "Verf\xFCgbare Unterbefehle:",
287490
+ "To request additional UI language packs, please open an issue on GitHub.": "Um zus\xE4tzliche UI-Sprachpakete anzufordern, \xF6ffnen Sie bitte ein Issue auf GitHub.",
287491
+ "Available options:": "Verf\xFCgbare Optionen:",
287492
+ " - zh-CN: Simplified Chinese": " - zh-CN: Vereinfachtes Chinesisch",
287493
+ " - en-US: English": " - en-US: Englisch",
287494
+ "Set UI language to Simplified Chinese (zh-CN)": "UI-Sprache auf Vereinfachtes Chinesisch (zh-CN) setzen",
287495
+ "Set UI language to English (en-US)": "UI-Sprache auf Englisch (en-US) setzen",
287496
+ // ============================================================================
287497
+ // Commands - Approval Mode
287498
+ // ============================================================================
287499
+ "Approval Mode": "Genehmigungsmodus",
287500
+ "Current approval mode: {{mode}}": "Aktueller Genehmigungsmodus: {{mode}}",
287501
+ "Available approval modes:": "Verf\xFCgbare Genehmigungsmodi:",
287502
+ "Approval mode changed to: {{mode}}": "Genehmigungsmodus ge\xE4ndert zu: {{mode}}",
287503
+ "Approval mode changed to: {{mode}} (saved to {{scope}} settings{{location}})": "Genehmigungsmodus ge\xE4ndert zu: {{mode}} (gespeichert in {{scope}} Einstellungen{{location}})",
287504
+ "Usage: /approval-mode <mode> [--session|--user|--project]": "Verwendung: /approval-mode <Modus> [--session|--user|--project]",
287505
+ "Scope subcommands do not accept additional arguments.": "Bereichs-Unterbefehle akzeptieren keine zus\xE4tzlichen Argumente.",
287506
+ "Plan mode - Analyze only, do not modify files or execute commands": "Planungsmodus - Nur analysieren, keine Dateien \xE4ndern oder Befehle ausf\xFChren",
287507
+ "Default mode - Require approval for file edits or shell commands": "Standardmodus - Genehmigung f\xFCr Dateibearbeitungen oder Shell-Befehle erforderlich",
287508
+ "Auto-edit mode - Automatically approve file edits": "Automatischer Bearbeitungsmodus - Dateibearbeitungen automatisch genehmigen",
287509
+ "YOLO mode - Automatically approve all tools": "YOLO-Modus - Alle Werkzeuge automatisch genehmigen",
287510
+ "{{mode}} mode": "{{mode}}-Modus",
287511
+ "Settings service is not available; unable to persist the approval mode.": "Einstellungsdienst nicht verf\xFCgbar; Genehmigungsmodus kann nicht gespeichert werden.",
287512
+ "Failed to save approval mode: {{error}}": "Fehler beim Speichern des Genehmigungsmodus: {{error}}",
287513
+ "Failed to change approval mode: {{error}}": "Fehler beim \xC4ndern des Genehmigungsmodus: {{error}}",
287514
+ "Apply to current session only (temporary)": "Nur auf aktuelle Sitzung anwenden (tempor\xE4r)",
287515
+ "Persist for this project/workspace": "F\xFCr dieses Projekt/Arbeitsbereich speichern",
287516
+ "Persist for this user on this machine": "F\xFCr diesen Benutzer auf diesem Computer speichern",
287517
+ "Analyze only, do not modify files or execute commands": "Nur analysieren, keine Dateien \xE4ndern oder Befehle ausf\xFChren",
287518
+ "Require approval for file edits or shell commands": "Genehmigung f\xFCr Dateibearbeitungen oder Shell-Befehle erforderlich",
287519
+ "Automatically approve file edits": "Dateibearbeitungen automatisch genehmigen",
287520
+ "Automatically approve all tools": "Alle Werkzeuge automatisch genehmigen",
287521
+ "Workspace approval mode exists and takes priority. User-level change will have no effect.": "Arbeitsbereich-Genehmigungsmodus existiert und hat Vorrang. Benutzerebene-\xC4nderung hat keine Wirkung.",
287522
+ "(Use Enter to select, Tab to change focus)": "(Enter zum Ausw\xE4hlen, Tab zum Fokuswechsel)",
287523
+ "Apply To": "Anwenden auf",
287524
+ "User Settings": "Benutzereinstellungen",
287525
+ "Workspace Settings": "Arbeitsbereich-Einstellungen",
287526
+ // ============================================================================
287527
+ // Commands - Memory
287528
+ // ============================================================================
287529
+ "Commands for interacting with memory.": "Befehle f\xFCr die Interaktion mit dem Speicher.",
287530
+ "Show the current memory contents.": "Aktuellen Speicherinhalt anzeigen.",
287531
+ "Show project-level memory contents.": "Projektebene-Speicherinhalt anzeigen.",
287532
+ "Show global memory contents.": "Globalen Speicherinhalt anzeigen.",
287533
+ "Add content to project-level memory.": "Inhalt zum Projektebene-Speicher hinzuf\xFCgen.",
287534
+ "Add content to global memory.": "Inhalt zum globalen Speicher hinzuf\xFCgen.",
287535
+ "Refresh the memory from the source.": "Speicher aus der Quelle aktualisieren.",
287536
+ "Usage: /memory add --project <text to remember>": "Verwendung: /memory add --project <zu merkender Text>",
287537
+ "Usage: /memory add --global <text to remember>": "Verwendung: /memory add --global <zu merkender Text>",
287538
+ 'Attempting to save to project memory: "{{text}}"': 'Versuche im Projektspeicher zu speichern: "{{text}}"',
287539
+ 'Attempting to save to global memory: "{{text}}"': 'Versuche im globalen Speicher zu speichern: "{{text}}"',
287540
+ "Current memory content from {{count}} file(s):": "Aktueller Speicherinhalt aus {{count}} Datei(en):",
287541
+ "Memory is currently empty.": "Speicher ist derzeit leer.",
287542
+ "Project memory file not found or is currently empty.": "Projektspeicherdatei nicht gefunden oder derzeit leer.",
287543
+ "Global memory file not found or is currently empty.": "Globale Speicherdatei nicht gefunden oder derzeit leer.",
287544
+ "Global memory is currently empty.": "Globaler Speicher ist derzeit leer.",
287545
+ "Global memory content:\n\n---\n{{content}}\n---": "Globaler Speicherinhalt:\n\n---\n{{content}}\n---",
287546
+ "Project memory content from {{path}}:\n\n---\n{{content}}\n---": "Projektspeicherinhalt von {{path}}:\n\n---\n{{content}}\n---",
287547
+ "Project memory is currently empty.": "Projektspeicher ist derzeit leer.",
287548
+ "Refreshing memory from source files...": "Speicher wird aus Quelldateien aktualisiert...",
287549
+ "Add content to the memory. Use --global for global memory or --project for project memory.": "Inhalt zum Speicher hinzuf\xFCgen. --global f\xFCr globalen Speicher oder --project f\xFCr Projektspeicher verwenden.",
287550
+ "Usage: /memory add [--global|--project] <text to remember>": "Verwendung: /memory add [--global|--project] <zu merkender Text>",
287551
+ 'Attempting to save to memory {{scope}}: "{{fact}}"': 'Versuche im Speicher {{scope}} zu speichern: "{{fact}}"',
287552
+ // ============================================================================
287553
+ // Commands - MCP
287554
+ // ============================================================================
287555
+ "Authenticate with an OAuth-enabled MCP server": "Mit einem OAuth-f\xE4higen MCP-Server authentifizieren",
287556
+ "List configured MCP servers and tools": "Konfigurierte MCP-Server und Werkzeuge auflisten",
287557
+ "Restarts MCP servers.": "MCP-Server neu starten.",
287558
+ "Config not loaded.": "Konfiguration nicht geladen.",
287559
+ "Could not retrieve tool registry.": "Werkzeugregister konnte nicht abgerufen werden.",
287560
+ "No MCP servers configured with OAuth authentication.": "Keine MCP-Server mit OAuth-Authentifizierung konfiguriert.",
287561
+ "MCP servers with OAuth authentication:": "MCP-Server mit OAuth-Authentifizierung:",
287562
+ "Use /mcp auth <server-name> to authenticate.": "Verwenden Sie /mcp auth <Servername> zur Authentifizierung.",
287563
+ "MCP server '{{name}}' not found.": "MCP-Server '{{name}}' nicht gefunden.",
287564
+ "Successfully authenticated and refreshed tools for '{{name}}'.": "Erfolgreich authentifiziert und Werkzeuge f\xFCr '{{name}}' aktualisiert.",
287565
+ "Failed to authenticate with MCP server '{{name}}': {{error}}": "Authentifizierung mit MCP-Server '{{name}}' fehlgeschlagen: {{error}}",
287566
+ "Re-discovering tools from '{{name}}'...": "Werkzeuge von '{{name}}' werden neu erkannt...",
287567
+ // ============================================================================
287568
+ // Commands - Chat
287569
+ // ============================================================================
287570
+ "Manage conversation history.": "Gespr\xE4chsverlauf verwalten.",
287571
+ "List saved conversation checkpoints": "Gespeicherte Gespr\xE4chspr\xFCfpunkte auflisten",
287572
+ "No saved conversation checkpoints found.": "Keine gespeicherten Gespr\xE4chspr\xFCfpunkte gefunden.",
287573
+ "List of saved conversations:": "Liste gespeicherter Gespr\xE4che:",
287574
+ "Note: Newest last, oldest first": "Hinweis: Neueste zuletzt, \xE4lteste zuerst",
287575
+ "Save the current conversation as a checkpoint. Usage: /chat save <tag>": "Aktuelles Gespr\xE4ch als Pr\xFCfpunkt speichern. Verwendung: /chat save <Tag>",
287576
+ "Missing tag. Usage: /chat save <tag>": "Tag fehlt. Verwendung: /chat save <Tag>",
287577
+ "Delete a conversation checkpoint. Usage: /chat delete <tag>": "Gespr\xE4chspr\xFCfpunkt l\xF6schen. Verwendung: /chat delete <Tag>",
287578
+ "Missing tag. Usage: /chat delete <tag>": "Tag fehlt. Verwendung: /chat delete <Tag>",
287579
+ "Conversation checkpoint '{{tag}}' has been deleted.": "Gespr\xE4chspr\xFCfpunkt '{{tag}}' wurde gel\xF6scht.",
287580
+ "Error: No checkpoint found with tag '{{tag}}'.": "Fehler: Kein Pr\xFCfpunkt mit Tag '{{tag}}' gefunden.",
287581
+ "Resume a conversation from a checkpoint. Usage: /chat resume <tag>": "Gespr\xE4ch von einem Pr\xFCfpunkt fortsetzen. Verwendung: /chat resume <Tag>",
287582
+ "Missing tag. Usage: /chat resume <tag>": "Tag fehlt. Verwendung: /chat resume <Tag>",
287583
+ "No saved checkpoint found with tag: {{tag}}.": "Kein gespeicherter Pr\xFCfpunkt mit Tag gefunden: {{tag}}.",
287584
+ "A checkpoint with the tag {{tag}} already exists. Do you want to overwrite it?": "Ein Pr\xFCfpunkt mit dem Tag {{tag}} existiert bereits. M\xF6chten Sie ihn \xFCberschreiben?",
287585
+ "No chat client available to save conversation.": "Kein Chat-Client verf\xFCgbar, um Gespr\xE4ch zu speichern.",
287586
+ "Conversation checkpoint saved with tag: {{tag}}.": "Gespr\xE4chspr\xFCfpunkt gespeichert mit Tag: {{tag}}.",
287587
+ "No conversation found to save.": "Kein Gespr\xE4ch zum Speichern gefunden.",
287588
+ "No chat client available to share conversation.": "Kein Chat-Client verf\xFCgbar, um Gespr\xE4ch zu teilen.",
287589
+ "Invalid file format. Only .md and .json are supported.": "Ung\xFCltiges Dateiformat. Nur .md und .json werden unterst\xFCtzt.",
287590
+ "Error sharing conversation: {{error}}": "Fehler beim Teilen des Gespr\xE4chs: {{error}}",
287591
+ "Conversation shared to {{filePath}}": "Gespr\xE4ch geteilt nach {{filePath}}",
287592
+ "No conversation found to share.": "Kein Gespr\xE4ch zum Teilen gefunden.",
287593
+ "Share the current conversation to a markdown or json file. Usage: /chat share <file>": "Aktuelles Gespr\xE4ch in eine Markdown- oder JSON-Datei teilen. Verwendung: /chat share <Datei>",
287594
+ // ============================================================================
287595
+ // Commands - Summary
287596
+ // ============================================================================
287597
+ "Generate a project summary and save it to .qwen/PROJECT_SUMMARY.md": "Projektzusammenfassung generieren und in .qwen/PROJECT_SUMMARY.md speichern",
287598
+ "No chat client available to generate summary.": "Kein Chat-Client verf\xFCgbar, um Zusammenfassung zu generieren.",
287599
+ "Already generating summary, wait for previous request to complete": "Zusammenfassung wird bereits generiert, warten Sie auf Abschluss der vorherigen Anfrage",
287600
+ "No conversation found to summarize.": "Kein Gespr\xE4ch zum Zusammenfassen gefunden.",
287601
+ "Failed to generate project context summary: {{error}}": "Fehler beim Generieren der Projektkontextzusammenfassung: {{error}}",
287602
+ "Saved project summary to {{filePathForDisplay}}.": "Projektzusammenfassung gespeichert unter {{filePathForDisplay}}.",
287603
+ "Saving project summary...": "Projektzusammenfassung wird gespeichert...",
287604
+ "Generating project summary...": "Projektzusammenfassung wird generiert...",
287605
+ "Failed to generate summary - no text content received from LLM response": "Fehler beim Generieren der Zusammenfassung - kein Textinhalt von LLM-Antwort erhalten",
287606
+ // ============================================================================
287607
+ // Commands - Model
287608
+ // ============================================================================
287609
+ "Switch the model for this session": "Modell f\xFCr diese Sitzung wechseln",
287610
+ "Content generator configuration not available.": "Inhaltsgenerator-Konfiguration nicht verf\xFCgbar.",
287611
+ "Authentication type not available.": "Authentifizierungstyp nicht verf\xFCgbar.",
287612
+ "No models available for the current authentication type ({{authType}}).": "Keine Modelle f\xFCr den aktuellen Authentifizierungstyp ({{authType}}) verf\xFCgbar.",
287613
+ // ============================================================================
287614
+ // Commands - Clear
287615
+ // ============================================================================
287616
+ "Starting a new session, resetting chat, and clearing terminal.": "Neue Sitzung wird gestartet, Chat wird zur\xFCckgesetzt und Terminal wird gel\xF6scht.",
287617
+ "Starting a new session and clearing.": "Neue Sitzung wird gestartet und gel\xF6scht.",
287618
+ // ============================================================================
287619
+ // Commands - Compress
287620
+ // ============================================================================
287621
+ "Already compressing, wait for previous request to complete": "Komprimierung l\xE4uft bereits, warten Sie auf Abschluss der vorherigen Anfrage",
287622
+ "Failed to compress chat history.": "Fehler beim Komprimieren des Chatverlaufs.",
287623
+ "Failed to compress chat history: {{error}}": "Fehler beim Komprimieren des Chatverlaufs: {{error}}",
287624
+ "Compressing chat history": "Chatverlauf wird komprimiert",
287625
+ "Chat history compressed from {{originalTokens}} to {{newTokens}} tokens.": "Chatverlauf komprimiert von {{originalTokens}} auf {{newTokens}} Token.",
287626
+ "Compression was not beneficial for this history size.": "Komprimierung war f\xFCr diese Verlaufsgr\xF6\xDFe nicht vorteilhaft.",
287627
+ "Chat history compression did not reduce size. This may indicate issues with the compression prompt.": "Chatverlauf-Komprimierung hat die Gr\xF6\xDFe nicht reduziert. Dies kann auf Probleme mit dem Komprimierungs-Prompt hindeuten.",
287628
+ "Could not compress chat history due to a token counting error.": "Chatverlauf konnte aufgrund eines Token-Z\xE4hlfehlers nicht komprimiert werden.",
287629
+ "Chat history is already compressed.": "Chatverlauf ist bereits komprimiert.",
287630
+ // ============================================================================
287631
+ // Commands - Directory
287632
+ // ============================================================================
287633
+ "Configuration is not available.": "Konfiguration ist nicht verf\xFCgbar.",
287634
+ "Please provide at least one path to add.": "Bitte geben Sie mindestens einen Pfad zum Hinzuf\xFCgen an.",
287635
+ "The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "Der Befehl /directory add wird in restriktiven Sandbox-Profilen nicht unterst\xFCtzt. Bitte verwenden Sie --include-directories beim Starten der Sitzung.",
287636
+ "Error adding '{{path}}': {{error}}": "Fehler beim Hinzuf\xFCgen von '{{path}}': {{error}}",
287637
+ "Successfully added QWEN.md files from the following directories if there are:\n- {{directories}}": "QWEN.md-Dateien aus folgenden Verzeichnissen erfolgreich hinzugef\xFCgt, falls vorhanden:\n- {{directories}}",
287638
+ "Error refreshing memory: {{error}}": "Fehler beim Aktualisieren des Speichers: {{error}}",
287639
+ "Successfully added directories:\n- {{directories}}": "Verzeichnisse erfolgreich hinzugef\xFCgt:\n- {{directories}}",
287640
+ "Current workspace directories:\n{{directories}}": "Aktuelle Arbeitsbereichsverzeichnisse:\n{{directories}}",
287641
+ // ============================================================================
287642
+ // Commands - Docs
287643
+ // ============================================================================
287644
+ "Please open the following URL in your browser to view the documentation:\n{{url}}": "Bitte \xF6ffnen Sie folgende URL in Ihrem Browser, um die Dokumentation anzusehen:\n{{url}}",
287645
+ "Opening documentation in your browser: {{url}}": "Dokumentation wird in Ihrem Browser ge\xF6ffnet: {{url}}",
287646
+ // ============================================================================
287647
+ // Dialogs - Tool Confirmation
287648
+ // ============================================================================
287649
+ "Do you want to proceed?": "M\xF6chten Sie fortfahren?",
287650
+ "Yes, allow once": "Ja, einmal erlauben",
287651
+ "Allow always": "Immer erlauben",
287652
+ No: "Nein",
287653
+ "No (esc)": "Nein (Esc)",
287654
+ "Yes, allow always for this session": "Ja, f\xFCr diese Sitzung immer erlauben",
287655
+ "Modify in progress:": "\xC4nderung in Bearbeitung:",
287656
+ "Save and close external editor to continue": "Speichern und externen Editor schlie\xDFen, um fortzufahren",
287657
+ "Apply this change?": "Diese \xC4nderung anwenden?",
287658
+ "Yes, allow always": "Ja, immer erlauben",
287659
+ "Modify with external editor": "Mit externem Editor bearbeiten",
287660
+ "No, suggest changes (esc)": "Nein, \xC4nderungen vorschlagen (Esc)",
287661
+ "Allow execution of: '{{command}}'?": "Ausf\xFChrung erlauben von: '{{command}}'?",
287662
+ "Yes, allow always ...": "Ja, immer erlauben ...",
287663
+ "Yes, and auto-accept edits": "Ja, und \xC4nderungen automatisch akzeptieren",
287664
+ "Yes, and manually approve edits": "Ja, und \xC4nderungen manuell genehmigen",
287665
+ "No, keep planning (esc)": "Nein, weiter planen (Esc)",
287666
+ "URLs to fetch:": "Abzurufende URLs:",
287667
+ "MCP Server: {{server}}": "MCP-Server: {{server}}",
287668
+ "Tool: {{tool}}": "Werkzeug: {{tool}}",
287669
+ 'Allow execution of MCP tool "{{tool}}" from server "{{server}}"?': 'Ausf\xFChrung des MCP-Werkzeugs "{{tool}}" von Server "{{server}}" erlauben?',
287670
+ 'Yes, always allow tool "{{tool}}" from server "{{server}}"': 'Ja, Werkzeug "{{tool}}" von Server "{{server}}" immer erlauben',
287671
+ 'Yes, always allow all tools from server "{{server}}"': 'Ja, alle Werkzeuge von Server "{{server}}" immer erlauben',
287672
+ // ============================================================================
287673
+ // Dialogs - Shell Confirmation
287674
+ // ============================================================================
287675
+ "Shell Command Execution": "Shell-Befehlsausf\xFChrung",
287676
+ "A custom command wants to run the following shell commands:": "Ein benutzerdefinierter Befehl m\xF6chte folgende Shell-Befehle ausf\xFChren:",
287677
+ // ============================================================================
287678
+ // Dialogs - Pro Quota
287679
+ // ============================================================================
287680
+ "Pro quota limit reached for {{model}}.": "Pro-Kontingentlimit f\xFCr {{model}} erreicht.",
287681
+ "Change auth (executes the /auth command)": "Authentifizierung \xE4ndern (f\xFChrt den /auth-Befehl aus)",
287682
+ "Continue with {{model}}": "Mit {{model}} fortfahren",
287683
+ // ============================================================================
287684
+ // Dialogs - Welcome Back
287685
+ // ============================================================================
287686
+ "Current Plan:": "Aktueller Plan:",
287687
+ "Progress: {{done}}/{{total}} tasks completed": "Fortschritt: {{done}}/{{total}} Aufgaben abgeschlossen",
287688
+ ", {{inProgress}} in progress": ", {{inProgress}} in Bearbeitung",
287689
+ "Pending Tasks:": "Ausstehende Aufgaben:",
287690
+ "What would you like to do?": "Was m\xF6chten Sie tun?",
287691
+ "Choose how to proceed with your session:": "W\xE4hlen Sie, wie Sie mit Ihrer Sitzung fortfahren m\xF6chten:",
287692
+ "Start new chat session": "Neue Chat-Sitzung starten",
287693
+ "Continue previous conversation": "Vorheriges Gespr\xE4ch fortsetzen",
287694
+ "\u{1F44B} Welcome back! (Last updated: {{timeAgo}})": "\u{1F44B} Willkommen zur\xFCck! (Zuletzt aktualisiert: {{timeAgo}})",
287695
+ "\u{1F3AF} Overall Goal:": "\u{1F3AF} Gesamtziel:",
287696
+ // ============================================================================
287697
+ // Dialogs - Auth
287698
+ // ============================================================================
287699
+ "Get started": "Loslegen",
287700
+ "How would you like to authenticate for this project?": "Wie m\xF6chten Sie sich f\xFCr dieses Projekt authentifizieren?",
287701
+ "OpenAI API key is required to use OpenAI authentication.": "OpenAI API-Schl\xFCssel ist f\xFCr die OpenAI-Authentifizierung erforderlich.",
287702
+ "You must select an auth method to proceed. Press Ctrl+C again to exit.": "Sie m\xFCssen eine Authentifizierungsmethode w\xE4hlen, um fortzufahren. Dr\xFCcken Sie erneut Strg+C zum Beenden.",
287703
+ "(Use Enter to Set Auth)": "(Enter zum Festlegen der Authentifizierung)",
287704
+ "Terms of Services and Privacy Notice for Qwen Code": "Nutzungsbedingungen und Datenschutzhinweis f\xFCr Qwen Code",
287705
+ "Qwen OAuth": "Qwen OAuth",
287706
+ OpenAI: "OpenAI",
287707
+ "Failed to login. Message: {{message}}": "Anmeldung fehlgeschlagen. Meldung: {{message}}",
287708
+ "Authentication is enforced to be {{enforcedType}}, but you are currently using {{currentType}}.": "Authentifizierung ist auf {{enforcedType}} festgelegt, aber Sie verwenden derzeit {{currentType}}.",
287709
+ "Qwen OAuth authentication timed out. Please try again.": "Qwen OAuth-Authentifizierung abgelaufen. Bitte versuchen Sie es erneut.",
287710
+ "Qwen OAuth authentication cancelled.": "Qwen OAuth-Authentifizierung abgebrochen.",
287711
+ "Qwen OAuth Authentication": "Qwen OAuth-Authentifizierung",
287712
+ "Please visit this URL to authorize:": "Bitte besuchen Sie diese URL zur Autorisierung:",
287713
+ "Or scan the QR code below:": "Oder scannen Sie den QR-Code unten:",
287714
+ "Waiting for authorization": "Warten auf Autorisierung",
287715
+ "Time remaining:": "Verbleibende Zeit:",
287716
+ "(Press ESC or CTRL+C to cancel)": "(ESC oder STRG+C zum Abbrechen dr\xFCcken)",
287717
+ "Qwen OAuth Authentication Timeout": "Qwen OAuth-Authentifizierung abgelaufen",
287718
+ "OAuth token expired (over {{seconds}} seconds). Please select authentication method again.": "OAuth-Token abgelaufen (\xFCber {{seconds}} Sekunden). Bitte w\xE4hlen Sie erneut eine Authentifizierungsmethode.",
287719
+ "Press any key to return to authentication type selection.": "Dr\xFCcken Sie eine beliebige Taste, um zur Authentifizierungstypauswahl zur\xFCckzukehren.",
287720
+ "Waiting for Qwen OAuth authentication...": "Warten auf Qwen OAuth-Authentifizierung...",
287721
+ "Note: Your existing API key in settings.json will not be cleared when using Qwen OAuth. You can switch back to OpenAI authentication later if needed.": "Hinweis: Ihr bestehender API-Schl\xFCssel in settings.json wird bei Verwendung von Qwen OAuth nicht gel\xF6scht. Sie k\xF6nnen sp\xE4ter bei Bedarf zur OpenAI-Authentifizierung zur\xFCckwechseln.",
287722
+ "Authentication timed out. Please try again.": "Authentifizierung abgelaufen. Bitte versuchen Sie es erneut.",
287723
+ "Waiting for auth... (Press ESC or CTRL+C to cancel)": "Warten auf Authentifizierung... (ESC oder STRG+C zum Abbrechen dr\xFCcken)",
287724
+ "Failed to authenticate. Message: {{message}}": "Authentifizierung fehlgeschlagen. Meldung: {{message}}",
287725
+ "Authenticated successfully with {{authType}} credentials.": "Erfolgreich mit {{authType}}-Anmeldedaten authentifiziert.",
287726
+ 'Invalid QWEN_DEFAULT_AUTH_TYPE value: "{{value}}". Valid values are: {{validValues}}': 'Ung\xFCltiger QWEN_DEFAULT_AUTH_TYPE-Wert: "{{value}}". G\xFCltige Werte sind: {{validValues}}',
287727
+ "OpenAI Configuration Required": "OpenAI-Konfiguration erforderlich",
287728
+ "Please enter your OpenAI configuration. You can get an API key from": "Bitte geben Sie Ihre OpenAI-Konfiguration ein. Sie k\xF6nnen einen API-Schl\xFCssel erhalten von",
287729
+ "API Key:": "API-Schl\xFCssel:",
287730
+ "Invalid credentials: {{errorMessage}}": "Ung\xFCltige Anmeldedaten: {{errorMessage}}",
287731
+ "Failed to validate credentials": "Anmeldedaten konnten nicht validiert werden",
287732
+ "Press Enter to continue, Tab/\u2191\u2193 to navigate, Esc to cancel": "Enter zum Fortfahren, Tab/\u2191\u2193 zum Navigieren, Esc zum Abbrechen",
287733
+ // ============================================================================
287734
+ // Dialogs - Model
287735
+ // ============================================================================
287736
+ "Select Model": "Modell ausw\xE4hlen",
287737
+ "(Press Esc to close)": "(Esc zum Schlie\xDFen dr\xFCcken)",
287738
+ "The latest Qwen Coder model from Alibaba Cloud ModelStudio (version: qwen3-coder-plus-2025-09-23)": "Das neueste Qwen Coder Modell von Alibaba Cloud ModelStudio (Version: qwen3-coder-plus-2025-09-23)",
287739
+ "The latest Qwen Vision model from Alibaba Cloud ModelStudio (version: qwen3-vl-plus-2025-09-23)": "Das neueste Qwen Vision Modell von Alibaba Cloud ModelStudio (Version: qwen3-vl-plus-2025-09-23)",
287740
+ // ============================================================================
287741
+ // Dialogs - Permissions
287742
+ // ============================================================================
287743
+ "Manage folder trust settings": "Ordnervertrauenseinstellungen verwalten",
287744
+ // ============================================================================
287745
+ // Status Bar
287746
+ // ============================================================================
287747
+ "Using:": "Verwendet:",
287748
+ "{{count}} open file": "{{count}} ge\xF6ffnete Datei",
287749
+ "{{count}} open files": "{{count}} ge\xF6ffnete Dateien",
287750
+ "(ctrl+g to view)": "(Strg+G zum Anzeigen)",
287751
+ "{{count}} {{name}} file": "{{count}} {{name}}-Datei",
287752
+ "{{count}} {{name}} files": "{{count}} {{name}}-Dateien",
287753
+ "{{count}} MCP server": "{{count}} MCP-Server",
287754
+ "{{count}} MCP servers": "{{count}} MCP-Server",
287755
+ "{{count}} Blocked": "{{count}} blockiert",
287756
+ "(ctrl+t to view)": "(Strg+T zum Anzeigen)",
287757
+ "(ctrl+t to toggle)": "(Strg+T zum Umschalten)",
287758
+ "Press Ctrl+C again to exit.": "Dr\xFCcken Sie erneut Strg+C zum Beenden.",
287759
+ "Press Ctrl+D again to exit.": "Dr\xFCcken Sie erneut Strg+D zum Beenden.",
287760
+ "Press Esc again to clear.": "Dr\xFCcken Sie erneut Esc zum L\xF6schen.",
287761
+ // ============================================================================
287762
+ // MCP Status
287763
+ // ============================================================================
287764
+ "No MCP servers configured.": "Keine MCP-Server konfiguriert.",
287765
+ "Please view MCP documentation in your browser:": "Bitte sehen Sie die MCP-Dokumentation in Ihrem Browser:",
287766
+ "or use the cli /docs command": "oder verwenden Sie den CLI-Befehl /docs",
287767
+ "\u23F3 MCP servers are starting up ({{count}} initializing)...": "\u23F3 MCP-Server werden gestartet ({{count}} werden initialisiert)...",
287768
+ "Note: First startup may take longer. Tool availability will update automatically.": "Hinweis: Der erste Start kann l\xE4nger dauern. Werkzeugverf\xFCgbarkeit wird automatisch aktualisiert.",
287769
+ "Configured MCP servers:": "Konfigurierte MCP-Server:",
287770
+ Ready: "Bereit",
287771
+ "Starting... (first startup may take longer)": "Wird gestartet... (erster Start kann l\xE4nger dauern)",
287772
+ Disconnected: "Getrennt",
287773
+ "{{count}} tool": "{{count}} Werkzeug",
287774
+ "{{count}} tools": "{{count}} Werkzeuge",
287775
+ "{{count}} prompt": "{{count}} Prompt",
287776
+ "{{count}} prompts": "{{count}} Prompts",
287777
+ "(from {{extensionName}})": "(von {{extensionName}})",
287778
+ OAuth: "OAuth",
287779
+ "OAuth expired": "OAuth abgelaufen",
287780
+ "OAuth not authenticated": "OAuth nicht authentifiziert",
287781
+ "tools and prompts will appear when ready": "Werkzeuge und Prompts werden angezeigt, wenn bereit",
287782
+ "{{count}} tools cached": "{{count}} Werkzeuge zwischengespeichert",
287783
+ "Tools:": "Werkzeuge:",
287784
+ "Parameters:": "Parameter:",
287785
+ "Prompts:": "Prompts:",
287786
+ Blocked: "Blockiert",
287787
+ "\u{1F4A1} Tips:": "\u{1F4A1} Tipps:",
287788
+ Use: "Verwenden",
287789
+ "to show server and tool descriptions": "um Server- und Werkzeugbeschreibungen anzuzeigen",
287790
+ "to show tool parameter schemas": "um Werkzeug-Parameter-Schemas anzuzeigen",
287791
+ "to hide descriptions": "um Beschreibungen auszublenden",
287792
+ "to authenticate with OAuth-enabled servers": "um sich bei OAuth-f\xE4higen Servern zu authentifizieren",
287793
+ Press: "Dr\xFCcken Sie",
287794
+ "to toggle tool descriptions on/off": "um Werkzeugbeschreibungen ein-/auszuschalten",
287795
+ "Starting OAuth authentication for MCP server '{{name}}'...": "OAuth-Authentifizierung f\xFCr MCP-Server '{{name}}' wird gestartet...",
287796
+ "Restarting MCP servers...": "MCP-Server werden neu gestartet...",
287797
+ // ============================================================================
287798
+ // Startup Tips
287799
+ // ============================================================================
287800
+ "Tips for getting started:": "Tipps zum Einstieg:",
287801
+ "1. Ask questions, edit files, or run commands.": "1. Stellen Sie Fragen, bearbeiten Sie Dateien oder f\xFChren Sie Befehle aus.",
287802
+ "2. Be specific for the best results.": "2. Seien Sie spezifisch f\xFCr die besten Ergebnisse.",
287803
+ "files to customize your interactions with Qwen Code.": "Dateien, um Ihre Interaktionen mit Qwen Code anzupassen.",
287804
+ "for more information.": "f\xFCr weitere Informationen.",
287805
+ // ============================================================================
287806
+ // Exit Screen / Stats
287807
+ // ============================================================================
287808
+ "Agent powering down. Goodbye!": "Agent wird heruntergefahren. Auf Wiedersehen!",
287809
+ "To continue this session, run": "Um diese Sitzung fortzusetzen, f\xFChren Sie aus",
287810
+ "Interaction Summary": "Interaktionszusammenfassung",
287811
+ "Session ID:": "Sitzungs-ID:",
287812
+ "Tool Calls:": "Werkzeugaufrufe:",
287813
+ "Success Rate:": "Erfolgsrate:",
287814
+ "User Agreement:": "Benutzerzustimmung:",
287815
+ reviewed: "\xFCberpr\xFCft",
287816
+ "Code Changes:": "Code\xE4nderungen:",
287817
+ Performance: "Leistung",
287818
+ "Wall Time:": "Gesamtzeit:",
287819
+ "Agent Active:": "Agent aktiv:",
287820
+ "API Time:": "API-Zeit:",
287821
+ "Tool Time:": "Werkzeugzeit:",
287822
+ "Session Stats": "Sitzungsstatistiken",
287823
+ "Model Usage": "Modellnutzung",
287824
+ Reqs: "Anfragen",
287825
+ "Input Tokens": "Eingabe-Token",
287826
+ "Output Tokens": "Ausgabe-Token",
287827
+ "Savings Highlight:": "Einsparungen:",
287828
+ "of input tokens were served from the cache, reducing costs.": "der Eingabe-Token wurden aus dem Cache bedient, was die Kosten reduziert.",
287829
+ "Tip: For a full token breakdown, run `/stats model`.": "Tipp: F\xFCr eine vollst\xE4ndige Token-Aufschl\xFCsselung f\xFChren Sie `/stats model` aus.",
287830
+ "Model Stats For Nerds": "Modellstatistiken f\xFCr Nerds",
287831
+ "Tool Stats For Nerds": "Werkzeugstatistiken f\xFCr Nerds",
287832
+ Metric: "Metrik",
287833
+ API: "API",
287834
+ Requests: "Anfragen",
287835
+ Errors: "Fehler",
287836
+ "Avg Latency": "Durchschn. Latenz",
287837
+ Tokens: "Token",
287838
+ Total: "Gesamt",
287839
+ Prompt: "Prompt",
287840
+ Cached: "Zwischengespeichert",
287841
+ Thoughts: "Gedanken",
287842
+ Tool: "Werkzeug",
287843
+ Output: "Ausgabe",
287844
+ "No API calls have been made in this session.": "In dieser Sitzung wurden keine API-Aufrufe gemacht.",
287845
+ "Tool Name": "Werkzeugname",
287846
+ Calls: "Aufrufe",
287847
+ "Success Rate": "Erfolgsrate",
287848
+ "Avg Duration": "Durchschn. Dauer",
287849
+ "User Decision Summary": "Benutzerentscheidungs-Zusammenfassung",
287850
+ "Total Reviewed Suggestions:": "Insgesamt \xFCberpr\xFCfter Vorschl\xE4ge:",
287851
+ " \xBB Accepted:": " \xBB Akzeptiert:",
287852
+ " \xBB Rejected:": " \xBB Abgelehnt:",
287853
+ " \xBB Modified:": " \xBB Ge\xE4ndert:",
287854
+ " Overall Agreement Rate:": " Gesamtzustimmungsrate:",
287855
+ "No tool calls have been made in this session.": "In dieser Sitzung wurden keine Werkzeugaufrufe gemacht.",
287856
+ "Session start time is unavailable, cannot calculate stats.": "Sitzungsstartzeit nicht verf\xFCgbar, Statistiken k\xF6nnen nicht berechnet werden.",
287857
+ // ============================================================================
287858
+ // Loading Phrases
287859
+ // ============================================================================
287860
+ "Waiting for user confirmation...": "Warten auf Benutzerbest\xE4tigung...",
287861
+ "(esc to cancel, {{time}})": "(Esc zum Abbrechen, {{time}})",
287862
+ // ============================================================================
287863
+ // Loading Phrases
287864
+ // ============================================================================
287865
+ WITTY_LOADING_PHRASES: [
287866
+ "Auf gut Gl\xFCck!",
287867
+ "Genialit\xE4t wird ausgeliefert...",
287868
+ "Die Serifen werden aufgemalt...",
287869
+ "Durch den Schleimpilz navigieren...",
287870
+ "Die digitalen Geister werden befragt...",
287871
+ "Splines werden retikuliert...",
287872
+ "Die KI-Hamster werden aufgew\xE4rmt...",
287873
+ "Die Zaubermuschel wird befragt...",
287874
+ "Witzige Erwiderung wird generiert...",
287875
+ "Die Algorithmen werden poliert...",
287876
+ "Perfektion braucht Zeit (mein Code auch)...",
287877
+ "Frische Bytes werden gebr\xFCht...",
287878
+ "Elektronen werden gez\xE4hlt...",
287879
+ "Kognitive Prozessoren werden aktiviert...",
287880
+ "Auf Syntaxfehler im Universum wird gepr\xFCft...",
287881
+ "Einen Moment, Humor wird optimiert...",
287882
+ "Pointen werden gemischt...",
287883
+ "Neuronale Netze werden entwirrt...",
287884
+ "Brillanz wird kompiliert...",
287885
+ "wit.exe wird geladen...",
287886
+ "Die Wolke der Weisheit wird beschworen...",
287887
+ "Eine witzige Antwort wird vorbereitet...",
287888
+ "Einen Moment, ich debugge die Realit\xE4t...",
287889
+ "Die Optionen werden verwirrt...",
287890
+ "Kosmische Frequenzen werden eingestellt...",
287891
+ "Eine Antwort wird erstellt, die Ihrer Geduld w\xFCrdig ist...",
287892
+ "Die Einsen und Nullen werden kompiliert...",
287893
+ "Abh\xE4ngigkeiten werden aufgel\xF6st... und existenzielle Krisen...",
287894
+ "Erinnerungen werden defragmentiert... sowohl RAM als auch pers\xF6nliche...",
287895
+ "Das Humor-Modul wird neu gestartet...",
287896
+ "Das Wesentliche wird zwischengespeichert (haupts\xE4chlich Katzen-Memes)...",
287897
+ "F\xFCr l\xE4cherliche Geschwindigkeit wird optimiert",
287898
+ "Bits werden getauscht... sagen Sie es nicht den Bytes...",
287899
+ "Garbage Collection l\xE4uft... bin gleich zur\xFCck...",
287900
+ "Das Internet wird zusammengebaut...",
287901
+ "Kaffee wird in Code umgewandelt...",
287902
+ "Die Syntax der Realit\xE4t wird aktualisiert...",
287903
+ "Die Synapsen werden neu verdrahtet...",
287904
+ "Ein verlegtes Semikolon wird gesucht...",
287905
+ "Die Zahnr\xE4der werden geschmiert...",
287906
+ "Die Server werden vorgeheizt...",
287907
+ "Der Fluxkompensator wird kalibriert...",
287908
+ "Der Unwahrscheinlichkeitsantrieb wird aktiviert...",
287909
+ "Die Macht wird kanalisiert...",
287910
+ "Die Sterne werden f\xFCr optimale Antwort ausgerichtet...",
287911
+ "So sagen wir alle...",
287912
+ "Die n\xE4chste gro\xDFe Idee wird geladen...",
287913
+ "Einen Moment, ich bin in der Zone...",
287914
+ "Bereite mich vor, Sie mit Brillanz zu blenden...",
287915
+ "Einen Augenblick, ich poliere meinen Witz...",
287916
+ "Halten Sie durch, ich erschaffe ein Meisterwerk...",
287917
+ "Einen Moment, ich debugge das Universum...",
287918
+ "Einen Moment, ich richte die Pixel aus...",
287919
+ "Einen Moment, ich optimiere den Humor...",
287920
+ "Einen Moment, ich tune die Algorithmen...",
287921
+ "Warp-Geschwindigkeit aktiviert...",
287922
+ "Mehr Dilithium-Kristalle werden gesucht...",
287923
+ "Keine Panik...",
287924
+ "Dem wei\xDFen Kaninchen wird gefolgt...",
287925
+ "Die Wahrheit ist hier drin... irgendwo...",
287926
+ "Auf die Kassette wird gepustet...",
287927
+ "Ladevorgang... Machen Sie eine Fassrolle!",
287928
+ "Auf den Respawn wird gewartet...",
287929
+ "Der Kessel-Flug wird in weniger als 12 Parsec beendet...",
287930
+ "Der Kuchen ist keine L\xFCge, er l\xE4dt nur noch...",
287931
+ "Am Charaktererstellungsbildschirm wird herumgefummelt...",
287932
+ "Einen Moment, ich suche das richtige Meme...",
287933
+ "'A' wird zum Fortfahren gedr\xFCckt...",
287934
+ "Digitale Katzen werden geh\xFCtet...",
287935
+ "Die Pixel werden poliert...",
287936
+ "Ein passender Ladebildschirm-Witz wird gesucht...",
287937
+ "Ich lenke Sie mit diesem witzigen Spruch ab...",
287938
+ "Fast da... wahrscheinlich...",
287939
+ "Unsere Hamster arbeiten so schnell sie k\xF6nnen...",
287940
+ "Cloudy wird am Kopf gestreichelt...",
287941
+ "Die Katze wird gestreichelt...",
287942
+ "Meinen Chef rickrollen...",
287943
+ "Never gonna give you up, never gonna let you down...",
287944
+ "Auf den Bass wird geschlagen...",
287945
+ "Die Schnozbeeren werden probiert...",
287946
+ "I'm going the distance, I'm going for speed...",
287947
+ "Ist dies das wahre Leben? Ist dies nur Fantasie?...",
287948
+ "Ich habe ein gutes Gef\xFChl dabei...",
287949
+ "Den B\xE4ren wird gestupst...",
287950
+ "Recherche zu den neuesten Memes...",
287951
+ "\xDCberlege, wie ich das witziger machen kann...",
287952
+ "Hmmm... lassen Sie mich nachdenken...",
287953
+ "Wie nennt man einen Fisch ohne Augen? Ein Fsh...",
287954
+ "Warum ging der Computer zur Therapie? Er hatte zu viele Bytes...",
287955
+ "Warum m\xF6gen Programmierer keine Natur? Sie hat zu viele Bugs...",
287956
+ "Warum bevorzugen Programmierer den Dunkelmodus? Weil Licht Bugs anzieht...",
287957
+ "Warum ging der Entwickler pleite? Er hat seinen ganzen Cache aufgebraucht...",
287958
+ "Was kann man mit einem kaputten Bleistift machen? Nichts, er ist sinnlos...",
287959
+ "Perkussive Wartung wird angewendet...",
287960
+ "Die richtige USB-Ausrichtung wird gesucht...",
287961
+ "Es wird sichergestellt, dass der magische Rauch in den Kabeln bleibt...",
287962
+ "Versuche Vim zu beenden...",
287963
+ "Das Hamsterrad wird angeworfen...",
287964
+ "Das ist kein Bug, das ist ein undokumentiertes Feature...",
287965
+ "Engage.",
287966
+ "Ich komme wieder... mit einer Antwort.",
287967
+ "Mein anderer Prozess ist eine TARDIS...",
287968
+ "Mit dem Maschinengeist wird kommuniziert...",
287969
+ "Die Gedanken marinieren lassen...",
287970
+ "Gerade erinnert, wo ich meine Schl\xFCssel hingelegt habe...",
287971
+ "\xDCber die Kugel wird nachgedacht...",
287972
+ "Ich habe Dinge gesehen, die Sie nicht glauben w\xFCrden... wie einen Benutzer, der Lademeldungen liest.",
287973
+ "Nachdenklicher Blick wird initiiert...",
287974
+ "Was ist der Lieblingssnack eines Computers? Mikrochips.",
287975
+ "Warum tragen Java-Entwickler Brillen? Weil sie nicht C#.",
287976
+ "Der Laser wird aufgeladen... pew pew!",
287977
+ "Durch Null wird geteilt... nur Spa\xDF!",
287978
+ "Suche nach einem erwachsenen Aufseh... ich meine, Verarbeitung.",
287979
+ "Es piept und boopt.",
287980
+ "Pufferung... weil auch KIs einen Moment brauchen.",
287981
+ "Quantenteilchen werden f\xFCr schnellere Antwort verschr\xE4nkt...",
287982
+ "Das Chrom wird poliert... an den Algorithmen.",
287983
+ "Sind Sie nicht unterhalten? (Arbeite daran!)",
287984
+ "Die Code-Gremlins werden beschworen... zum Helfen, nat\xFCrlich.",
287985
+ "Warte nur auf das Einwahlton-Ende...",
287986
+ "Das Humor-O-Meter wird neu kalibriert.",
287987
+ "Mein anderer Ladebildschirm ist noch lustiger.",
287988
+ "Ziemlich sicher, dass irgendwo eine Katze \xFCber die Tastatur l\xE4uft...",
287989
+ "Verbessern... Verbessern... L\xE4dt noch.",
287990
+ "Das ist kein Bug, das ist ein Feature... dieses Ladebildschirms.",
287991
+ "Haben Sie versucht, es aus- und wieder einzuschalten? (Den Ladebildschirm, nicht mich.)",
287992
+ "Zus\xE4tzliche Pylonen werden gebaut..."
287993
+ ]
287994
+ };
287995
+ }
287996
+ });
287997
+
287087
287998
  // packages/cli/src/i18n/locales/en.js
287088
287999
  var en_exports = {};
287089
288000
  __export(en_exports, {
@@ -287162,6 +288073,8 @@ var init_en3 = __esm({
287162
288073
  "Available Qwen Code CLI tools:": "Available Qwen Code CLI tools:",
287163
288074
  "No tools available": "No tools available",
287164
288075
  "View or change the approval mode for tool usage": "View or change the approval mode for tool usage",
288076
+ 'Invalid approval mode "{{arg}}". Valid modes: {{modes}}': 'Invalid approval mode "{{arg}}". Valid modes: {{modes}}',
288077
+ 'Approval mode set to "{{mode}}"': 'Approval mode set to "{{mode}}"',
287165
288078
  "View or change the language setting": "View or change the language setting",
287166
288079
  "change the theme": "change the theme",
287167
288080
  "Select Theme": "Select Theme",
@@ -287171,7 +288084,7 @@ var init_en3 = __esm({
287171
288084
  "Theme configuration unavailable due to NO_COLOR env variable.": "Theme configuration unavailable due to NO_COLOR env variable.",
287172
288085
  'Theme "{{themeName}}" not found.': 'Theme "{{themeName}}" not found.',
287173
288086
  'Theme "{{themeName}}" not found in selected scope.': 'Theme "{{themeName}}" not found in selected scope.',
287174
- "clear the screen and conversation history": "clear the screen and conversation history",
288087
+ "Clear conversation history and free up context": "Clear conversation history and free up context",
287175
288088
  "Compresses the context by replacing it with a summary.": "Compresses the context by replacing it with a summary.",
287176
288089
  "open full Qwen Code documentation in your browser": "open full Qwen Code documentation in your browser",
287177
288090
  "Configuration not available.": "Configuration not available.",
@@ -287538,8 +288451,8 @@ var init_en3 = __esm({
287538
288451
  // ============================================================================
287539
288452
  // Commands - Clear
287540
288453
  // ============================================================================
287541
- "Clearing terminal and resetting chat.": "Clearing terminal and resetting chat.",
287542
- "Clearing terminal.": "Clearing terminal.",
288454
+ "Starting a new session, resetting chat, and clearing terminal.": "Starting a new session, resetting chat, and clearing terminal.",
288455
+ "Starting a new session and clearing.": "Starting a new session and clearing.",
287543
288456
  // ============================================================================
287544
288457
  // Commands - Compress
287545
288458
  // ============================================================================
@@ -287784,134 +288697,138 @@ var init_en3 = __esm({
287784
288697
  // ============================================================================
287785
288698
  "Waiting for user confirmation...": "Waiting for user confirmation...",
287786
288699
  "(esc to cancel, {{time}})": "(esc to cancel, {{time}})",
287787
- "I'm Feeling Lucky": "I'm Feeling Lucky",
287788
- "Shipping awesomeness... ": "Shipping awesomeness... ",
287789
- "Painting the serifs back on...": "Painting the serifs back on...",
287790
- "Navigating the slime mold...": "Navigating the slime mold...",
287791
- "Consulting the digital spirits...": "Consulting the digital spirits...",
287792
- "Reticulating splines...": "Reticulating splines...",
287793
- "Warming up the AI hamsters...": "Warming up the AI hamsters...",
287794
- "Asking the magic conch shell...": "Asking the magic conch shell...",
287795
- "Generating witty retort...": "Generating witty retort...",
287796
- "Polishing the algorithms...": "Polishing the algorithms...",
287797
- "Don't rush perfection (or my code)...": "Don't rush perfection (or my code)...",
287798
- "Brewing fresh bytes...": "Brewing fresh bytes...",
287799
- "Counting electrons...": "Counting electrons...",
287800
- "Engaging cognitive processors...": "Engaging cognitive processors...",
287801
- "Checking for syntax errors in the universe...": "Checking for syntax errors in the universe...",
287802
- "One moment, optimizing humor...": "One moment, optimizing humor...",
287803
- "Shuffling punchlines...": "Shuffling punchlines...",
287804
- "Untangling neural nets...": "Untangling neural nets...",
287805
- "Compiling brilliance...": "Compiling brilliance...",
287806
- "Loading wit.exe...": "Loading wit.exe...",
287807
- "Summoning the cloud of wisdom...": "Summoning the cloud of wisdom...",
287808
- "Preparing a witty response...": "Preparing a witty response...",
287809
- "Just a sec, I'm debugging reality...": "Just a sec, I'm debugging reality...",
287810
- "Confuzzling the options...": "Confuzzling the options...",
287811
- "Tuning the cosmic frequencies...": "Tuning the cosmic frequencies...",
287812
- "Crafting a response worthy of your patience...": "Crafting a response worthy of your patience...",
287813
- "Compiling the 1s and 0s...": "Compiling the 1s and 0s...",
287814
- "Resolving dependencies... and existential crises...": "Resolving dependencies... and existential crises...",
287815
- "Defragmenting memories... both RAM and personal...": "Defragmenting memories... both RAM and personal...",
287816
- "Rebooting the humor module...": "Rebooting the humor module...",
287817
- "Caching the essentials (mostly cat memes)...": "Caching the essentials (mostly cat memes)...",
287818
- "Optimizing for ludicrous speed": "Optimizing for ludicrous speed",
287819
- "Swapping bits... don't tell the bytes...": "Swapping bits... don't tell the bytes...",
287820
- "Garbage collecting... be right back...": "Garbage collecting... be right back...",
287821
- "Assembling the interwebs...": "Assembling the interwebs...",
287822
- "Converting coffee into code...": "Converting coffee into code...",
287823
- "Updating the syntax for reality...": "Updating the syntax for reality...",
287824
- "Rewiring the synapses...": "Rewiring the synapses...",
287825
- "Looking for a misplaced semicolon...": "Looking for a misplaced semicolon...",
287826
- "Greasin' the cogs of the machine...": "Greasin' the cogs of the machine...",
287827
- "Pre-heating the servers...": "Pre-heating the servers...",
287828
- "Calibrating the flux capacitor...": "Calibrating the flux capacitor...",
287829
- "Engaging the improbability drive...": "Engaging the improbability drive...",
287830
- "Channeling the Force...": "Channeling the Force...",
287831
- "Aligning the stars for optimal response...": "Aligning the stars for optimal response...",
287832
- "So say we all...": "So say we all...",
287833
- "Loading the next great idea...": "Loading the next great idea...",
287834
- "Just a moment, I'm in the zone...": "Just a moment, I'm in the zone...",
287835
- "Preparing to dazzle you with brilliance...": "Preparing to dazzle you with brilliance...",
287836
- "Just a tick, I'm polishing my wit...": "Just a tick, I'm polishing my wit...",
287837
- "Hold tight, I'm crafting a masterpiece...": "Hold tight, I'm crafting a masterpiece...",
287838
- "Just a jiffy, I'm debugging the universe...": "Just a jiffy, I'm debugging the universe...",
287839
- "Just a moment, I'm aligning the pixels...": "Just a moment, I'm aligning the pixels...",
287840
- "Just a sec, I'm optimizing the humor...": "Just a sec, I'm optimizing the humor...",
287841
- "Just a moment, I'm tuning the algorithms...": "Just a moment, I'm tuning the algorithms...",
287842
- "Warp speed engaged...": "Warp speed engaged...",
287843
- "Mining for more Dilithium crystals...": "Mining for more Dilithium crystals...",
287844
- "Don't panic...": "Don't panic...",
287845
- "Following the white rabbit...": "Following the white rabbit...",
287846
- "The truth is in here... somewhere...": "The truth is in here... somewhere...",
287847
- "Blowing on the cartridge...": "Blowing on the cartridge...",
287848
- "Loading... Do a barrel roll!": "Loading... Do a barrel roll!",
287849
- "Waiting for the respawn...": "Waiting for the respawn...",
287850
- "Finishing the Kessel Run in less than 12 parsecs...": "Finishing the Kessel Run in less than 12 parsecs...",
287851
- "The cake is not a lie, it's just still loading...": "The cake is not a lie, it's just still loading...",
287852
- "Fiddling with the character creation screen...": "Fiddling with the character creation screen...",
287853
- "Just a moment, I'm finding the right meme...": "Just a moment, I'm finding the right meme...",
287854
- "Pressing 'A' to continue...": "Pressing 'A' to continue...",
287855
- "Herding digital cats...": "Herding digital cats...",
287856
- "Polishing the pixels...": "Polishing the pixels...",
287857
- "Finding a suitable loading screen pun...": "Finding a suitable loading screen pun...",
287858
- "Distracting you with this witty phrase...": "Distracting you with this witty phrase...",
287859
- "Almost there... probably...": "Almost there... probably...",
287860
- "Our hamsters are working as fast as they can...": "Our hamsters are working as fast as they can...",
287861
- "Giving Cloudy a pat on the head...": "Giving Cloudy a pat on the head...",
287862
- "Petting the cat...": "Petting the cat...",
287863
- "Rickrolling my boss...": "Rickrolling my boss...",
287864
- "Never gonna give you up, never gonna let you down...": "Never gonna give you up, never gonna let you down...",
287865
- "Slapping the bass...": "Slapping the bass...",
287866
- "Tasting the snozberries...": "Tasting the snozberries...",
287867
- "I'm going the distance, I'm going for speed...": "I'm going the distance, I'm going for speed...",
287868
- "Is this the real life? Is this just fantasy?...": "Is this the real life? Is this just fantasy?...",
287869
- "I've got a good feeling about this...": "I've got a good feeling about this...",
287870
- "Poking the bear...": "Poking the bear...",
287871
- "Doing research on the latest memes...": "Doing research on the latest memes...",
287872
- "Figuring out how to make this more witty...": "Figuring out how to make this more witty...",
287873
- "Hmmm... let me think...": "Hmmm... let me think...",
287874
- "What do you call a fish with no eyes? A fsh...": "What do you call a fish with no eyes? A fsh...",
287875
- "Why did the computer go to therapy? It had too many bytes...": "Why did the computer go to therapy? It had too many bytes...",
287876
- "Why don't programmers like nature? It has too many bugs...": "Why don't programmers like nature? It has too many bugs...",
287877
- "Why do programmers prefer dark mode? Because light attracts bugs...": "Why do programmers prefer dark mode? Because light attracts bugs...",
287878
- "Why did the developer go broke? Because they used up all their cache...": "Why did the developer go broke? Because they used up all their cache...",
287879
- "What can you do with a broken pencil? Nothing, it's pointless...": "What can you do with a broken pencil? Nothing, it's pointless...",
287880
- "Applying percussive maintenance...": "Applying percussive maintenance...",
287881
- "Searching for the correct USB orientation...": "Searching for the correct USB orientation...",
287882
- "Ensuring the magic smoke stays inside the wires...": "Ensuring the magic smoke stays inside the wires...",
287883
- "Rewriting in Rust for no particular reason...": "Rewriting in Rust for no particular reason...",
287884
- "Trying to exit Vim...": "Trying to exit Vim...",
287885
- "Spinning up the hamster wheel...": "Spinning up the hamster wheel...",
287886
- "That's not a bug, it's an undocumented feature...": "That's not a bug, it's an undocumented feature...",
287887
- "Engage.": "Engage.",
287888
- "I'll be back... with an answer.": "I'll be back... with an answer.",
287889
- "My other process is a TARDIS...": "My other process is a TARDIS...",
287890
- "Communing with the machine spirit...": "Communing with the machine spirit...",
287891
- "Letting the thoughts marinate...": "Letting the thoughts marinate...",
287892
- "Just remembered where I put my keys...": "Just remembered where I put my keys...",
287893
- "Pondering the orb...": "Pondering the orb...",
287894
- "I've seen things you people wouldn't believe... like a user who reads loading messages.": "I've seen things you people wouldn't believe... like a user who reads loading messages.",
287895
- "Initiating thoughtful gaze...": "Initiating thoughtful gaze...",
287896
- "What's a computer's favorite snack? Microchips.": "What's a computer's favorite snack? Microchips.",
287897
- "Why do Java developers wear glasses? Because they don't C#.": "Why do Java developers wear glasses? Because they don't C#.",
287898
- "Charging the laser... pew pew!": "Charging the laser... pew pew!",
287899
- "Dividing by zero... just kidding!": "Dividing by zero... just kidding!",
287900
- "Looking for an adult superviso... I mean, processing.": "Looking for an adult superviso... I mean, processing.",
287901
- "Making it go beep boop.": "Making it go beep boop.",
287902
- "Buffering... because even AIs need a moment.": "Buffering... because even AIs need a moment.",
287903
- "Entangling quantum particles for a faster response...": "Entangling quantum particles for a faster response...",
287904
- "Polishing the chrome... on the algorithms.": "Polishing the chrome... on the algorithms.",
287905
- "Are you not entertained? (Working on it!)": "Are you not entertained? (Working on it!)",
287906
- "Summoning the code gremlins... to help, of course.": "Summoning the code gremlins... to help, of course.",
287907
- "Just waiting for the dial-up tone to finish...": "Just waiting for the dial-up tone to finish...",
287908
- "Recalibrating the humor-o-meter.": "Recalibrating the humor-o-meter.",
287909
- "My other loading screen is even funnier.": "My other loading screen is even funnier.",
287910
- "Pretty sure there's a cat walking on the keyboard somewhere...": "Pretty sure there's a cat walking on the keyboard somewhere...",
287911
- "Enhancing... Enhancing... Still loading.": "Enhancing... Enhancing... Still loading.",
287912
- "It's not a bug, it's a feature... of this loading screen.": "It's not a bug, it's a feature... of this loading screen.",
287913
- "Have you tried turning it off and on again? (The loading screen, not me.)": "Have you tried turning it off and on again? (The loading screen, not me.)",
287914
- "Constructing additional pylons...": "Constructing additional pylons..."
288700
+ // ============================================================================
288701
+ // Loading Phrases
288702
+ // ============================================================================
288703
+ WITTY_LOADING_PHRASES: [
288704
+ "I'm Feeling Lucky",
288705
+ "Shipping awesomeness... ",
288706
+ "Painting the serifs back on...",
288707
+ "Navigating the slime mold...",
288708
+ "Consulting the digital spirits...",
288709
+ "Reticulating splines...",
288710
+ "Warming up the AI hamsters...",
288711
+ "Asking the magic conch shell...",
288712
+ "Generating witty retort...",
288713
+ "Polishing the algorithms...",
288714
+ "Don't rush perfection (or my code)...",
288715
+ "Brewing fresh bytes...",
288716
+ "Counting electrons...",
288717
+ "Engaging cognitive processors...",
288718
+ "Checking for syntax errors in the universe...",
288719
+ "One moment, optimizing humor...",
288720
+ "Shuffling punchlines...",
288721
+ "Untangling neural nets...",
288722
+ "Compiling brilliance...",
288723
+ "Loading wit.exe...",
288724
+ "Summoning the cloud of wisdom...",
288725
+ "Preparing a witty response...",
288726
+ "Just a sec, I'm debugging reality...",
288727
+ "Confuzzling the options...",
288728
+ "Tuning the cosmic frequencies...",
288729
+ "Crafting a response worthy of your patience...",
288730
+ "Compiling the 1s and 0s...",
288731
+ "Resolving dependencies... and existential crises...",
288732
+ "Defragmenting memories... both RAM and personal...",
288733
+ "Rebooting the humor module...",
288734
+ "Caching the essentials (mostly cat memes)...",
288735
+ "Optimizing for ludicrous speed",
288736
+ "Swapping bits... don't tell the bytes...",
288737
+ "Garbage collecting... be right back...",
288738
+ "Assembling the interwebs...",
288739
+ "Converting coffee into code...",
288740
+ "Updating the syntax for reality...",
288741
+ "Rewiring the synapses...",
288742
+ "Looking for a misplaced semicolon...",
288743
+ "Greasin' the cogs of the machine...",
288744
+ "Pre-heating the servers...",
288745
+ "Calibrating the flux capacitor...",
288746
+ "Engaging the improbability drive...",
288747
+ "Channeling the Force...",
288748
+ "Aligning the stars for optimal response...",
288749
+ "So say we all...",
288750
+ "Loading the next great idea...",
288751
+ "Just a moment, I'm in the zone...",
288752
+ "Preparing to dazzle you with brilliance...",
288753
+ "Just a tick, I'm polishing my wit...",
288754
+ "Hold tight, I'm crafting a masterpiece...",
288755
+ "Just a jiffy, I'm debugging the universe...",
288756
+ "Just a moment, I'm aligning the pixels...",
288757
+ "Just a sec, I'm optimizing the humor...",
288758
+ "Just a moment, I'm tuning the algorithms...",
288759
+ "Warp speed engaged...",
288760
+ "Mining for more Dilithium crystals...",
288761
+ "Don't panic...",
288762
+ "Following the white rabbit...",
288763
+ "The truth is in here... somewhere...",
288764
+ "Blowing on the cartridge...",
288765
+ "Loading... Do a barrel roll!",
288766
+ "Waiting for the respawn...",
288767
+ "Finishing the Kessel Run in less than 12 parsecs...",
288768
+ "The cake is not a lie, it's just still loading...",
288769
+ "Fiddling with the character creation screen...",
288770
+ "Just a moment, I'm finding the right meme...",
288771
+ "Pressing 'A' to continue...",
288772
+ "Herding digital cats...",
288773
+ "Polishing the pixels...",
288774
+ "Finding a suitable loading screen pun...",
288775
+ "Distracting you with this witty phrase...",
288776
+ "Almost there... probably...",
288777
+ "Our hamsters are working as fast as they can...",
288778
+ "Giving Cloudy a pat on the head...",
288779
+ "Petting the cat...",
288780
+ "Rickrolling my boss...",
288781
+ "Never gonna give you up, never gonna let you down...",
288782
+ "Slapping the bass...",
288783
+ "Tasting the snozberries...",
288784
+ "I'm going the distance, I'm going for speed...",
288785
+ "Is this the real life? Is this just fantasy?...",
288786
+ "I've got a good feeling about this...",
288787
+ "Poking the bear...",
288788
+ "Doing research on the latest memes...",
288789
+ "Figuring out how to make this more witty...",
288790
+ "Hmmm... let me think...",
288791
+ "What do you call a fish with no eyes? A fsh...",
288792
+ "Why did the computer go to therapy? It had too many bytes...",
288793
+ "Why don't programmers like nature? It has too many bugs...",
288794
+ "Why do programmers prefer dark mode? Because light attracts bugs...",
288795
+ "Why did the developer go broke? Because they used up all their cache...",
288796
+ "What can you do with a broken pencil? Nothing, it's pointless...",
288797
+ "Applying percussive maintenance...",
288798
+ "Searching for the correct USB orientation...",
288799
+ "Ensuring the magic smoke stays inside the wires...",
288800
+ "Trying to exit Vim...",
288801
+ "Spinning up the hamster wheel...",
288802
+ "That's not a bug, it's an undocumented feature...",
288803
+ "Engage.",
288804
+ "I'll be back... with an answer.",
288805
+ "My other process is a TARDIS...",
288806
+ "Communing with the machine spirit...",
288807
+ "Letting the thoughts marinate...",
288808
+ "Just remembered where I put my keys...",
288809
+ "Pondering the orb...",
288810
+ "I've seen things you people wouldn't believe... like a user who reads loading messages.",
288811
+ "Initiating thoughtful gaze...",
288812
+ "What's a computer's favorite snack? Microchips.",
288813
+ "Why do Java developers wear glasses? Because they don't C#.",
288814
+ "Charging the laser... pew pew!",
288815
+ "Dividing by zero... just kidding!",
288816
+ "Looking for an adult superviso... I mean, processing.",
288817
+ "Making it go beep boop.",
288818
+ "Buffering... because even AIs need a moment.",
288819
+ "Entangling quantum particles for a faster response...",
288820
+ "Polishing the chrome... on the algorithms.",
288821
+ "Are you not entertained? (Working on it!)",
288822
+ "Summoning the code gremlins... to help, of course.",
288823
+ "Just waiting for the dial-up tone to finish...",
288824
+ "Recalibrating the humor-o-meter.",
288825
+ "My other loading screen is even funnier.",
288826
+ "Pretty sure there's a cat walking on the keyboard somewhere...",
288827
+ "Enhancing... Enhancing... Still loading.",
288828
+ "It's not a bug, it's a feature... of this loading screen.",
288829
+ "Have you tried turning it off and on again? (The loading screen, not me.)",
288830
+ "Constructing additional pylons..."
288831
+ ]
287915
288832
  };
287916
288833
  }
287917
288834
  });
@@ -287994,6 +288911,8 @@ var init_ru = __esm({
287994
288911
  "Available Qwen Code CLI tools:": "\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u044B Qwen Code CLI:",
287995
288912
  "No tools available": "\u041D\u0435\u0442 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432",
287996
288913
  "View or change the approval mode for tool usage": "\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0438\u043B\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0435 \u0440\u0435\u0436\u0438\u043C\u0430 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0434\u043B\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432",
288914
+ 'Invalid approval mode "{{arg}}". Valid modes: {{modes}}': '\u041D\u0435\u0434\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0439 \u0440\u0435\u0436\u0438\u043C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F "{{arg}}". \u0414\u043E\u043F\u0443\u0441\u0442\u0438\u043C\u044B\u0435 \u0440\u0435\u0436\u0438\u043C\u044B: {{modes}}',
288915
+ 'Approval mode set to "{{mode}}"': '\u0420\u0435\u0436\u0438\u043C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D \u043D\u0430 "{{mode}}"',
287997
288916
  "View or change the language setting": "\u041F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0438\u043B\u0438 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043A \u044F\u0437\u044B\u043A\u0430",
287998
288917
  "change the theme": "\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0435 \u0442\u0435\u043C\u044B",
287999
288918
  "Select Theme": "\u0412\u044B\u0431\u043E\u0440 \u0442\u0435\u043C\u044B",
@@ -288003,7 +288922,7 @@ var init_ru = __esm({
288003
288922
  "Theme configuration unavailable due to NO_COLOR env variable.": "\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u0442\u0435\u043C\u044B \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430 \u0438\u0437-\u0437\u0430 \u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u043E\u0439 \u043E\u043A\u0440\u0443\u0436\u0435\u043D\u0438\u044F NO_COLOR.",
288004
288923
  'Theme "{{themeName}}" not found.': '\u0422\u0435\u043C\u0430 "{{themeName}}" \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u0430.',
288005
288924
  'Theme "{{themeName}}" not found in selected scope.': '\u0422\u0435\u043C\u0430 "{{themeName}}" \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u0430 \u0432 \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u043E\u0439 \u043E\u0431\u043B\u0430\u0441\u0442\u0438.',
288006
- "clear the screen and conversation history": "\u041E\u0447\u0438\u0441\u0442\u043A\u0430 \u044D\u043A\u0440\u0430\u043D\u0430 \u0438 \u0438\u0441\u0442\u043E\u0440\u0438\u0438 \u0434\u0438\u0430\u043B\u043E\u0433\u0430",
288925
+ "Clear conversation history and free up context": "\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0434\u0438\u0430\u043B\u043E\u0433\u0430 \u0438 \u043E\u0441\u0432\u043E\u0431\u043E\u0434\u0438\u0442\u044C \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442",
288007
288926
  "Compresses the context by replacing it with a summary.": "\u0421\u0436\u0430\u0442\u0438\u0435 \u043A\u043E\u043D\u0442\u0435\u043A\u0441\u0442\u0430 \u0437\u0430\u043C\u0435\u043D\u043E\u0439 \u043D\u0430 \u043A\u0440\u0430\u0442\u043A\u0443\u044E \u0441\u0432\u043E\u0434\u043A\u0443",
288008
288927
  "open full Qwen Code documentation in your browser": "\u041E\u0442\u043A\u0440\u044B\u0442\u0438\u0435 \u043F\u043E\u043B\u043D\u043E\u0439 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430\u0446\u0438\u0438 Qwen Code \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435",
288009
288928
  "Configuration not available.": "\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430.",
@@ -288175,6 +289094,7 @@ var init_ru = __esm({
288175
289094
  "Tool Output Truncation Lines": "\u041B\u0438\u043C\u0438\u0442 \u0441\u0442\u0440\u043E\u043A \u0432\u044B\u0432\u043E\u0434\u0430 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432",
288176
289095
  "Folder Trust": "\u0414\u043E\u0432\u0435\u0440\u0438\u0435 \u043A \u043F\u0430\u043F\u043A\u0435",
288177
289096
  "Vision Model Preview": "\u0412\u0438\u0437\u0443\u0430\u043B\u044C\u043D\u0430\u044F \u043C\u043E\u0434\u0435\u043B\u044C (\u043F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440)",
289097
+ "Tool Schema Compliance": "\u0421\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0445\u0435\u043C\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430",
288178
289098
  // Варианты перечислений настроек
288179
289099
  "Auto (detect from system)": "\u0410\u0432\u0442\u043E (\u043E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u0442\u044C \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043C\u044B)",
288180
289100
  Text: "\u0422\u0435\u043A\u0441\u0442",
@@ -288195,7 +289115,7 @@ var init_ru = __esm({
288195
289115
  "set external editor preference": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0430 \u043F\u0440\u0435\u0434\u043F\u043E\u0447\u0438\u0442\u0430\u0435\u043C\u043E\u0433\u043E \u0432\u043D\u0435\u0448\u043D\u0435\u0433\u043E \u0440\u0435\u0434\u0430\u043A\u0442\u043E\u0440\u0430",
288196
289116
  "Manage extensions": "\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F\u043C\u0438",
288197
289117
  "List active extensions": "\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0430\u043A\u0442\u0438\u0432\u043D\u044B\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F",
288198
- "Update extensions. Usage: update |--all": "\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: update |--all",
289118
+ "Update extensions. Usage: update <extension-names>|--all": "\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043D\u0438\u044F. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: update <extension-names>|--all",
288199
289119
  "manage IDE integration": "\u0423\u043F\u0440\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0438\u043D\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0435\u0439 \u0441 IDE",
288200
289120
  "check status of IDE integration": "\u041F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C \u0441\u0442\u0430\u0442\u0443\u0441 \u0438\u043D\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 IDE",
288201
289121
  "install required IDE companion for {{ideName}}": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u043D\u0435\u043E\u0431\u0445\u043E\u0434\u0438\u043C\u044B\u0439 \u043A\u043E\u043C\u043F\u0430\u043D\u044C\u043E\u043D IDE \u0434\u043B\u044F {{ideName}}",
@@ -288233,7 +289153,7 @@ var init_ru = __esm({
288233
289153
  "Set UI language": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0430 \u044F\u0437\u044B\u043A\u0430 \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430",
288234
289154
  "Set LLM output language": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0430 \u044F\u0437\u044B\u043A\u0430 \u0432\u044B\u0432\u043E\u0434\u0430 LLM",
288235
289155
  "Usage: /language ui [zh-CN|en-US]": "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /language ui [zh-CN|en-US|ru-RU]",
288236
- "Usage: /language output ": "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /language output ",
289156
+ "Usage: /language output <language>": "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /language output <language>",
288237
289157
  "Example: /language output \u4E2D\u6587": "\u041F\u0440\u0438\u043C\u0435\u0440: /language output \u4E2D\u6587",
288238
289158
  "Example: /language output English": "\u041F\u0440\u0438\u043C\u0435\u0440: /language output English",
288239
289159
  "Example: /language output \u65E5\u672C\u8A9E": "\u041F\u0440\u0438\u043C\u0435\u0440: /language output \u65E5\u672C\u8A9E",
@@ -288245,9 +289165,8 @@ var init_ru = __esm({
288245
289165
  "Available subcommands:": "\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u043F\u043E\u0434\u043A\u043E\u043C\u0430\u043D\u0434\u044B:",
288246
289166
  "To request additional UI language packs, please open an issue on GitHub.": "\u0414\u043B\u044F \u0437\u0430\u043F\u0440\u043E\u0441\u0430 \u0434\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0445 \u044F\u0437\u044B\u043A\u043E\u0432\u044B\u0445 \u043F\u0430\u043A\u0435\u0442\u043E\u0432 \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430, \u043F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0441\u043E\u0437\u0434\u0430\u0439\u0442\u0435 \u043E\u0431\u0440\u0430\u0449\u0435\u043D\u0438\u0435 \u043D\u0430 GitHub.",
288247
289167
  "Available options:": "\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u0432\u0430\u0440\u0438\u0430\u043D\u0442\u044B:",
288248
- " - zh-CN: Simplified Chinese": " - zh-CN: \u0423\u043F\u0440\u043E\u0449\u0435\u043D\u043D\u044B\u0439 \u043A\u0438\u0442\u0430\u0439\u0441\u043A\u0438\u0439",
288249
- " - en-US: English": " - en-US: \u0410\u043D\u0433\u043B\u0438\u0439\u0441\u043A\u0438\u0439",
288250
- " - ru-RU: Russian": " - ru-RU: \u0420\u0443\u0441\u0441\u043A\u0438\u0439",
289168
+ " - zh-CN: Simplified Chinese": " - zh-CN: \u0423\u043F\u0440\u043E\u0449\u0435\u043D\u043D\u044B\u0439 \u043A\u0438\u0442\u0430\u0439\u0441\u043A\u0438\u0439",
289169
+ " - en-US: English": " - en-US: \u0410\u043D\u0433\u043B\u0438\u0439\u0441\u043A\u0438\u0439",
288251
289170
  "Set UI language to Simplified Chinese (zh-CN)": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u044F\u0437\u044B\u043A \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043D\u0430 \u0443\u043F\u0440\u043E\u0449\u0435\u043D\u043D\u044B\u0439 \u043A\u0438\u0442\u0430\u0439\u0441\u043A\u0438\u0439 (zh-CN)",
288252
289171
  "Set UI language to English (en-US)": "\u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u044F\u0437\u044B\u043A \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043D\u0430 \u0430\u043D\u0433\u043B\u0438\u0439\u0441\u043A\u0438\u0439 (en-US)",
288253
289172
  // ============================================================================
@@ -288258,7 +289177,7 @@ var init_ru = __esm({
288258
289177
  "Available approval modes:": "\u0414\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0435 \u0440\u0435\u0436\u0438\u043C\u044B \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F:",
288259
289178
  "Approval mode changed to: {{mode}}": "\u0420\u0435\u0436\u0438\u043C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0438\u0437\u043C\u0435\u043D\u0435\u043D \u043D\u0430: {{mode}}",
288260
289179
  "Approval mode changed to: {{mode}} (saved to {{scope}} settings{{location}})": "\u0420\u0435\u0436\u0438\u043C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u0438\u0437\u043C\u0435\u043D\u0435\u043D \u043D\u0430: {{mode}} (\u0441\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u043E \u0432 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430\u0445 {{scope}}{{location}})",
288261
- "Usage: /approval-mode [--session|--user|--project]": "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /approval-mode [--session|--user|--project]",
289180
+ "Usage: /approval-mode <mode> [--session|--user|--project]": "\u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /approval-mode <mode> [--session|--user|--project]",
288262
289181
  "Scope subcommands do not accept additional arguments.": "\u041F\u043E\u0434\u043A\u043E\u043C\u0430\u043D\u0434\u044B \u043E\u0431\u043B\u0430\u0441\u0442\u0438 \u043D\u0435 \u043F\u0440\u0438\u043D\u0438\u043C\u0430\u044E\u0442 \u0434\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0445 \u0430\u0440\u0433\u0443\u043C\u0435\u043D\u0442\u043E\u0432.",
288263
289182
  "Plan mode - Analyze only, do not modify files or execute commands": "\u0420\u0435\u0436\u0438\u043C \u043F\u043B\u0430\u043D\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F - \u0442\u043E\u043B\u044C\u043A\u043E \u0430\u043D\u0430\u043B\u0438\u0437, \u0431\u0435\u0437 \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F \u0444\u0430\u0439\u043B\u043E\u0432 \u0438\u043B\u0438 \u0432\u044B\u043F\u043E\u043B\u043D\u0435\u043D\u0438\u044F \u043A\u043E\u043C\u0430\u043D\u0434",
288264
289183
  "Default mode - Require approval for file edits or shell commands": "\u0420\u0435\u0436\u0438\u043C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E - \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u0435 \u0434\u043B\u044F \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u0444\u0430\u0439\u043B\u043E\u0432 \u0438\u043B\u0438 \u043A\u043E\u043C\u0430\u043D\u0434 \u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B\u0430",
@@ -288347,7 +289266,7 @@ var init_ru = __esm({
288347
289266
  "Error sharing conversation: {{error}}": "\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u044D\u043A\u0441\u043F\u043E\u0440\u0442\u0435 \u0434\u0438\u0430\u043B\u043E\u0433\u0430: {{error}}",
288348
289267
  "Conversation shared to {{filePath}}": "\u0414\u0438\u0430\u043B\u043E\u0433 \u044D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D \u0432 {{filePath}}",
288349
289268
  "No conversation found to share.": "\u041D\u0435\u0442 \u0434\u0438\u0430\u043B\u043E\u0433\u0430 \u0434\u043B\u044F \u044D\u043A\u0441\u043F\u043E\u0440\u0442\u0430.",
288350
- "Share the current conversation to a markdown or json file. Usage: /chat share <\u043F\u0443\u0442\u044C-\u043A-\u0444\u0430\u0439\u043B\u0443>": "\u042D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u0434\u0438\u0430\u043B\u043E\u0433 \u0432 markdown \u0438\u043B\u0438 json \u0444\u0430\u0439\u043B. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /chat share <\u043F\u0443\u0442\u044C-\u043A-\u0444\u0430\u0439\u043B\u0443>",
289269
+ "Share the current conversation to a markdown or json file. Usage: /chat share <file>": "\u042D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u0434\u0438\u0430\u043B\u043E\u0433 \u0432 markdown \u0438\u043B\u0438 json \u0444\u0430\u0439\u043B. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /chat share <\u0444\u0430\u0439\u043B>",
288351
289270
  // ============================================================================
288352
289271
  // Команды - Резюме
288353
289272
  // ============================================================================
@@ -288370,8 +289289,8 @@ var init_ru = __esm({
288370
289289
  // ============================================================================
288371
289290
  // Команды - Очистка
288372
289291
  // ============================================================================
288373
- "Clearing terminal and resetting chat.": "\u041E\u0447\u0438\u0441\u0442\u043A\u0430 \u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B\u0430 \u0438 \u0441\u0431\u0440\u043E\u0441 \u0447\u0430\u0442\u0430.",
288374
- "Clearing terminal.": "\u041E\u0447\u0438\u0441\u0442\u043A\u0430 \u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B\u0430.",
289292
+ "Starting a new session, resetting chat, and clearing terminal.": "\u041D\u0430\u0447\u0430\u043B\u043E \u043D\u043E\u0432\u043E\u0439 \u0441\u0435\u0441\u0441\u0438\u0438, \u0441\u0431\u0440\u043E\u0441 \u0447\u0430\u0442\u0430 \u0438 \u043E\u0447\u0438\u0441\u0442\u043A\u0430 \u0442\u0435\u0440\u043C\u0438\u043D\u0430\u043B\u0430.",
289293
+ "Starting a new session and clearing.": "\u041D\u0430\u0447\u0430\u043B\u043E \u043D\u043E\u0432\u043E\u0439 \u0441\u0435\u0441\u0441\u0438\u0438 \u0438 \u043E\u0447\u0438\u0441\u0442\u043A\u0430.",
288375
289294
  // ============================================================================
288376
289295
  // Команды - Сжатие
288377
289296
  // ============================================================================
@@ -288391,7 +289310,7 @@ var init_ru = __esm({
288391
289310
  "Please provide at least one path to add.": "\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0443\u043A\u0430\u0436\u0438\u0442\u0435 \u0445\u043E\u0442\u044F \u0431\u044B \u043E\u0434\u0438\u043D \u043F\u0443\u0442\u044C \u0434\u043B\u044F \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u044F.",
288392
289311
  "The /directory add command is not supported in restrictive sandbox profiles. Please use --include-directories when starting the session instead.": "\u041A\u043E\u043C\u0430\u043D\u0434\u0430 /directory add \u043D\u0435 \u043F\u043E\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044F \u0432 \u043E\u0433\u0440\u0430\u043D\u0438\u0447\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0445 \u043F\u0440\u043E\u0444\u0438\u043B\u044F\u0445 \u043F\u0435\u0441\u043E\u0447\u043D\u0438\u0446\u044B. \u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435 --include-directories \u043F\u0440\u0438 \u0437\u0430\u043F\u0443\u0441\u043A\u0435 \u0441\u0435\u0441\u0441\u0438\u0438.",
288393
289312
  "Error adding '{{path}}': {{error}}": "\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0438 '{{path}}': {{error}}",
288394
- "Successfully added GEMINI.md files from the following directories if there are:\n- {{directories}}": "\u0423\u0441\u043F\u0435\u0448\u043D\u043E \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B \u0444\u0430\u0439\u043B\u044B GEMINI.md \u0438\u0437 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0445 \u0434\u0438\u0440\u0435\u043A\u0442\u043E\u0440\u0438\u0439 (\u0435\u0441\u043B\u0438 \u043E\u043D\u0438 \u0435\u0441\u0442\u044C):\n- {{directories}}",
289313
+ "Successfully added QWEN.md files from the following directories if there are:\n- {{directories}}": "\u0423\u0441\u043F\u0435\u0448\u043D\u043E \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B \u0444\u0430\u0439\u043B\u044B QWEN.md \u0438\u0437 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0445 \u0434\u0438\u0440\u0435\u043A\u0442\u043E\u0440\u0438\u0439 (\u0435\u0441\u043B\u0438 \u043E\u043D\u0438 \u0435\u0441\u0442\u044C):\n- {{directories}}",
288395
289314
  "Error refreshing memory: {{error}}": "\u041E\u0448\u0438\u0431\u043A\u0430 \u043F\u0440\u0438 \u043E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0438 \u043F\u0430\u043C\u044F\u0442\u0438: {{error}}",
288396
289315
  "Successfully added directories:\n- {{directories}}": "\u0423\u0441\u043F\u0435\u0448\u043D\u043E \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B \u0434\u0438\u0440\u0435\u043A\u0442\u043E\u0440\u0438\u0438:\n- {{directories}}",
288397
289316
  "Current workspace directories:\n{{directories}}": "\u0422\u0435\u043A\u0443\u0449\u0438\u0435 \u0434\u0438\u0440\u0435\u043A\u0442\u043E\u0440\u0438\u0438 \u0440\u0430\u0431\u043E\u0447\u0435\u0433\u043E \u043F\u0440\u043E\u0441\u0442\u0440\u0430\u043D\u0441\u0442\u0432\u0430:\n{{directories}}",
@@ -288563,6 +289482,7 @@ var init_ru = __esm({
288563
289482
  // Экран выхода / Статистика
288564
289483
  // ============================================================================
288565
289484
  "Agent powering down. Goodbye!": "\u0410\u0433\u0435\u043D\u0442 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442 \u0440\u0430\u0431\u043E\u0442\u0443. \u0414\u043E \u0441\u0432\u0438\u0434\u0430\u043D\u0438\u044F!",
289485
+ "To continue this session, run": "\u0414\u043B\u044F \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F \u044D\u0442\u043E\u0439 \u0441\u0435\u0441\u0441\u0438\u0438, \u0432\u044B\u043F\u043E\u043B\u043D\u0438\u0442\u0435",
288566
289486
  "Interaction Summary": "\u0421\u0432\u043E\u0434\u043A\u0430 \u0432\u0437\u0430\u0438\u043C\u043E\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044F",
288567
289487
  "Session ID:": "ID \u0441\u0435\u0441\u0441\u0438\u0438:",
288568
289488
  "Tool Calls:": "\u0412\u044B\u0437\u043E\u0432\u044B \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432:",
@@ -288615,134 +289535,139 @@ var init_ru = __esm({
288615
289535
  // ============================================================================
288616
289536
  "Waiting for user confirmation...": "\u041E\u0436\u0438\u0434\u0430\u043D\u0438\u0435 \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043D\u0438\u044F \u043E\u0442 \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F...",
288617
289537
  "(esc to cancel, {{time}})": "(esc \u0434\u043B\u044F \u043E\u0442\u043C\u0435\u043D\u044B, {{time}})",
288618
- "I'm Feeling Lucky": "\u041C\u043D\u0435 \u043F\u043E\u0432\u0435\u0437\u0451\u0442!",
288619
- "Shipping awesomeness... ": "\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u043C \u043A\u0440\u0443\u0442\u0438\u0437\u043D\u0443... ",
288620
- "Painting the serifs back on...": "\u0420\u0438\u0441\u0443\u0435\u043C \u0437\u0430\u0441\u0435\u0447\u043A\u0438 \u043D\u0430 \u0431\u0443\u043A\u0432\u0430\u0445...",
288621
- "Navigating the slime mold...": "\u041F\u0440\u043E\u0431\u0438\u0440\u0430\u0435\u043C\u0441\u044F \u0447\u0435\u0440\u0435\u0437 \u0441\u043B\u0438\u0437\u0435\u0432\u0438\u043A\u043E\u0432..",
288622
- "Consulting the digital spirits...": "\u0421\u043E\u0432\u0435\u0442\u0443\u0435\u043C\u0441\u044F \u0441 \u0446\u0438\u0444\u0440\u043E\u0432\u044B\u043C\u0438 \u0434\u0443\u0445\u0430\u043C\u0438...",
288623
- "Reticulating splines...": "\u0421\u0433\u043B\u0430\u0436\u0438\u0432\u0430\u043D\u0438\u0435 \u0441\u043F\u043B\u0430\u0439\u043D\u043E\u0432...",
288624
- "Warming up the AI hamsters...": "\u0420\u0430\u0437\u043E\u0433\u0440\u0435\u0432\u0430\u0435\u043C \u0418\u0418-\u0445\u043E\u043C\u044F\u0447\u043A\u043E\u0432...",
288625
- "Asking the magic conch shell...": "\u0421\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043C \u0432\u043E\u043B\u0448\u0435\u0431\u043D\u0443\u044E \u0440\u0430\u043A\u0443\u0448\u043A\u0443...",
288626
- "Generating witty retort...": "\u0413\u0435\u043D\u0435\u0440\u0438\u0440\u0443\u0435\u043C \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u044B\u0439 \u043E\u0442\u0432\u0435\u0442...",
288627
- "Polishing the algorithms...": "\u041F\u043E\u043B\u0438\u0440\u0443\u0435\u043C \u0430\u043B\u0433\u043E\u0440\u0438\u0442\u043C\u044B...",
288628
- "Don't rush perfection (or my code)...": "\u041D\u0435 \u0442\u043E\u0440\u043E\u043F\u0438\u0442\u0435 \u0441\u043E\u0432\u0435\u0440\u0448\u0435\u043D\u0441\u0442\u0432\u043E (\u0438\u043B\u0438 \u043C\u043E\u0439 \u043A\u043E\u0434)...",
288629
- "Brewing fresh bytes...": "\u0417\u0430\u0432\u0430\u0440\u0438\u0432\u0430\u0435\u043C \u0441\u0432\u0435\u0436\u0438\u0435 \u0431\u0430\u0439\u0442\u044B...",
288630
- "Counting electrons...": "\u041F\u0435\u0440\u0435\u0441\u0447\u0438\u0442\u044B\u0432\u0430\u0435\u043C \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u044B...",
288631
- "Engaging cognitive processors...": "\u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u043C \u043A\u043E\u0433\u043D\u0438\u0442\u0438\u0432\u043D\u044B\u0435 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u043E\u0440\u044B...",
288632
- "Checking for syntax errors in the universe...": "\u0418\u0449\u0435\u043C \u0441\u0438\u043D\u0442\u0430\u043A\u0441\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u043E\u0448\u0438\u0431\u043A\u0438 \u0432\u043E \u0432\u0441\u0435\u043B\u0435\u043D\u043D\u043E\u0439...",
288633
- "One moment, optimizing humor...": "\u0421\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0443, \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0438\u0440\u0443\u0435\u043C \u044E\u043C\u043E\u0440...",
288634
- "Shuffling punchlines...": "\u041F\u0435\u0440\u0435\u0442\u0430\u0441\u043E\u0432\u044B\u0432\u0430\u0435\u043C \u043F\u0430\u043D\u0447\u043B\u0430\u0439\u043D\u044B...",
288635
- "Untangling neural nets...": "\u0420\u0430\u0441\u043F\u0443\u0442\u0430\u0432\u0430\u0435\u043C \u043D\u0435\u0439\u0440\u043E\u0441\u0435\u0442\u0438...",
288636
- "Compiling brilliance...": "\u041A\u043E\u043C\u043F\u0438\u043B\u0438\u0440\u0443\u0435\u043C \u0433\u0435\u043D\u0438\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C...",
288637
- "Loading wit.exe...": "\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C yumor.exe...",
288638
- "Summoning the cloud of wisdom...": "\u041F\u0440\u0438\u0437\u044B\u0432\u0430\u0435\u043C \u043E\u0431\u043B\u0430\u043A\u043E \u043C\u0443\u0434\u0440\u043E\u0441\u0442\u0438...",
288639
- "Preparing a witty response...": "\u0413\u043E\u0442\u043E\u0432\u0438\u043C \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u044B\u0439 \u043E\u0442\u0432\u0435\u0442...",
288640
- "Just a sec, I'm debugging reality...": "\u0421\u0435\u043A\u0443\u043D\u0434\u0443, \u0438\u0434\u0451\u0442 \u043E\u0442\u043B\u0430\u0434\u043A\u0430 \u0440\u0435\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u0438...",
288641
- "Confuzzling the options...": "\u0417\u0430\u043F\u0443\u0442\u044B\u0432\u0430\u0435\u043C \u0432\u0430\u0440\u0438\u0430\u043D\u0442\u044B...",
288642
- "Tuning the cosmic frequencies...": "\u041D\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043C \u043A\u043E\u0441\u043C\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u0447\u0430\u0441\u0442\u043E\u0442\u044B...",
288643
- "Crafting a response worthy of your patience...": "\u0421\u043E\u0437\u0434\u0430\u0435\u043C \u043E\u0442\u0432\u0435\u0442, \u0434\u043E\u0441\u0442\u043E\u0439\u043D\u044B\u0439 \u0432\u0430\u0448\u0435\u0433\u043E \u0442\u0435\u0440\u043F\u0435\u043D\u0438\u044F...",
288644
- "Compiling the 1s and 0s...": "\u041A\u043E\u043C\u043F\u0438\u043B\u0438\u0440\u0443\u0435\u043C \u0435\u0434\u0438\u043D\u0438\u0447\u043A\u0438 \u0438 \u043D\u043E\u043B\u0438\u043A\u0438...",
288645
- "Resolving dependencies... and existential crises...": "\u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043C \u0437\u0430\u0432\u0438\u0441\u0438\u043C\u043E\u0441\u0442\u0438... \u0438 \u044D\u043A\u0437\u0438\u0441\u0442\u0435\u043D\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0435 \u043A\u0440\u0438\u0437\u0438\u0441\u044B...",
288646
- "Defragmenting memories... both RAM and personal...": "\u0414\u0435\u0444\u0440\u0430\u0433\u043C\u0435\u043D\u0442\u0430\u0446\u0438\u044F \u043F\u0430\u043C\u044F\u0442\u0438... \u0438 \u043E\u043F\u0435\u0440\u0430\u0442\u0438\u0432\u043D\u043E\u0439, \u0438 \u043B\u0438\u0447\u043D\u043E\u0439...",
288647
- "Rebooting the humor module...": "\u041F\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u043C\u043E\u0434\u0443\u043B\u044F \u044E\u043C\u043E\u0440\u0430...",
288648
- "Caching the essentials (mostly cat memes)...": "\u041A\u044D\u0448\u0438\u0440\u0443\u0435\u043C \u0441\u0430\u043C\u043E\u0435 \u0432\u0430\u0436\u043D\u043E\u0435 (\u0432 \u043E\u0441\u043D\u043E\u0432\u043D\u043E\u043C \u043C\u0435\u043C\u044B \u0441 \u043A\u043E\u0442\u0438\u043A\u0430\u043C\u0438)...",
288649
- "Optimizing for ludicrous speed": "\u041E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0446\u0438\u044F \u0434\u043B\u044F \u0431\u0435\u0437\u0443\u043C\u043D\u043E\u0439 \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u0438",
288650
- "Swapping bits... don't tell the bytes...": "\u041C\u0435\u043D\u044F\u0435\u043C \u0431\u0438\u0442\u044B... \u0442\u043E\u043B\u044C\u043A\u043E \u0431\u0430\u0439\u0442\u0430\u043C \u043D\u0435 \u0433\u043E\u0432\u043E\u0440\u0438\u0442\u0435...",
288651
- "Garbage collecting... be right back...": "\u0421\u0431\u043E\u0440\u043A\u0430 \u043C\u0443\u0441\u043E\u0440\u0430... \u0441\u043A\u043E\u0440\u043E \u0432\u0435\u0440\u043D\u0443\u0441\u044C...",
288652
- "Assembling the interwebs...": "\u0421\u0431\u043E\u0440\u043A\u0430 \u0438\u043D\u0442\u0435\u0440\u043D\u0435\u0442\u043E\u0432...",
288653
- "Converting coffee into code...": "\u041F\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u043C \u043A\u043E\u0444\u0435 \u0432 \u043A\u043E\u0434...",
288654
- "Updating the syntax for reality...": "\u041E\u0431\u043D\u043E\u0432\u043B\u044F\u0435\u043C \u0441\u0438\u043D\u0442\u0430\u043A\u0441\u0438\u0441 \u0440\u0435\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u0438...",
288655
- "Rewiring the synapses...": "\u041F\u0435\u0440\u0435\u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0430\u0435\u043C \u0441\u0438\u043D\u0430\u043F\u0441\u044B...",
288656
- "Looking for a misplaced semicolon...": "\u0418\u0449\u0435\u043C \u043B\u0438\u0448\u043D\u044E\u044E \u0442\u043E\u0447\u043A\u0443 \u0441 \u0437\u0430\u043F\u044F\u0442\u043E\u0439...",
288657
- "Greasin' the cogs of the machine...": "\u0421\u043C\u0430\u0437\u044B\u0432\u0430\u0435\u043C \u0448\u0435\u0441\u0442\u0435\u0440\u0451\u043D\u043A\u0438 \u043C\u0430\u0448\u0438\u043D\u044B...",
288658
- "Pre-heating the servers...": "\u0420\u0430\u0437\u043E\u0433\u0440\u0435\u0432\u0430\u0435\u043C \u0441\u0435\u0440\u0432\u0435\u0440\u044B...",
288659
- "Calibrating the flux capacitor...": "\u041A\u0430\u043B\u0438\u0431\u0440\u0443\u0435\u043C \u043F\u043E\u0442\u043E\u043A\u043E\u0432\u044B\u0439 \u043D\u0430\u043A\u043E\u043F\u0438\u0442\u0435\u043B\u044C...",
288660
- "Engaging the improbability drive...": "\u0412\u043A\u043B\u044E\u0447\u0430\u0435\u043C \u0434\u0432\u0438\u0433\u0430\u0442\u0435\u043B\u044C \u043D\u0435\u0432\u0435\u0440\u043E\u044F\u0442\u043D\u043E\u0441\u0442\u0438...",
288661
- "Channeling the Force...": "\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u043C \u0421\u0438\u043B\u0443...",
288662
- "Aligning the stars for optimal response...": "\u0412\u044B\u0440\u0430\u0432\u043D\u0438\u0432\u0430\u0435\u043C \u0437\u0432\u0451\u0437\u0434\u044B \u0434\u043B\u044F \u043E\u043F\u0442\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u043E\u0442\u0432\u0435\u0442\u0430...",
288663
- "So say we all...": "\u0422\u0430\u043A \u0441\u043A\u0430\u0436\u0435\u043C \u043C\u044B \u0432\u0441\u0435...",
288664
- "Loading the next great idea...": "\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439 \u0432\u0435\u043B\u0438\u043A\u043E\u0439 \u0438\u0434\u0435\u0438...",
288665
- "Just a moment, I'm in the zone...": "\u041C\u0438\u043D\u0443\u0442\u043A\u0443, \u044F \u0432 \u043F\u043E\u0442\u043E\u043A\u0435...",
288666
- "Preparing to dazzle you with brilliance...": "\u0413\u043E\u0442\u043E\u0432\u043B\u044E\u0441\u044C \u043E\u0441\u043B\u0435\u043F\u0438\u0442\u044C \u0432\u0430\u0441 \u0433\u0435\u043D\u0438\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C\u044E...",
288667
- "Just a tick, I'm polishing my wit...": "\u0421\u0435\u043A\u0443\u043D\u0434\u0443, \u043F\u043E\u043B\u0438\u0440\u0443\u044E \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u0438\u0435...",
288668
- "Hold tight, I'm crafting a masterpiece...": "\u0414\u0435\u0440\u0436\u0438\u0442\u0435\u0441\u044C, \u0441\u043E\u0437\u0434\u0430\u044E \u0448\u0435\u0434\u0435\u0432\u0440...",
288669
- "Just a jiffy, I'm debugging the universe...": "\u041C\u0438\u0433\u043E\u043C, \u043E\u0442\u043B\u0430\u0436\u0438\u0432\u0430\u044E \u0432\u0441\u0435\u043B\u0435\u043D\u043D\u0443\u044E...",
288670
- "Just a moment, I'm aligning the pixels...": "\u041C\u043E\u043C\u0435\u043D\u0442, \u0432\u044B\u0440\u0430\u0432\u043D\u0438\u0432\u0430\u044E \u043F\u0438\u043A\u0441\u0435\u043B\u0438...",
288671
- "Just a sec, I'm optimizing the humor...": "\u0421\u0435\u043A\u0443\u043D\u0434\u0443, \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0438\u0440\u0443\u044E \u044E\u043C\u043E\u0440...",
288672
- "Just a moment, I'm tuning the algorithms...": "\u041C\u043E\u043C\u0435\u043D\u0442, \u043D\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044E \u0430\u043B\u0433\u043E\u0440\u0438\u0442\u043C\u044B...",
288673
- "Warp speed engaged...": "\u0412\u0430\u0440\u043F-\u0441\u043A\u043E\u0440\u043E\u0441\u0442\u044C \u0432\u043A\u043B\u044E\u0447\u0435\u043D\u0430...",
288674
- "Mining for more Dilithium crystals...": "\u0414\u043E\u0431\u044B\u0432\u0430\u0435\u043C \u043A\u0440\u0438\u0441\u0442\u0430\u043B\u043B\u044B \u0434\u0438\u043B\u0438\u0442\u0438\u044F...",
288675
- "Don't panic...": "\u0411\u0435\u0437 \u043F\u0430\u043D\u0438\u043A\u0438...",
288676
- "Following the white rabbit...": "\u0421\u043B\u0435\u0434\u0443\u0435\u043C \u0437\u0430 \u0431\u0435\u043B\u044B\u043C \u043A\u0440\u043E\u043B\u0438\u043A\u043E\u043C...",
288677
- "The truth is in here... somewhere...": "\u0418\u0441\u0442\u0438\u043D\u0430 \u0433\u0434\u0435-\u0442\u043E \u0437\u0434\u0435\u0441\u044C... \u0432\u043D\u0443\u0442\u0440\u0438...",
288678
- "Blowing on the cartridge...": "\u041F\u0440\u043E\u0434\u0443\u0432\u0430\u0435\u043C \u043A\u0430\u0440\u0442\u0440\u0438\u0434\u0436...",
288679
- "Loading... Do a barrel roll!": "\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430... \u0421\u0434\u0435\u043B\u0430\u0439 \u0431\u043E\u0447\u043A\u0443!",
288680
- "Waiting for the respawn...": "\u0416\u0434\u0435\u043C \u0440\u0435\u0441\u043F\u0430\u0443\u043D\u0430...",
288681
- "Finishing the Kessel Run in less than 12 parsecs...": "\u0414\u0435\u043B\u0430\u0435\u043C \u0414\u0443\u0433\u0443 \u041A\u0435\u0441\u0441\u0435\u043B\u044F \u043C\u0435\u043D\u0435\u0435 \u0447\u0435\u043C \u0437\u0430 12 \u043F\u0430\u0440\u0441\u0435\u043A\u043E\u0432...",
288682
- "The cake is not a lie, it's just still loading...": "\u0422\u043E\u0440\u0442\u0438\u043A \u2014 \u043D\u0435 \u043B\u043E\u0436\u044C, \u043E\u043D \u043F\u0440\u043E\u0441\u0442\u043E \u0435\u0449\u0451 \u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044F...",
288683
- "Fiddling with the character creation screen...": "\u0412\u043E\u0437\u0438\u043C\u0441\u044F \u0441 \u044D\u043A\u0440\u0430\u043D\u043E\u043C \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F \u043F\u0435\u0440\u0441\u043E\u043D\u0430\u0436\u0430...",
288684
- "Just a moment, I'm finding the right meme...": "\u041C\u0438\u043D\u0443\u0442\u043A\u0443, \u0438\u0449\u0443 \u043F\u043E\u0434\u0445\u043E\u0434\u044F\u0449\u0438\u0439 \u043C\u0435\u043C...",
288685
- "Pressing 'A' to continue...": "\u041D\u0430\u0436\u0438\u043C\u0430\u0435\u043C 'A' \u0434\u043B\u044F \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F...",
288686
- "Herding digital cats...": "\u041F\u0430\u0441\u0451\u043C \u0446\u0438\u0444\u0440\u043E\u0432\u044B\u0445 \u043A\u043E\u0442\u043E\u0432...",
288687
- "Polishing the pixels...": "\u041F\u043E\u043B\u0438\u0440\u0443\u0435\u043C \u043F\u0438\u043A\u0441\u0435\u043B\u0438...",
288688
- "Finding a suitable loading screen pun...": "\u0418\u0449\u0435\u043C \u043F\u043E\u0434\u0445\u043E\u0434\u044F\u0449\u0438\u0439 \u043A\u0430\u043B\u0430\u043C\u0431\u0443\u0440 \u0434\u043B\u044F \u044D\u043A\u0440\u0430\u043D\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438...",
288689
- "Distracting you with this witty phrase...": "\u041E\u0442\u0432\u043B\u0435\u043A\u0430\u0435\u043C \u0432\u0430\u0441 \u044D\u0442\u043E\u0439 \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u043E\u0439 \u0444\u0440\u0430\u0437\u043E\u0439...",
288690
- "Almost there... probably...": "\u041F\u043E\u0447\u0442\u0438 \u0433\u043E\u0442\u043E\u0432\u043E... \u0432\u0440\u043E\u0434\u0435...",
288691
- "Our hamsters are working as fast as they can...": "\u041D\u0430\u0448\u0438 \u0445\u043E\u043C\u044F\u0447\u043A\u0438 \u0440\u0430\u0431\u043E\u0442\u0430\u044E\u0442 \u0438\u0437\u043E \u0432\u0441\u0435\u0445 \u0441\u0438\u043B...",
288692
- "Giving Cloudy a pat on the head...": "\u0413\u043B\u0430\u0434\u0438\u043C \u041E\u0431\u043B\u0430\u0447\u043A\u043E \u043F\u043E \u0433\u043E\u043B\u043E\u0432\u0435...",
288693
- "Petting the cat...": "\u0413\u043B\u0430\u0434\u0438\u043C \u043A\u043E\u0442\u0430...",
288694
- "Rickrolling my boss...": "\u0420\u0438\u043A\u0440\u043E\u043B\u043B\u0438\u043C \u043D\u0430\u0447\u0430\u043B\u044C\u043D\u0438\u043A\u0430...",
288695
- "Never gonna give you up, never gonna let you down...": "Never gonna give you up, never gonna let you down...",
288696
- "Slapping the bass...": "\u041B\u0430\u0431\u0430\u0435\u043C \u0431\u0430\u0441-\u0433\u0438\u0442\u0430\u0440\u0443...",
288697
- "Tasting the snozberries...": "\u041F\u0440\u043E\u0431\u0443\u0435\u043C \u0441\u043D\u0443\u0437\u0431\u0435\u0440\u0440\u0438 \u043D\u0430 \u0432\u043A\u0443\u0441...",
288698
- "I'm going the distance, I'm going for speed...": "\u0418\u0434\u0443 \u0434\u043E \u043A\u043E\u043D\u0446\u0430, \u0438\u0434\u0443 \u043D\u0430 \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u044C...",
288699
- "Is this the real life? Is this just fantasy?...": "Is this the real life? Is this just fantasy?...",
288700
- "I've got a good feeling about this...": "\u0423 \u043C\u0435\u043D\u044F \u0445\u043E\u0440\u043E\u0448\u0435\u0435 \u043F\u0440\u0435\u0434\u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0435...",
288701
- "Poking the bear...": "\u0414\u0440\u0430\u0437\u043D\u0438\u043C \u043C\u0435\u0434\u0432\u0435\u0434\u044F... (\u041D\u0435 \u043B\u0435\u0437\u044C...)",
288702
- "Doing research on the latest memes...": "\u0418\u0437\u0443\u0447\u0430\u0435\u043C \u0441\u0432\u0435\u0436\u0438\u0435 \u043C\u0435\u043C\u044B...",
288703
- "Figuring out how to make this more witty...": "\u0414\u0443\u043C\u0430\u0435\u043C, \u043A\u0430\u043A \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u044D\u0442\u043E \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u0435\u0435...",
288704
- "Hmmm... let me think...": "\u0425\u043C\u043C... \u0434\u0430\u0439\u0442\u0435 \u043F\u043E\u0434\u0443\u043C\u0430\u0442\u044C...",
288705
- "What do you call a fish with no eyes? A fsh...": "\u041A\u0430\u043A \u043D\u0430\u0437\u044B\u0432\u0430\u0435\u0442\u0441\u044F \u0431\u0443\u043C\u0435\u0440\u0430\u043D\u0433, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u043D\u0435 \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044F? \u041F\u0430\u043B\u043A\u0430...",
288706
- "Why did the computer go to therapy? It had too many bytes...": "\u041F\u043E\u0447\u0435\u043C\u0443 \u043A\u043E\u043C\u043F\u044C\u044E\u0442\u0435\u0440 \u043F\u0440\u043E\u0441\u0442\u0443\u0434\u0438\u043B\u0441\u044F? \u041F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u043E\u0441\u0442\u0430\u0432\u0438\u043B \u043E\u043A\u043D\u0430 \u043E\u0442\u043A\u0440\u044B\u0442\u044B\u043C\u0438...",
288707
- "Why don't programmers like nature? It has too many bugs...": "\u041F\u043E\u0447\u0435\u043C\u0443 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0438\u0441\u0442\u044B \u043D\u0435 \u043B\u044E\u0431\u044F\u0442 \u0433\u0443\u043B\u044F\u0442\u044C \u043D\u0430 \u0443\u043B\u0438\u0446\u0435? \u0422\u0430\u043C \u0441\u0440\u0435\u0434\u0430 \u043D\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043D\u0430...",
288708
- "Why do programmers prefer dark mode? Because light attracts bugs...": "\u041F\u043E\u0447\u0435\u043C\u0443 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0438\u0441\u0442\u044B \u043F\u0440\u0435\u0434\u043F\u043E\u0447\u0438\u0442\u0430\u044E\u0442 \u0442\u0451\u043C\u043D\u0443\u044E \u0442\u0435\u043C\u0443? \u041F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u0432 \u0442\u0435\u043C\u043D\u043E\u0442\u0435 \u043D\u0435 \u0432\u0438\u0434\u043D\u043E \u0431\u0430\u0433\u043E\u0432...",
288709
- "Why did the developer go broke? Because they used up all their cache...": "\u041F\u043E\u0447\u0435\u043C\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A \u0440\u0430\u0437\u043E\u0440\u0438\u043B\u0441\u044F? \u041F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u043F\u043E\u0442\u0440\u0430\u0442\u0438\u043B \u0432\u0435\u0441\u044C \u0441\u0432\u043E\u0439 \u043A\u044D\u0448...",
288710
- "What can you do with a broken pencil? Nothing, it's pointless...": "\u0427\u0442\u043E \u043C\u043E\u0436\u043D\u043E \u0434\u0435\u043B\u0430\u0442\u044C \u0441\u043E \u0441\u043B\u043E\u043C\u0430\u043D\u043D\u044B\u043C \u043A\u0430\u0440\u0430\u043D\u0434\u0430\u0448\u043E\u043C? \u041D\u0438\u0447\u0435\u0433\u043E \u2014 \u043E\u043D \u0442\u0443\u043F\u043E\u0439...",
288711
- "Applying percussive maintenance...": "\u041F\u0440\u043E\u0432\u043E\u0436\u0443 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0443 \u043C\u0435\u0442\u043E\u0434\u043E\u043C \u0442\u044B\u043A\u0430...",
288712
- "Searching for the correct USB orientation...": "\u0418\u0449\u0435\u043C, \u043A\u0430\u043A\u043E\u0439 \u0441\u0442\u043E\u0440\u043E\u043D\u043E\u0439 \u0432\u0441\u0442\u0430\u0432\u043B\u044F\u0442\u044C \u0444\u043B\u0435\u0448\u043A\u0443...",
288713
- "Ensuring the magic smoke stays inside the wires...": "\u0421\u043B\u0435\u0434\u0438\u043C, \u0447\u0442\u043E\u0431\u044B \u0432\u043E\u043B\u0448\u0435\u0431\u043D\u044B\u0439 \u0434\u044B\u043C \u043D\u0435 \u0432\u044B\u0448\u0435\u043B \u0438\u0437 \u043F\u0440\u043E\u0432\u043E\u0434\u043E\u0432...",
288714
- "Rewriting in Rust for no particular reason...": "\u041F\u0435\u0440\u0435\u043F\u0438\u0441\u044B\u0432\u0430\u0435\u043C \u0432\u0441\u0451 \u043D\u0430 Rust \u0431\u0435\u0437 \u043E\u0441\u043E\u0431\u043E\u0439 \u043F\u0440\u0438\u0447\u0438\u043D\u044B...",
288715
- "Trying to exit Vim...": "\u041F\u044B\u0442\u0430\u0435\u043C\u0441\u044F \u0432\u044B\u0439\u0442\u0438 \u0438\u0437 Vim...",
288716
- "Spinning up the hamster wheel...": "\u0420\u0430\u0441\u043A\u0440\u0443\u0447\u0438\u0432\u0430\u0435\u043C \u043A\u043E\u043B\u0435\u0441\u043E \u0434\u043B\u044F \u0445\u043E\u043C\u044F\u043A\u0430...",
288717
- "That's not a bug, it's an undocumented feature...": "\u042D\u0442\u043E \u043D\u0435 \u0431\u0430\u0433, \u0430 \u0444\u0438\u0447\u0430...",
288718
- "Engage.": "\u041F\u043E\u0435\u0445\u0430\u043B\u0438!",
288719
- "I'll be back... with an answer.": "\u042F \u0432\u0435\u0440\u043D\u0443\u0441\u044C... \u0441 \u043E\u0442\u0432\u0435\u0442\u043E\u043C.",
288720
- "My other process is a TARDIS...": "\u041C\u043E\u0439 \u0434\u0440\u0443\u0433\u043E\u0439 \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u2014 \u044D\u0442\u043E \u0422\u0410\u0420\u0414\u0418\u0421...",
288721
- "Communing with the machine spirit...": "\u041E\u0431\u0449\u0430\u0435\u043C\u0441\u044F \u0441 \u0434\u0443\u0445\u043E\u043C \u043C\u0430\u0448\u0438\u043D\u044B...",
288722
- "Letting the thoughts marinate...": "\u0414\u0430\u0435\u043C \u043C\u044B\u0441\u043B\u044F\u043C \u0437\u0430\u043C\u0430\u0440\u0438\u043D\u043E\u0432\u0430\u0442\u044C\u0441\u044F...",
288723
- "Just remembered where I put my keys...": "\u0422\u043E\u043B\u044C\u043A\u043E \u0447\u0442\u043E \u0432\u0441\u043F\u043E\u043C\u043D\u0438\u043B, \u043A\u0443\u0434\u0430 \u043F\u043E\u043B\u043E\u0436\u0438\u043B \u043A\u043B\u044E\u0447\u0438...",
288724
- "Pondering the orb...": "\u0420\u0430\u0437\u043C\u044B\u0448\u043B\u044F\u044E \u043D\u0430\u0434 \u0441\u0444\u0435\u0440\u043E\u0439...",
288725
- "I've seen things you people wouldn't believe... like a user who reads loading messages.": "\u042F \u0432\u0438\u0434\u0435\u043B \u0442\u0430\u043A\u043E\u0435, \u0432\u043E \u0447\u0442\u043E \u0432\u044B, \u043B\u044E\u0434\u0438, \u043F\u0440\u043E\u0441\u0442\u043E \u043D\u0435 \u043F\u043E\u0432\u0435\u0440\u0438\u0442\u0435... \u043D\u0430\u043F\u0440\u0438\u043C\u0435\u0440, \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F, \u0447\u0438\u0442\u0430\u044E\u0449\u0435\u0433\u043E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438.",
288726
- "Initiating thoughtful gaze...": "\u0418\u043D\u0438\u0446\u0438\u0438\u0440\u0443\u0435\u043C \u0437\u0430\u0434\u0443\u043C\u0447\u0438\u0432\u044B\u0439 \u0432\u0437\u0433\u043B\u044F\u0434...",
288727
- "What's a computer's favorite snack? Microchips.": "\u0427\u0442\u043E \u0441\u0435\u0440\u0432\u0435\u0440 \u0437\u0430\u043A\u0430\u0437\u044B\u0432\u0430\u0435\u0442 \u0432 \u0431\u0430\u0440\u0435? \u041F\u0438\u043D\u0433-\u043A\u043E\u043B\u0430\u0434\u0443.",
288728
- "Why do Java developers wear glasses? Because they don't C#.": "\u041F\u043E\u0447\u0435\u043C\u0443 Java-\u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u0438 \u043D\u0435 \u0443\u0431\u0438\u0440\u0430\u044E\u0442\u0441\u044F \u0434\u043E\u043C\u0430? \u041E\u043D\u0438 \u0436\u0434\u0443\u0442 \u0441\u0431\u043E\u0440\u0449\u0438\u043A \u043C\u0443\u0441\u043E\u0440\u0430...",
288729
- "Charging the laser... pew pew!": "\u0417\u0430\u0440\u044F\u0436\u0430\u0435\u043C \u043B\u0430\u0437\u0435\u0440... \u043F\u0438\u0443-\u043F\u0438\u0443!",
288730
- "Dividing by zero... just kidding!": "\u0414\u0435\u043B\u0438\u043C \u043D\u0430 \u043D\u043E\u043B\u044C... \u0448\u0443\u0447\u0443!",
288731
- "Looking for an adult superviso... I mean, processing.": "\u0418\u0449\u0443 \u0432\u0437\u0440\u043E\u0441\u043B\u044B\u0445 \u0434\u043B\u044F \u043F\u0440\u0438\u0441\u043C\u043E\u0442... \u0432 \u0441\u043C\u044B\u0441\u043B\u0435, \u043E\u0431\u0440\u0430\u0431\u0430\u0442\u044B\u0432\u0430\u044E.",
288732
- "Making it go beep boop.": "\u0414\u0435\u043B\u0430\u0435\u043C \u0431\u0438\u043F-\u0431\u0443\u043F.",
288733
- "Buffering... because even AIs need a moment.": "\u0411\u0443\u0444\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u044F... \u0434\u0430\u0436\u0435 \u0418\u0418 \u043D\u0443\u0436\u043D\u043E \u043C\u0433\u043D\u043E\u0432\u0435\u043D\u0438\u0435.",
288734
- "Entangling quantum particles for a faster response...": "\u0417\u0430\u043F\u0443\u0442\u044B\u0432\u0430\u0435\u043C \u043A\u0432\u0430\u043D\u0442\u043E\u0432\u044B\u0435 \u0447\u0430\u0441\u0442\u0438\u0446\u044B \u0434\u043B\u044F \u0431\u044B\u0441\u0442\u0440\u043E\u0433\u043E \u043E\u0442\u0432\u0435\u0442\u0430...",
288735
- "Polishing the chrome... on the algorithms.": "\u041F\u043E\u043B\u0438\u0440\u0443\u0435\u043C \u0445\u0440\u043E\u043C... \u043D\u0430 \u0430\u043B\u0433\u043E\u0440\u0438\u0442\u043C\u0430\u0445.",
288736
- "Are you not entertained? (Working on it!)": "\u0412\u044B \u0435\u0449\u0451 \u043D\u0435 \u0440\u0430\u0437\u0432\u043B\u0435\u043A\u043B\u0438\u0441\u044C?! \u0420\u0430\u0437\u0432\u0435 \u0432\u044B \u043D\u0435 \u0437\u0430 \u044D\u0442\u0438\u043C \u0441\u044E\u0434\u0430 \u043F\u0440\u0438\u0448\u043B\u0438?!",
288737
- "Summoning the code gremlins... to help, of course.": "\u041F\u0440\u0438\u0437\u044B\u0432\u0430\u0435\u043C \u0433\u0440\u0435\u043C\u043B\u0438\u043D\u043E\u0432 \u043A\u043E\u0434\u0430... \u0434\u043B\u044F \u043F\u043E\u043C\u043E\u0449\u0438, \u043A\u043E\u043D\u0435\u0447\u043D\u043E \u0436\u0435.",
288738
- "Just waiting for the dial-up tone to finish...": "\u0416\u0434\u0435\u043C, \u043F\u043E\u043A\u0430 \u0437\u0430\u043A\u043E\u043D\u0447\u0438\u0442\u0441\u044F \u0437\u0432\u0443\u043A dial-up \u043C\u043E\u0434\u0435\u043C\u0430...",
288739
- "Recalibrating the humor-o-meter.": "\u041F\u0435\u0440\u0435\u043A\u0430\u043B\u0438\u0431\u0440\u043E\u0432\u043A\u0430 \u044E\u043C\u043E\u0440\u043E\u043C\u0435\u0442\u0440\u0430.",
288740
- "My other loading screen is even funnier.": "\u041C\u043E\u0439 \u0434\u0440\u0443\u0433\u043E\u0439 \u044D\u043A\u0440\u0430\u043D \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438 \u0435\u0449\u0451 \u0441\u043C\u0435\u0448\u043D\u0435\u0435.",
288741
- "Pretty sure there's a cat walking on the keyboard somewhere...": "\u041A\u0430\u0436\u0435\u0442\u0441\u044F, \u0433\u0434\u0435-\u0442\u043E \u043F\u043E \u043A\u043B\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0435 \u0433\u0443\u043B\u044F\u0435\u0442 \u043A\u043E\u0442...",
288742
- "Enhancing... Enhancing... Still loading.": "\u0423\u043B\u0443\u0447\u0448\u0430\u0435\u043C... \u0415\u0449\u0451 \u0443\u043B\u0443\u0447\u0448\u0430\u0435\u043C... \u0412\u0441\u0451 \u0435\u0449\u0451 \u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044F.",
288743
- "It's not a bug, it's a feature... of this loading screen.": "\u042D\u0442\u043E \u043D\u0435 \u0431\u0430\u0433, \u044D\u0442\u043E \u0444\u0438\u0447\u0430... \u044D\u043A\u0440\u0430\u043D\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438.",
288744
- "Have you tried turning it off and on again? (The loading screen, not me.)": "\u041F\u0440\u043E\u0431\u043E\u0432\u0430\u043B\u0438 \u0432\u044B\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0438 \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0441\u043D\u043E\u0432\u0430? (\u042D\u043A\u0440\u0430\u043D \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438, \u043D\u0435 \u043C\u0435\u043D\u044F!)",
288745
- "Constructing additional pylons...": "\u041D\u0443\u0436\u043D\u043E \u043F\u043E\u0441\u0442\u0440\u043E\u0438\u0442\u044C \u0431\u043E\u043B\u044C\u0448\u0435 \u043F\u0438\u043B\u043E\u043D\u043E\u0432..."
289538
+ // ============================================================================
289539
+ // ============================================================================
289540
+ // Loading Phrases
289541
+ // ============================================================================
289542
+ WITTY_LOADING_PHRASES: [
289543
+ "\u041C\u043D\u0435 \u043F\u043E\u0432\u0435\u0437\u0451\u0442!",
289544
+ "\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u043C \u043A\u0440\u0443\u0442\u0438\u0437\u043D\u0443... ",
289545
+ "\u0420\u0438\u0441\u0443\u0435\u043C \u0437\u0430\u0441\u0435\u0447\u043A\u0438 \u043D\u0430 \u0431\u0443\u043A\u0432\u0430\u0445...",
289546
+ "\u041F\u0440\u043E\u0431\u0438\u0440\u0430\u0435\u043C\u0441\u044F \u0447\u0435\u0440\u0435\u0437 \u0441\u043B\u0438\u0437\u0435\u0432\u0438\u043A\u043E\u0432..",
289547
+ "\u0421\u043E\u0432\u0435\u0442\u0443\u0435\u043C\u0441\u044F \u0441 \u0446\u0438\u0444\u0440\u043E\u0432\u044B\u043C\u0438 \u0434\u0443\u0445\u0430\u043C\u0438...",
289548
+ "\u0421\u0433\u043B\u0430\u0436\u0438\u0432\u0430\u043D\u0438\u0435 \u0441\u043F\u043B\u0430\u0439\u043D\u043E\u0432...",
289549
+ "\u0420\u0430\u0437\u043E\u0433\u0440\u0435\u0432\u0430\u0435\u043C \u0418\u0418-\u0445\u043E\u043C\u044F\u0447\u043A\u043E\u0432...",
289550
+ "\u0421\u043F\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043C \u0432\u043E\u043B\u0448\u0435\u0431\u043D\u0443\u044E \u0440\u0430\u043A\u0443\u0448\u043A\u0443...",
289551
+ "\u0413\u0435\u043D\u0435\u0440\u0438\u0440\u0443\u0435\u043C \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u044B\u0439 \u043E\u0442\u0432\u0435\u0442...",
289552
+ "\u041F\u043E\u043B\u0438\u0440\u0443\u0435\u043C \u0430\u043B\u0433\u043E\u0440\u0438\u0442\u043C\u044B...",
289553
+ "\u041D\u0435 \u0442\u043E\u0440\u043E\u043F\u0438\u0442\u0435 \u0441\u043E\u0432\u0435\u0440\u0448\u0435\u043D\u0441\u0442\u0432\u043E (\u0438\u043B\u0438 \u043C\u043E\u0439 \u043A\u043E\u0434)...",
289554
+ "\u0417\u0430\u0432\u0430\u0440\u0438\u0432\u0430\u0435\u043C \u0441\u0432\u0435\u0436\u0438\u0435 \u0431\u0430\u0439\u0442\u044B...",
289555
+ "\u041F\u0435\u0440\u0435\u0441\u0447\u0438\u0442\u044B\u0432\u0430\u0435\u043C \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u044B...",
289556
+ "\u0417\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u043C \u043A\u043E\u0433\u043D\u0438\u0442\u0438\u0432\u043D\u044B\u0435 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u043E\u0440\u044B...",
289557
+ "\u0418\u0449\u0435\u043C \u0441\u0438\u043D\u0442\u0430\u043A\u0441\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u043E\u0448\u0438\u0431\u043A\u0438 \u0432\u043E \u0432\u0441\u0435\u043B\u0435\u043D\u043D\u043E\u0439...",
289558
+ "\u0421\u0435\u043A\u0443\u043D\u0434\u043E\u0447\u043A\u0443, \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0438\u0440\u0443\u0435\u043C \u044E\u043C\u043E\u0440...",
289559
+ "\u041F\u0435\u0440\u0435\u0442\u0430\u0441\u043E\u0432\u044B\u0432\u0430\u0435\u043C \u043F\u0430\u043D\u0447\u043B\u0430\u0439\u043D\u044B...",
289560
+ "\u0420\u0430\u0441\u043F\u0443\u0442\u0430\u0432\u0430\u0435\u043C \u043D\u0435\u0439\u0440\u043E\u0441\u0435\u0442\u0438...",
289561
+ "\u041A\u043E\u043C\u043F\u0438\u043B\u0438\u0440\u0443\u0435\u043C \u0433\u0435\u043D\u0438\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C...",
289562
+ "\u0417\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043C yumor.exe...",
289563
+ "\u041F\u0440\u0438\u0437\u044B\u0432\u0430\u0435\u043C \u043E\u0431\u043B\u0430\u043A\u043E \u043C\u0443\u0434\u0440\u043E\u0441\u0442\u0438...",
289564
+ "\u0413\u043E\u0442\u043E\u0432\u0438\u043C \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u044B\u0439 \u043E\u0442\u0432\u0435\u0442...",
289565
+ "\u0421\u0435\u043A\u0443\u043D\u0434\u0443, \u0438\u0434\u0451\u0442 \u043E\u0442\u043B\u0430\u0434\u043A\u0430 \u0440\u0435\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u0438...",
289566
+ "\u0417\u0430\u043F\u0443\u0442\u044B\u0432\u0430\u0435\u043C \u0432\u0430\u0440\u0438\u0430\u043D\u0442\u044B...",
289567
+ "\u041D\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043C \u043A\u043E\u0441\u043C\u0438\u0447\u0435\u0441\u043A\u0438\u0435 \u0447\u0430\u0441\u0442\u043E\u0442\u044B...",
289568
+ "\u0421\u043E\u0437\u0434\u0430\u0435\u043C \u043E\u0442\u0432\u0435\u0442, \u0434\u043E\u0441\u0442\u043E\u0439\u043D\u044B\u0439 \u0432\u0430\u0448\u0435\u0433\u043E \u0442\u0435\u0440\u043F\u0435\u043D\u0438\u044F...",
289569
+ "\u041A\u043E\u043C\u043F\u0438\u043B\u0438\u0440\u0443\u0435\u043C \u0435\u0434\u0438\u043D\u0438\u0447\u043A\u0438 \u0438 \u043D\u043E\u043B\u0438\u043A\u0438...",
289570
+ "\u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043C \u0437\u0430\u0432\u0438\u0441\u0438\u043C\u043E\u0441\u0442\u0438... \u0438 \u044D\u043A\u0437\u0438\u0441\u0442\u0435\u043D\u0446\u0438\u0430\u043B\u044C\u043D\u044B\u0435 \u043A\u0440\u0438\u0437\u0438\u0441\u044B...",
289571
+ "\u0414\u0435\u0444\u0440\u0430\u0433\u043C\u0435\u043D\u0442\u0430\u0446\u0438\u044F \u043F\u0430\u043C\u044F\u0442\u0438... \u0438 \u043E\u043F\u0435\u0440\u0430\u0442\u0438\u0432\u043D\u043E\u0439, \u0438 \u043B\u0438\u0447\u043D\u043E\u0439...",
289572
+ "\u041F\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u043C\u043E\u0434\u0443\u043B\u044F \u044E\u043C\u043E\u0440\u0430...",
289573
+ "\u041A\u044D\u0448\u0438\u0440\u0443\u0435\u043C \u0441\u0430\u043C\u043E\u0435 \u0432\u0430\u0436\u043D\u043E\u0435 (\u0432 \u043E\u0441\u043D\u043E\u0432\u043D\u043E\u043C \u043C\u0435\u043C\u044B \u0441 \u043A\u043E\u0442\u0438\u043A\u0430\u043C\u0438)...",
289574
+ "\u041E\u043F\u0442\u0438\u043C\u0438\u0437\u0430\u0446\u0438\u044F \u0434\u043B\u044F \u0431\u0435\u0437\u0443\u043C\u043D\u043E\u0439 \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u0438",
289575
+ "\u041C\u0435\u043D\u044F\u0435\u043C \u0431\u0438\u0442\u044B... \u0442\u043E\u043B\u044C\u043A\u043E \u0431\u0430\u0439\u0442\u0430\u043C \u043D\u0435 \u0433\u043E\u0432\u043E\u0440\u0438\u0442\u0435...",
289576
+ "\u0421\u0431\u043E\u0440\u043A\u0430 \u043C\u0443\u0441\u043E\u0440\u0430... \u0441\u043A\u043E\u0440\u043E \u0432\u0435\u0440\u043D\u0443\u0441\u044C...",
289577
+ "\u0421\u0431\u043E\u0440\u043A\u0430 \u0438\u043D\u0442\u0435\u0440\u043D\u0435\u0442\u043E\u0432...",
289578
+ "\u041F\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u043C \u043A\u043E\u0444\u0435 \u0432 \u043A\u043E\u0434...",
289579
+ "\u041E\u0431\u043D\u043E\u0432\u043B\u044F\u0435\u043C \u0441\u0438\u043D\u0442\u0430\u043A\u0441\u0438\u0441 \u0440\u0435\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u0438...",
289580
+ "\u041F\u0435\u0440\u0435\u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0430\u0435\u043C \u0441\u0438\u043D\u0430\u043F\u0441\u044B...",
289581
+ "\u0418\u0449\u0435\u043C \u043B\u0438\u0448\u043D\u044E\u044E \u0442\u043E\u0447\u043A\u0443 \u0441 \u0437\u0430\u043F\u044F\u0442\u043E\u0439...",
289582
+ "\u0421\u043C\u0430\u0437\u044B\u0432\u0430\u0435\u043C \u0448\u0435\u0441\u0442\u0435\u0440\u0451\u043D\u043A\u0438 \u043C\u0430\u0448\u0438\u043D\u044B...",
289583
+ "\u0420\u0430\u0437\u043E\u0433\u0440\u0435\u0432\u0430\u0435\u043C \u0441\u0435\u0440\u0432\u0435\u0440\u044B...",
289584
+ "\u041A\u0430\u043B\u0438\u0431\u0440\u0443\u0435\u043C \u043F\u043E\u0442\u043E\u043A\u043E\u0432\u044B\u0439 \u043D\u0430\u043A\u043E\u043F\u0438\u0442\u0435\u043B\u044C...",
289585
+ "\u0412\u043A\u043B\u044E\u0447\u0430\u0435\u043C \u0434\u0432\u0438\u0433\u0430\u0442\u0435\u043B\u044C \u043D\u0435\u0432\u0435\u0440\u043E\u044F\u0442\u043D\u043E\u0441\u0442\u0438...",
289586
+ "\u041D\u0430\u043F\u0440\u0430\u0432\u043B\u044F\u0435\u043C \u0421\u0438\u043B\u0443...",
289587
+ "\u0412\u044B\u0440\u0430\u0432\u043D\u0438\u0432\u0430\u0435\u043C \u0437\u0432\u0451\u0437\u0434\u044B \u0434\u043B\u044F \u043E\u043F\u0442\u0438\u043C\u0430\u043B\u044C\u043D\u043E\u0433\u043E \u043E\u0442\u0432\u0435\u0442\u0430...",
289588
+ "\u0422\u0430\u043A \u0441\u043A\u0430\u0436\u0435\u043C \u043C\u044B \u0432\u0441\u0435...",
289589
+ "\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0439 \u0432\u0435\u043B\u0438\u043A\u043E\u0439 \u0438\u0434\u0435\u0438...",
289590
+ "\u041C\u0438\u043D\u0443\u0442\u043A\u0443, \u044F \u0432 \u043F\u043E\u0442\u043E\u043A\u0435...",
289591
+ "\u0413\u043E\u0442\u043E\u0432\u043B\u044E\u0441\u044C \u043E\u0441\u043B\u0435\u043F\u0438\u0442\u044C \u0432\u0430\u0441 \u0433\u0435\u043D\u0438\u0430\u043B\u044C\u043D\u043E\u0441\u0442\u044C\u044E...",
289592
+ "\u0421\u0435\u043A\u0443\u043D\u0434\u0443, \u043F\u043E\u043B\u0438\u0440\u0443\u044E \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u0438\u0435...",
289593
+ "\u0414\u0435\u0440\u0436\u0438\u0442\u0435\u0441\u044C, \u0441\u043E\u0437\u0434\u0430\u044E \u0448\u0435\u0434\u0435\u0432\u0440...",
289594
+ "\u041C\u0438\u0433\u043E\u043C, \u043E\u0442\u043B\u0430\u0436\u0438\u0432\u0430\u044E \u0432\u0441\u0435\u043B\u0435\u043D\u043D\u0443\u044E...",
289595
+ "\u041C\u043E\u043C\u0435\u043D\u0442, \u0432\u044B\u0440\u0430\u0432\u043D\u0438\u0432\u0430\u044E \u043F\u0438\u043A\u0441\u0435\u043B\u0438...",
289596
+ "\u0421\u0435\u043A\u0443\u043D\u0434\u0443, \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0438\u0440\u0443\u044E \u044E\u043C\u043E\u0440...",
289597
+ "\u041C\u043E\u043C\u0435\u043D\u0442, \u043D\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u044E \u0430\u043B\u0433\u043E\u0440\u0438\u0442\u043C\u044B...",
289598
+ "\u0412\u0430\u0440\u043F-\u043F\u0440\u044B\u0436\u043E\u043A \u0430\u043A\u0442\u0438\u0432\u0438\u0440\u043E\u0432\u0430\u043D...",
289599
+ "\u0414\u043E\u0431\u044B\u0432\u0430\u0435\u043C \u043A\u0440\u0438\u0441\u0442\u0430\u043B\u043B\u044B \u0434\u0438\u043B\u0438\u0442\u0438\u044F...",
289600
+ "\u0411\u0435\u0437 \u043F\u0430\u043D\u0438\u043A\u0438...",
289601
+ "\u0421\u043B\u0435\u0434\u0443\u0435\u043C \u0437\u0430 \u0431\u0435\u043B\u044B\u043C \u043A\u0440\u043E\u043B\u0438\u043A\u043E\u043C...",
289602
+ "\u0418\u0441\u0442\u0438\u043D\u0430 \u0433\u0434\u0435-\u0442\u043E \u0437\u0434\u0435\u0441\u044C... \u0432\u043D\u0443\u0442\u0440\u0438...",
289603
+ "\u041F\u0440\u043E\u0434\u0443\u0432\u0430\u0435\u043C \u043A\u0430\u0440\u0442\u0440\u0438\u0434\u0436...",
289604
+ "\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430... \u0421\u0434\u0435\u043B\u0430\u0439 \u0431\u043E\u0447\u043A\u0443!",
289605
+ "\u0416\u0434\u0435\u043C \u0440\u0435\u0441\u043F\u0430\u0443\u043D\u0430...",
289606
+ "\u0414\u0435\u043B\u0430\u0435\u043C \u0414\u0443\u0433\u0443 \u041A\u0435\u0441\u0441\u0435\u043B\u044F \u043C\u0435\u043D\u0435\u0435 \u0447\u0435\u043C \u0437\u0430 12 \u043F\u0430\u0440\u0441\u0435\u043A\u043E\u0432...",
289607
+ "\u0422\u043E\u0440\u0442\u0438\u043A \u2014 \u043D\u0435 \u043B\u043E\u0436\u044C, \u043E\u043D \u043F\u0440\u043E\u0441\u0442\u043E \u0435\u0449\u0451 \u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044F...",
289608
+ "\u0412\u043E\u0437\u0438\u043C\u0441\u044F \u0441 \u044D\u043A\u0440\u0430\u043D\u043E\u043C \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F \u043F\u0435\u0440\u0441\u043E\u043D\u0430\u0436\u0430...",
289609
+ "\u041C\u0438\u043D\u0443\u0442\u043A\u0443, \u0438\u0449\u0443 \u043F\u043E\u0434\u0445\u043E\u0434\u044F\u0449\u0438\u0439 \u043C\u0435\u043C...",
289610
+ "\u041D\u0430\u0436\u0438\u043C\u0430\u0435\u043C 'A' \u0434\u043B\u044F \u043F\u0440\u043E\u0434\u043E\u043B\u0436\u0435\u043D\u0438\u044F...",
289611
+ "\u041F\u0430\u0441\u0451\u043C \u0446\u0438\u0444\u0440\u043E\u0432\u044B\u0445 \u043A\u043E\u0442\u043E\u0432...",
289612
+ "\u041F\u043E\u043B\u0438\u0440\u0443\u0435\u043C \u043F\u0438\u043A\u0441\u0435\u043B\u0438...",
289613
+ "\u0418\u0449\u0435\u043C \u043F\u043E\u0434\u0445\u043E\u0434\u044F\u0449\u0438\u0439 \u043A\u0430\u043B\u0430\u043C\u0431\u0443\u0440 \u0434\u043B\u044F \u044D\u043A\u0440\u0430\u043D\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438...",
289614
+ "\u041E\u0442\u0432\u043B\u0435\u043A\u0430\u0435\u043C \u0432\u0430\u0441 \u044D\u0442\u043E\u0439 \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u043E\u0439 \u0444\u0440\u0430\u0437\u043E\u0439...",
289615
+ "\u041F\u043E\u0447\u0442\u0438 \u0433\u043E\u0442\u043E\u0432\u043E... \u0432\u0440\u043E\u0434\u0435...",
289616
+ "\u041D\u0430\u0448\u0438 \u0445\u043E\u043C\u044F\u0447\u043A\u0438 \u0440\u0430\u0431\u043E\u0442\u0430\u044E\u0442 \u0438\u0437\u043E \u0432\u0441\u0435\u0445 \u0441\u0438\u043B...",
289617
+ "\u0413\u043B\u0430\u0434\u0438\u043C \u041E\u0431\u043B\u0430\u0447\u043A\u043E \u043F\u043E \u0433\u043E\u043B\u043E\u0432\u0435...",
289618
+ "\u0413\u043B\u0430\u0434\u0438\u043C \u043A\u043E\u0442\u0430...",
289619
+ "\u0420\u0438\u043A\u0440\u043E\u043B\u043B\u0438\u043C \u043D\u0430\u0447\u0430\u043B\u044C\u043D\u0438\u043A\u0430...",
289620
+ "Never gonna give you up, never gonna let you down...",
289621
+ "\u041B\u0430\u0431\u0430\u0435\u043C \u0431\u0430\u0441-\u0433\u0438\u0442\u0430\u0440\u0443...",
289622
+ "\u041F\u0440\u043E\u0431\u0443\u0435\u043C \u0441\u043D\u0443\u0437\u0431\u0435\u0440\u0440\u0438 \u043D\u0430 \u0432\u043A\u0443\u0441...",
289623
+ "\u0418\u0434\u0443 \u0434\u043E \u043A\u043E\u043D\u0446\u0430, \u0438\u0434\u0443 \u043D\u0430 \u0441\u043A\u043E\u0440\u043E\u0441\u0442\u044C...",
289624
+ "Is this the real life? Is this just fantasy?...",
289625
+ "\u0423 \u043C\u0435\u043D\u044F \u0445\u043E\u0440\u043E\u0448\u0435\u0435 \u043F\u0440\u0435\u0434\u0447\u0443\u0432\u0441\u0442\u0432\u0438\u0435...",
289626
+ "\u0414\u0440\u0430\u0437\u043D\u0438\u043C \u043C\u0435\u0434\u0432\u0435\u0434\u044F... (\u041D\u0435 \u043B\u0435\u0437\u044C...)",
289627
+ "\u0418\u0437\u0443\u0447\u0430\u0435\u043C \u0441\u0432\u0435\u0436\u0438\u0435 \u043C\u0435\u043C\u044B...",
289628
+ "\u0414\u0443\u043C\u0430\u0435\u043C, \u043A\u0430\u043A \u0441\u0434\u0435\u043B\u0430\u0442\u044C \u044D\u0442\u043E \u043E\u0441\u0442\u0440\u043E\u0443\u043C\u043D\u0435\u0435...",
289629
+ "\u0425\u043C\u043C... \u0434\u0430\u0439\u0442\u0435 \u043F\u043E\u0434\u0443\u043C\u0430\u0442\u044C...",
289630
+ "\u041A\u0430\u043A \u043D\u0430\u0437\u044B\u0432\u0430\u0435\u0442\u0441\u044F \u0431\u0443\u043C\u0435\u0440\u0430\u043D\u0433, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u043D\u0435 \u0432\u043E\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044F? \u041F\u0430\u043B\u043A\u0430...",
289631
+ "\u041F\u043E\u0447\u0435\u043C\u0443 \u043A\u043E\u043C\u043F\u044C\u044E\u0442\u0435\u0440 \u043F\u0440\u043E\u0441\u0442\u0443\u0434\u0438\u043B\u0441\u044F? \u041F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u043E\u0441\u0442\u0430\u0432\u0438\u043B \u043E\u043A\u043D\u0430 \u043E\u0442\u043A\u0440\u044B\u0442\u044B\u043C\u0438...",
289632
+ "\u041F\u043E\u0447\u0435\u043C\u0443 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0438\u0441\u0442\u044B \u043D\u0435 \u043B\u044E\u0431\u044F\u0442 \u0433\u0443\u043B\u044F\u0442\u044C \u043D\u0430 \u0443\u043B\u0438\u0446\u0435? \u0422\u0430\u043C \u0441\u0440\u0435\u0434\u0430 \u043D\u0435 \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043D\u0430...",
289633
+ "\u041F\u043E\u0447\u0435\u043C\u0443 \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u0438\u0441\u0442\u044B \u043F\u0440\u0435\u0434\u043F\u043E\u0447\u0438\u0442\u0430\u044E\u0442 \u0442\u0451\u043C\u043D\u0443\u044E \u0442\u0435\u043C\u0443? \u041F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u0432 \u0442\u0435\u043C\u043D\u043E\u0442\u0435 \u043D\u0435 \u0432\u0438\u0434\u043D\u043E \u0431\u0430\u0433\u043E\u0432...",
289634
+ "\u041F\u043E\u0447\u0435\u043C\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A \u0440\u0430\u0437\u043E\u0440\u0438\u043B\u0441\u044F? \u041F\u043E\u0442\u043E\u043C\u0443 \u0447\u0442\u043E \u043F\u043E\u0442\u0440\u0430\u0442\u0438\u043B \u0432\u0435\u0441\u044C \u0441\u0432\u043E\u0439 \u043A\u044D\u0448...",
289635
+ "\u0427\u0442\u043E \u043C\u043E\u0436\u043D\u043E \u0434\u0435\u043B\u0430\u0442\u044C \u0441\u043E \u0441\u043B\u043E\u043C\u0430\u043D\u043D\u044B\u043C \u043A\u0430\u0440\u0430\u043D\u0434\u0430\u0448\u043E\u043C? \u041D\u0438\u0447\u0435\u0433\u043E \u2014 \u043E\u043D \u0442\u0443\u043F\u043E\u0439...",
289636
+ "\u041F\u0440\u043E\u0432\u043E\u0436\u0443 \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0443 \u043C\u0435\u0442\u043E\u0434\u043E\u043C \u0442\u044B\u043A\u0430...",
289637
+ "\u0418\u0449\u0435\u043C, \u043A\u0430\u043A\u043E\u0439 \u0441\u0442\u043E\u0440\u043E\u043D\u043E\u0439 \u0432\u0441\u0442\u0430\u0432\u043B\u044F\u0442\u044C \u0444\u043B\u0435\u0448\u043A\u0443...",
289638
+ "\u0421\u043B\u0435\u0434\u0438\u043C, \u0447\u0442\u043E\u0431\u044B \u0432\u043E\u043B\u0448\u0435\u0431\u043D\u044B\u0439 \u0434\u044B\u043C \u043D\u0435 \u0432\u044B\u0448\u0435\u043B \u0438\u0437 \u043F\u0440\u043E\u0432\u043E\u0434\u043E\u0432...",
289639
+ "\u041F\u044B\u0442\u0430\u0435\u043C\u0441\u044F \u0432\u044B\u0439\u0442\u0438 \u0438\u0437 Vim...",
289640
+ "\u0420\u0430\u0441\u043A\u0440\u0443\u0447\u0438\u0432\u0430\u0435\u043C \u043A\u043E\u043B\u0435\u0441\u043E \u0434\u043B\u044F \u0445\u043E\u043C\u044F\u043A\u0430...",
289641
+ "\u042D\u0442\u043E \u043D\u0435 \u0431\u0430\u0433, \u0430 \u0444\u0438\u0447\u0430...",
289642
+ "\u041F\u043E\u0435\u0445\u0430\u043B\u0438!",
289643
+ "\u042F \u0432\u0435\u0440\u043D\u0443\u0441\u044C... \u0441 \u043E\u0442\u0432\u0435\u0442\u043E\u043C.",
289644
+ "\u041C\u043E\u0439 \u0434\u0440\u0443\u0433\u043E\u0439 \u043F\u0440\u043E\u0446\u0435\u0441\u0441 \u2014 \u044D\u0442\u043E \u0422\u0410\u0420\u0414\u0418\u0421...",
289645
+ "\u041E\u0431\u0449\u0430\u0435\u043C\u0441\u044F \u0441 \u0434\u0443\u0445\u043E\u043C \u043C\u0430\u0448\u0438\u043D\u044B...",
289646
+ "\u0414\u0430\u0435\u043C \u043C\u044B\u0441\u043B\u044F\u043C \u0437\u0430\u043C\u0430\u0440\u0438\u043D\u043E\u0432\u0430\u0442\u044C\u0441\u044F...",
289647
+ "\u0422\u043E\u043B\u044C\u043A\u043E \u0447\u0442\u043E \u0432\u0441\u043F\u043E\u043C\u043D\u0438\u043B, \u043A\u0443\u0434\u0430 \u043F\u043E\u043B\u043E\u0436\u0438\u043B \u043A\u043B\u044E\u0447\u0438...",
289648
+ "\u0420\u0430\u0437\u043C\u044B\u0448\u043B\u044F\u044E \u043D\u0430\u0434 \u0441\u0444\u0435\u0440\u043E\u0439...",
289649
+ "\u042F \u0432\u0438\u0434\u0435\u043B \u0442\u0430\u043A\u043E\u0435, \u0447\u0442\u043E \u0432\u0430\u043C, \u043B\u044E\u0434\u044F\u043C, \u0438 \u043D\u0435 \u0441\u043D\u0438\u043B\u043E\u0441\u044C... \u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044F, \u0447\u0438\u0442\u0430\u044E\u0449\u0435\u0433\u043E \u044D\u0442\u0438 \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F.",
289650
+ "\u0418\u043D\u0438\u0446\u0438\u0438\u0440\u0443\u0435\u043C \u0437\u0430\u0434\u0443\u043C\u0447\u0438\u0432\u044B\u0439 \u0432\u0437\u0433\u043B\u044F\u0434...",
289651
+ "\u0427\u0442\u043E \u0441\u0435\u0440\u0432\u0435\u0440 \u0437\u0430\u043A\u0430\u0437\u044B\u0432\u0430\u0435\u0442 \u0432 \u0431\u0430\u0440\u0435? \u041F\u0438\u043D\u0433-\u043A\u043E\u043B\u0430\u0434\u0443.",
289652
+ "\u041F\u043E\u0447\u0435\u043C\u0443 Java-\u0440\u0430\u0437\u0440\u0430\u0431\u043E\u0442\u0447\u0438\u043A\u0438 \u043D\u0435 \u0443\u0431\u0438\u0440\u0430\u044E\u0442\u0441\u044F \u0434\u043E\u043C\u0430? \u041E\u043D\u0438 \u0436\u0434\u0443\u0442 \u0441\u0431\u043E\u0440\u0449\u0438\u043A \u043C\u0443\u0441\u043E\u0440\u0430...",
289653
+ "\u0417\u0430\u0440\u044F\u0436\u0430\u0435\u043C \u043B\u0430\u0437\u0435\u0440... \u043F\u0438\u0443-\u043F\u0438\u0443!",
289654
+ "\u0414\u0435\u043B\u0438\u043C \u043D\u0430 \u043D\u043E\u043B\u044C... \u0448\u0443\u0447\u0443!",
289655
+ "\u0418\u0449\u0443 \u0432\u0437\u0440\u043E\u0441\u043B\u044B\u0445 \u0434\u043B\u044F \u043F\u0440\u0438\u0441\u043C\u043E\u0442... \u0432 \u0441\u043C\u044B\u0441\u043B\u0435, \u043E\u0431\u0440\u0430\u0431\u0430\u0442\u044B\u0432\u0430\u044E.",
289656
+ "\u0414\u0435\u043B\u0430\u0435\u043C \u0431\u0438\u043F-\u0431\u0443\u043F.",
289657
+ "\u0411\u0443\u0444\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u044F... \u0434\u0430\u0436\u0435 \u0418\u0418 \u043D\u0443\u0436\u043D\u043E \u0432\u0440\u0435\u043C\u044F \u043F\u043E\u0434\u0443\u043C\u0430\u0442\u044C.",
289658
+ "\u0417\u0430\u043F\u0443\u0442\u044B\u0432\u0430\u0435\u043C \u043A\u0432\u0430\u043D\u0442\u043E\u0432\u044B\u0435 \u0447\u0430\u0441\u0442\u0438\u0446\u044B \u0434\u043B\u044F \u0431\u044B\u0441\u0442\u0440\u043E\u0433\u043E \u043E\u0442\u0432\u0435\u0442\u0430...",
289659
+ "\u041F\u043E\u043B\u0438\u0440\u0443\u0435\u043C \u0445\u0440\u043E\u043C... \u043D\u0430 \u0430\u043B\u0433\u043E\u0440\u0438\u0442\u043C\u0430\u0445.",
289660
+ "\u0412\u044B \u0435\u0449\u0451 \u043D\u0435 \u0440\u0430\u0437\u0432\u043B\u0435\u043A\u043B\u0438\u0441\u044C?! \u0420\u0430\u0437\u0432\u0435 \u0432\u044B \u043D\u0435 \u0437\u0430 \u044D\u0442\u0438\u043C \u0441\u044E\u0434\u0430 \u043F\u0440\u0438\u0448\u043B\u0438?!",
289661
+ "\u041F\u0440\u0438\u0437\u044B\u0432\u0430\u0435\u043C \u0433\u0440\u0435\u043C\u043B\u0438\u043D\u043E\u0432 \u043A\u043E\u0434\u0430... \u0434\u043B\u044F \u043F\u043E\u043C\u043E\u0449\u0438, \u043A\u043E\u043D\u0435\u0447\u043D\u043E \u0436\u0435.",
289662
+ "\u0416\u0434\u0435\u043C, \u043F\u043E\u043A\u0430 \u0437\u0430\u043A\u043E\u043D\u0447\u0438\u0442\u0441\u044F \u0437\u0432\u0443\u043A dial-up \u043C\u043E\u0434\u0435\u043C\u0430...",
289663
+ "\u041F\u0435\u0440\u0435\u043A\u0430\u043B\u0438\u0431\u0440\u043E\u0432\u043A\u0430 \u044E\u043C\u043E\u0440\u043E\u043C\u0435\u0442\u0440\u0430.",
289664
+ "\u041C\u043E\u0439 \u0434\u0440\u0443\u0433\u043E\u0439 \u044D\u043A\u0440\u0430\u043D \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438 \u0435\u0449\u0451 \u0441\u043C\u0435\u0448\u043D\u0435\u0435.",
289665
+ "\u041A\u0430\u0436\u0435\u0442\u0441\u044F, \u0433\u0434\u0435-\u0442\u043E \u043F\u043E \u043A\u043B\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0435 \u0433\u0443\u043B\u044F\u0435\u0442 \u043A\u043E\u0442...",
289666
+ "\u0423\u043B\u0443\u0447\u0448\u0430\u0435\u043C... \u0415\u0449\u0451 \u0443\u043B\u0443\u0447\u0448\u0430\u0435\u043C... \u0412\u0441\u0451 \u0435\u0449\u0451 \u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044F.",
289667
+ "\u042D\u0442\u043E \u043D\u0435 \u0431\u0430\u0433, \u044D\u0442\u043E \u0444\u0438\u0447\u0430... \u044D\u043A\u0440\u0430\u043D\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438.",
289668
+ "\u041F\u0440\u043E\u0431\u043E\u0432\u0430\u043B\u0438 \u0432\u044B\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0438 \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0441\u043D\u043E\u0432\u0430? (\u042D\u043A\u0440\u0430\u043D \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438, \u043D\u0435 \u043C\u0435\u043D\u044F!)",
289669
+ "\u041D\u0443\u0436\u043D\u043E \u043F\u043E\u0441\u0442\u0440\u043E\u0438\u0442\u044C \u0431\u043E\u043B\u044C\u0448\u0435 \u043F\u0438\u043B\u043E\u043D\u043E\u0432..."
289670
+ ]
288746
289671
  };
288747
289672
  }
288748
289673
  });
@@ -288825,6 +289750,8 @@ var init_zh = __esm({
288825
289750
  "Available Qwen Code CLI tools:": "\u53EF\u7528\u7684 Qwen Code CLI \u5DE5\u5177\uFF1A",
288826
289751
  "No tools available": "\u6CA1\u6709\u53EF\u7528\u5DE5\u5177",
288827
289752
  "View or change the approval mode for tool usage": "\u67E5\u770B\u6216\u66F4\u6539\u5DE5\u5177\u4F7F\u7528\u7684\u5BA1\u6279\u6A21\u5F0F",
289753
+ 'Invalid approval mode "{{arg}}". Valid modes: {{modes}}': '\u65E0\u6548\u7684\u5BA1\u6279\u6A21\u5F0F "{{arg}}"\u3002\u6709\u6548\u6A21\u5F0F\uFF1A{{modes}}',
289754
+ 'Approval mode set to "{{mode}}"': '\u5BA1\u6279\u6A21\u5F0F\u5DF2\u8BBE\u7F6E\u4E3A "{{mode}}"',
288828
289755
  "View or change the language setting": "\u67E5\u770B\u6216\u66F4\u6539\u8BED\u8A00\u8BBE\u7F6E",
288829
289756
  "change the theme": "\u66F4\u6539\u4E3B\u9898",
288830
289757
  "Select Theme": "\u9009\u62E9\u4E3B\u9898",
@@ -288834,7 +289761,7 @@ var init_zh = __esm({
288834
289761
  "Theme configuration unavailable due to NO_COLOR env variable.": "\u7531\u4E8E NO_COLOR \u73AF\u5883\u53D8\u91CF\uFF0C\u4E3B\u9898\u914D\u7F6E\u4E0D\u53EF\u7528\u3002",
288835
289762
  'Theme "{{themeName}}" not found.': '\u672A\u627E\u5230\u4E3B\u9898 "{{themeName}}"\u3002',
288836
289763
  'Theme "{{themeName}}" not found in selected scope.': '\u5728\u6240\u9009\u4F5C\u7528\u57DF\u4E2D\u672A\u627E\u5230\u4E3B\u9898 "{{themeName}}"\u3002',
288837
- "clear the screen and conversation history": "\u6E05\u5C4F\u5E76\u6E05\u9664\u5BF9\u8BDD\u5386\u53F2",
289764
+ "Clear conversation history and free up context": "\u6E05\u9664\u5BF9\u8BDD\u5386\u53F2\u5E76\u91CA\u653E\u4E0A\u4E0B\u6587",
288838
289765
  "Compresses the context by replacing it with a summary.": "\u901A\u8FC7\u7528\u6458\u8981\u66FF\u6362\u6765\u538B\u7F29\u4E0A\u4E0B\u6587",
288839
289766
  "open full Qwen Code documentation in your browser": "\u5728\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00\u5B8C\u6574\u7684 Qwen Code \u6587\u6863",
288840
289767
  "Configuration not available.": "\u914D\u7F6E\u4E0D\u53EF\u7528",
@@ -289201,8 +290128,8 @@ var init_zh = __esm({
289201
290128
  // ============================================================================
289202
290129
  // Commands - Clear
289203
290130
  // ============================================================================
289204
- "Clearing terminal and resetting chat.": "\u6B63\u5728\u6E05\u5C4F\u5E76\u91CD\u7F6E\u804A\u5929",
289205
- "Clearing terminal.": "\u6B63\u5728\u6E05\u5C4F",
290131
+ "Starting a new session, resetting chat, and clearing terminal.": "\u6B63\u5728\u5F00\u59CB\u65B0\u4F1A\u8BDD\uFF0C\u91CD\u7F6E\u804A\u5929\u5E76\u6E05\u5C4F\u3002",
290132
+ "Starting a new session and clearing.": "\u6B63\u5728\u5F00\u59CB\u65B0\u4F1A\u8BDD\u5E76\u6E05\u5C4F\u3002",
289206
290133
  // ============================================================================
289207
290134
  // Commands - Compress
289208
290135
  // ============================================================================
@@ -289447,134 +290374,37 @@ var init_zh = __esm({
289447
290374
  // ============================================================================
289448
290375
  "Waiting for user confirmation...": "\u7B49\u5F85\u7528\u6237\u786E\u8BA4...",
289449
290376
  "(esc to cancel, {{time}})": "\uFF08\u6309 esc \u53D6\u6D88\uFF0C{{time}}\uFF09",
289450
- "I'm Feeling Lucky": "\u6211\u611F\u89C9\u5F88\u5E78\u8FD0",
289451
- "Shipping awesomeness... ": "\u6B63\u5728\u8FD0\u9001\u7CBE\u5F69\u5185\u5BB9... ",
289452
- "Painting the serifs back on...": "\u6B63\u5728\u91CD\u65B0\u7ED8\u5236\u886C\u7EBF...",
289453
- "Navigating the slime mold...": "\u6B63\u5728\u5BFC\u822A\u7C98\u6DB2\u9709\u83CC...",
289454
- "Consulting the digital spirits...": "\u6B63\u5728\u54A8\u8BE2\u6570\u5B57\u7CBE\u7075...",
289455
- "Reticulating splines...": "\u6B63\u5728\u7F51\u683C\u5316\u6837\u6761\u66F2\u7EBF...",
289456
- "Warming up the AI hamsters...": "\u6B63\u5728\u9884\u70ED AI \u4ED3\u9F20...",
289457
- "Asking the magic conch shell...": "\u6B63\u5728\u8BE2\u95EE\u9B54\u6CD5\u6D77\u87BA\u58F3...",
289458
- "Generating witty retort...": "\u6B63\u5728\u751F\u6210\u673A\u667A\u7684\u53CD\u9A73...",
289459
- "Polishing the algorithms...": "\u6B63\u5728\u6253\u78E8\u7B97\u6CD5...",
289460
- "Don't rush perfection (or my code)...": "\u4E0D\u8981\u6025\u4E8E\u8FFD\u6C42\u5B8C\u7F8E\uFF08\u6216\u6211\u7684\u4EE3\u7801\uFF09...",
289461
- "Brewing fresh bytes...": "\u6B63\u5728\u917F\u9020\u65B0\u9C9C\u5B57\u8282...",
289462
- "Counting electrons...": "\u6B63\u5728\u8BA1\u7B97\u7535\u5B50...",
289463
- "Engaging cognitive processors...": "\u6B63\u5728\u542F\u52A8\u8BA4\u77E5\u5904\u7406\u5668...",
289464
- "Checking for syntax errors in the universe...": "\u6B63\u5728\u68C0\u67E5\u5B87\u5B99\u4E2D\u7684\u8BED\u6CD5\u9519\u8BEF...",
289465
- "One moment, optimizing humor...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6B63\u5728\u4F18\u5316\u5E7D\u9ED8\u611F...",
289466
- "Shuffling punchlines...": "\u6B63\u5728\u6D17\u724C\u7B11\u70B9...",
289467
- "Untangling neural nets...": "\u6B63\u5728\u89E3\u5F00\u795E\u7ECF\u7F51\u7EDC...",
289468
- "Compiling brilliance...": "\u6B63\u5728\u7F16\u8BD1\u667A\u6167...",
289469
- "Loading wit.exe...": "\u6B63\u5728\u52A0\u8F7D wit.exe...",
289470
- "Summoning the cloud of wisdom...": "\u6B63\u5728\u53EC\u5524\u667A\u6167\u4E91...",
289471
- "Preparing a witty response...": "\u6B63\u5728\u51C6\u5907\u673A\u667A\u7684\u56DE\u590D...",
289472
- "Just a sec, I'm debugging reality...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u5728\u8C03\u8BD5\u73B0\u5B9E...",
289473
- "Confuzzling the options...": "\u6B63\u5728\u6DF7\u6DC6\u9009\u9879...",
289474
- "Tuning the cosmic frequencies...": "\u6B63\u5728\u8C03\u8C10\u5B87\u5B99\u9891\u7387...",
289475
- "Crafting a response worthy of your patience...": "\u6B63\u5728\u5236\u4F5C\u503C\u5F97\u60A8\u8010\u5FC3\u7B49\u5F85\u7684\u56DE\u590D...",
289476
- "Compiling the 1s and 0s...": "\u6B63\u5728\u7F16\u8BD1 1 \u548C 0...",
289477
- "Resolving dependencies... and existential crises...": "\u6B63\u5728\u89E3\u51B3\u4F9D\u8D56\u5173\u7CFB...\u548C\u5B58\u5728\u4E3B\u4E49\u5371\u673A...",
289478
- "Defragmenting memories... both RAM and personal...": "\u6B63\u5728\u6574\u7406\u8BB0\u5FC6\u788E\u7247...\u5305\u62EC RAM \u548C\u4E2A\u4EBA\u8BB0\u5FC6...",
289479
- "Rebooting the humor module...": "\u6B63\u5728\u91CD\u542F\u5E7D\u9ED8\u6A21\u5757...",
289480
- "Caching the essentials (mostly cat memes)...": "\u6B63\u5728\u7F13\u5B58\u5FC5\u9700\u54C1\uFF08\u4E3B\u8981\u662F\u732B\u54AA\u8868\u60C5\u5305\uFF09...",
289481
- "Optimizing for ludicrous speed": "\u6B63\u5728\u4F18\u5316\u5230\u8352\u8C2C\u7684\u901F\u5EA6",
289482
- "Swapping bits... don't tell the bytes...": "\u6B63\u5728\u4EA4\u6362\u4F4D...\u4E0D\u8981\u544A\u8BC9\u5B57\u8282...",
289483
- "Garbage collecting... be right back...": "\u6B63\u5728\u5783\u573E\u56DE\u6536...\u9A6C\u4E0A\u56DE\u6765...",
289484
- "Assembling the interwebs...": "\u6B63\u5728\u7EC4\u88C5\u4E92\u8054\u7F51...",
289485
- "Converting coffee into code...": "\u6B63\u5728\u5C06\u5496\u5561\u8F6C\u6362\u4E3A\u4EE3\u7801...",
289486
- "Updating the syntax for reality...": "\u6B63\u5728\u66F4\u65B0\u73B0\u5B9E\u7684\u8BED\u6CD5...",
289487
- "Rewiring the synapses...": "\u6B63\u5728\u91CD\u65B0\u8FDE\u63A5\u7A81\u89E6...",
289488
- "Looking for a misplaced semicolon...": "\u6B63\u5728\u5BFB\u627E\u653E\u9519\u4F4D\u7F6E\u7684\u5206\u53F7...",
289489
- "Greasin' the cogs of the machine...": "\u6B63\u5728\u7ED9\u673A\u5668\u7684\u9F7F\u8F6E\u4E0A\u6CB9...",
289490
- "Pre-heating the servers...": "\u6B63\u5728\u9884\u70ED\u670D\u52A1\u5668...",
289491
- "Calibrating the flux capacitor...": "\u6B63\u5728\u6821\u51C6\u901A\u91CF\u7535\u5BB9\u5668...",
289492
- "Engaging the improbability drive...": "\u6B63\u5728\u542F\u52A8\u4E0D\u53EF\u80FD\u6027\u9A71\u52A8\u5668...",
289493
- "Channeling the Force...": "\u6B63\u5728\u5F15\u5BFC\u539F\u529B...",
289494
- "Aligning the stars for optimal response...": "\u6B63\u5728\u5BF9\u9F50\u661F\u661F\u4EE5\u83B7\u5F97\u6700\u4F73\u56DE\u590D...",
289495
- "So say we all...": "\u6211\u4EEC\u90FD\u8BF4...",
289496
- "Loading the next great idea...": "\u6B63\u5728\u52A0\u8F7D\u4E0B\u4E00\u4E2A\u4F1F\u5927\u7684\u60F3\u6CD5...",
289497
- "Just a moment, I'm in the zone...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u8FDB\u5165\u72B6\u6001...",
289498
- "Preparing to dazzle you with brilliance...": "\u6B63\u5728\u51C6\u5907\u7528\u667A\u6167\u8BA9\u60A8\u773C\u82B1\u7F2D\u4E71...",
289499
- "Just a tick, I'm polishing my wit...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u5728\u6253\u78E8\u6211\u7684\u667A\u6167...",
289500
- "Hold tight, I'm crafting a masterpiece...": "\u8BF7\u7A0D\u7B49\uFF0C\u6211\u6B63\u5728\u5236\u4F5C\u6770\u4F5C...",
289501
- "Just a jiffy, I'm debugging the universe...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u5728\u8C03\u8BD5\u5B87\u5B99...",
289502
- "Just a moment, I'm aligning the pixels...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u5728\u5BF9\u9F50\u50CF\u7D20...",
289503
- "Just a sec, I'm optimizing the humor...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u5728\u4F18\u5316\u5E7D\u9ED8\u611F...",
289504
- "Just a moment, I'm tuning the algorithms...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u5728\u8C03\u6574\u7B97\u6CD5...",
289505
- "Warp speed engaged...": "\u66F2\u901F\u5DF2\u542F\u52A8...",
289506
- "Mining for more Dilithium crystals...": "\u6B63\u5728\u6316\u6398\u66F4\u591A\u4E8C\u9502\u6676\u4F53...",
289507
- "Don't panic...": "\u4E0D\u8981\u60CA\u614C...",
289508
- "Following the white rabbit...": "\u6B63\u5728\u8DDF\u968F\u767D\u5154...",
289509
- "The truth is in here... somewhere...": "\u771F\u76F8\u5728\u8FD9\u91CC...\u67D0\u4E2A\u5730\u65B9...",
289510
- "Blowing on the cartridge...": "\u6B63\u5728\u5439\u5361\u5E26...",
289511
- "Loading... Do a barrel roll!": "\u6B63\u5728\u52A0\u8F7D...\u505A\u4E2A\u6876\u6EDA\uFF01",
289512
- "Waiting for the respawn...": "\u7B49\u5F85\u91CD\u751F...",
289513
- "Finishing the Kessel Run in less than 12 parsecs...": "\u6B63\u5728\u4EE5\u4E0D\u5230 12 \u79D2\u5DEE\u8DDD\u5B8C\u6210\u51EF\u585E\u5C14\u822A\u7EBF...",
289514
- "The cake is not a lie, it's just still loading...": "\u86CB\u7CD5\u4E0D\u662F\u8C0E\u8A00\uFF0C\u53EA\u662F\u8FD8\u5728\u52A0\u8F7D...",
289515
- "Fiddling with the character creation screen...": "\u6B63\u5728\u6446\u5F04\u89D2\u8272\u521B\u5EFA\u754C\u9762...",
289516
- "Just a moment, I'm finding the right meme...": "\u7A0D\u7B49\u7247\u523B\uFF0C\u6211\u6B63\u5728\u5BFB\u627E\u5408\u9002\u7684\u8868\u60C5\u5305...",
289517
- "Pressing 'A' to continue...": "\u6309 'A' \u7EE7\u7EED...",
289518
- "Herding digital cats...": "\u6B63\u5728\u653E\u7267\u6570\u5B57\u732B...",
289519
- "Polishing the pixels...": "\u6B63\u5728\u6253\u78E8\u50CF\u7D20...",
289520
- "Finding a suitable loading screen pun...": "\u6B63\u5728\u5BFB\u627E\u5408\u9002\u7684\u52A0\u8F7D\u5C4F\u5E55\u53CC\u5173\u8BED...",
289521
- "Distracting you with this witty phrase...": "\u6B63\u5728\u7528\u8FD9\u4E2A\u673A\u667A\u7684\u77ED\u8BED\u5206\u6563\u60A8\u7684\u6CE8\u610F\u529B...",
289522
- "Almost there... probably...": "\u5FEB\u5230\u4E86...\u53EF\u80FD...",
289523
- "Our hamsters are working as fast as they can...": "\u6211\u4EEC\u7684\u4ED3\u9F20\u6B63\u5728\u5C3D\u53EF\u80FD\u5FEB\u5730\u5DE5\u4F5C...",
289524
- "Giving Cloudy a pat on the head...": "\u6B63\u5728\u62CD\u62CD Cloudy \u7684\u5934...",
289525
- "Petting the cat...": "\u6B63\u5728\u629A\u6478\u732B\u54AA...",
289526
- "Rickrolling my boss...": "\u6B63\u5728 Rickroll \u6211\u7684\u8001\u677F...",
289527
- "Never gonna give you up, never gonna let you down...": "\u6C38\u8FDC\u4E0D\u4F1A\u653E\u5F03\u4F60\uFF0C\u6C38\u8FDC\u4E0D\u4F1A\u8BA9\u4F60\u5931\u671B...",
289528
- "Slapping the bass...": "\u6B63\u5728\u62CD\u6253\u4F4E\u97F3...",
289529
- "Tasting the snozberries...": "\u6B63\u5728\u54C1\u5C1D snozberries...",
289530
- "I'm going the distance, I'm going for speed...": "\u6211\u8981\u8D70\u5F97\u66F4\u8FDC\uFF0C\u6211\u8981\u8FFD\u6C42\u901F\u5EA6...",
289531
- "Is this the real life? Is this just fantasy?...": "\u8FD9\u662F\u771F\u5B9E\u7684\u751F\u6D3B\u5417\uFF1F\u8FD8\u662F\u53EA\u662F\u5E7B\u60F3\uFF1F...",
289532
- "I've got a good feeling about this...": "\u6211\u5BF9\u8FD9\u4E2A\u611F\u89C9\u5F88\u597D...",
289533
- "Poking the bear...": "\u6B63\u5728\u6233\u718A...",
289534
- "Doing research on the latest memes...": "\u6B63\u5728\u7814\u7A76\u6700\u65B0\u7684\u8868\u60C5\u5305...",
289535
- "Figuring out how to make this more witty...": "\u6B63\u5728\u60F3\u529E\u6CD5\u8BA9\u8FD9\u66F4\u6709\u8DA3...",
289536
- "Hmmm... let me think...": "\u55EF...\u8BA9\u6211\u60F3\u60F3...",
289537
- "What do you call a fish with no eyes? A fsh...": "\u6CA1\u6709\u773C\u775B\u7684\u9C7C\u53EB\u4EC0\u4E48\uFF1F\u4E00\u6761\u9C7C...",
289538
- "Why did the computer go to therapy? It had too many bytes...": "\u4E3A\u4EC0\u4E48\u7535\u8111\u53BB\u770B\u5FC3\u7406\u533B\u751F\uFF1F\u56E0\u4E3A\u5B83\u6709\u592A\u591A\u5B57\u8282...",
289539
- "Why don't programmers like nature? It has too many bugs...": "\u4E3A\u4EC0\u4E48\u7A0B\u5E8F\u5458\u4E0D\u559C\u6B22\u5927\u81EA\u7136\uFF1F\u56E0\u4E3A\u866B\u5B50\u592A\u591A\u4E86...",
289540
- "Why do programmers prefer dark mode? Because light attracts bugs...": "\u4E3A\u4EC0\u4E48\u7A0B\u5E8F\u5458\u559C\u6B22\u6697\u8272\u6A21\u5F0F\uFF1F\u56E0\u4E3A\u5149\u4F1A\u5438\u5F15\u866B\u5B50...",
289541
- "Why did the developer go broke? Because they used up all their cache...": "\u4E3A\u4EC0\u4E48\u5F00\u53D1\u8005\u7834\u4EA7\u4E86\uFF1F\u56E0\u4E3A\u4ED6\u4EEC\u7528\u5B8C\u4E86\u6240\u6709\u7F13\u5B58...",
289542
- "What can you do with a broken pencil? Nothing, it's pointless...": "\u4F60\u80FD\u7528\u65AD\u4E86\u7684\u94C5\u7B14\u505A\u4EC0\u4E48\uFF1F\u4EC0\u4E48\u90FD\u4E0D\u80FD\uFF0C\u56E0\u4E3A\u5B83\u6CA1\u6709\u7B14\u5C16...",
289543
- "Applying percussive maintenance...": "\u6B63\u5728\u5E94\u7528\u6572\u51FB\u7EF4\u62A4...",
289544
- "Searching for the correct USB orientation...": "\u6B63\u5728\u5BFB\u627E\u6B63\u786E\u7684 USB \u65B9\u5411...",
289545
- "Ensuring the magic smoke stays inside the wires...": "\u786E\u4FDD\u9B54\u6CD5\u70DF\u96FE\u7559\u5728\u7535\u7EBF\u5185...",
289546
- "Rewriting in Rust for no particular reason...": "\u6B63\u5728\u7528 Rust \u91CD\u5199\uFF0C\u6CA1\u6709\u7279\u522B\u7684\u539F\u56E0...",
289547
- "Trying to exit Vim...": "\u6B63\u5728\u5C1D\u8BD5\u9000\u51FA Vim...",
289548
- "Spinning up the hamster wheel...": "\u6B63\u5728\u542F\u52A8\u4ED3\u9F20\u8F6E...",
289549
- "That's not a bug, it's an undocumented feature...": "\u8FD9\u4E0D\u662F\u4E00\u4E2A\u9519\u8BEF\uFF0C\u8FD9\u662F\u4E00\u4E2A\u672A\u8BB0\u5F55\u7684\u529F\u80FD...",
289550
- "Engage.": "\u542F\u52A8\u3002",
289551
- "I'll be back... with an answer.": "\u6211\u4F1A\u56DE\u6765\u7684...\u5E26\u7740\u7B54\u6848\u3002",
289552
- "My other process is a TARDIS...": "\u6211\u7684\u53E6\u4E00\u4E2A\u8FDB\u7A0B\u662F TARDIS...",
289553
- "Communing with the machine spirit...": "\u6B63\u5728\u4E0E\u673A\u5668\u7CBE\u795E\u4EA4\u6D41...",
289554
- "Letting the thoughts marinate...": "\u8BA9\u60F3\u6CD5\u6162\u6162\u915D\u917F...",
289555
- "Just remembered where I put my keys...": "\u521A\u521A\u60F3\u8D77\u6211\u628A\u94A5\u5319\u653E\u5728\u54EA\u91CC\u4E86...",
289556
- "Pondering the orb...": "\u6B63\u5728\u601D\u8003\u7403\u4F53...",
289557
- "I've seen things you people wouldn't believe... like a user who reads loading messages.": "\u6211\u89C1\u8FC7\u4F60\u4EEC\u4E0D\u4F1A\u76F8\u4FE1\u7684\u4E8B\u60C5...\u6BD4\u5982\u4E00\u4E2A\u9605\u8BFB\u52A0\u8F7D\u6D88\u606F\u7684\u7528\u6237\u3002",
289558
- "Initiating thoughtful gaze...": "\u6B63\u5728\u542F\u52A8\u6DF1\u601D\u51DD\u89C6...",
289559
- "What's a computer's favorite snack? Microchips.": "\u7535\u8111\u6700\u559C\u6B22\u7684\u96F6\u98DF\u662F\u4EC0\u4E48\uFF1F\u5FAE\u82AF\u7247\u3002",
289560
- "Why do Java developers wear glasses? Because they don't C#.": "\u4E3A\u4EC0\u4E48 Java \u5F00\u53D1\u8005\u6234\u773C\u955C\uFF1F\u56E0\u4E3A\u4ED6\u4EEC\u4E0D\u4F1A C#\u3002",
289561
- "Charging the laser... pew pew!": "\u6B63\u5728\u7ED9\u6FC0\u5149\u5145\u7535...\u7830\u7830\uFF01",
289562
- "Dividing by zero... just kidding!": "\u9664\u4EE5\u96F6...\u53EA\u662F\u5F00\u73A9\u7B11\uFF01",
289563
- "Looking for an adult superviso... I mean, processing.": "\u6B63\u5728\u5BFB\u627E\u6210\u4EBA\u76D1\u7763...\u6211\u662F\u8BF4\uFF0C\u5904\u7406\u4E2D\u3002",
289564
- "Making it go beep boop.": "\u8BA9\u5B83\u53D1\u51FA\u54D4\u54D4\u58F0\u3002",
289565
- "Buffering... because even AIs need a moment.": "\u6B63\u5728\u7F13\u51B2...\u56E0\u4E3A\u5373\u4F7F\u662F AI \u4E5F\u9700\u8981\u7247\u523B\u3002",
289566
- "Entangling quantum particles for a faster response...": "\u6B63\u5728\u7EA0\u7F20\u91CF\u5B50\u7C92\u5B50\u4EE5\u83B7\u5F97\u66F4\u5FEB\u7684\u56DE\u590D...",
289567
- "Polishing the chrome... on the algorithms.": "\u6B63\u5728\u6253\u78E8\u94EC...\u5728\u7B97\u6CD5\u4E0A\u3002",
289568
- "Are you not entertained? (Working on it!)": "\u4F60\u4E0D\u89C9\u5F97\u6709\u8DA3\u5417\uFF1F\uFF08\u6B63\u5728\u52AA\u529B\uFF01\uFF09",
289569
- "Summoning the code gremlins... to help, of course.": "\u6B63\u5728\u53EC\u5524\u4EE3\u7801\u5C0F\u7CBE\u7075...\u5F53\u7136\u662F\u6765\u5E2E\u5FD9\u7684\u3002",
289570
- "Just waiting for the dial-up tone to finish...": "\u53EA\u662F\u7B49\u5F85\u62E8\u53F7\u97F3\u7ED3\u675F...",
289571
- "Recalibrating the humor-o-meter.": "\u6B63\u5728\u91CD\u65B0\u6821\u51C6\u5E7D\u9ED8\u8BA1\u3002",
289572
- "My other loading screen is even funnier.": "\u6211\u7684\u53E6\u4E00\u4E2A\u52A0\u8F7D\u5C4F\u5E55\u66F4\u6709\u8DA3\u3002",
289573
- "Pretty sure there's a cat walking on the keyboard somewhere...": "\u5F88\u786E\u5B9A\u6709\u53EA\u732B\u5728\u67D0\u4E2A\u5730\u65B9\u952E\u76D8\u4E0A\u8D70...",
289574
- "Enhancing... Enhancing... Still loading.": "\u6B63\u5728\u589E\u5F3A...\u6B63\u5728\u589E\u5F3A...\u4ECD\u5728\u52A0\u8F7D\u3002",
289575
- "It's not a bug, it's a feature... of this loading screen.": "\u8FD9\u4E0D\u662F\u4E00\u4E2A\u9519\u8BEF\uFF0C\u8FD9\u662F\u4E00\u4E2A\u529F\u80FD...\u8FD9\u4E2A\u52A0\u8F7D\u5C4F\u5E55\u7684\u529F\u80FD\u3002",
289576
- "Have you tried turning it off and on again? (The loading screen, not me.)": "\u4F60\u8BD5\u8FC7\u628A\u5B83\u5173\u6389\u518D\u6253\u5F00\u5417\uFF1F\uFF08\u52A0\u8F7D\u5C4F\u5E55\uFF0C\u4E0D\u662F\u6211\u3002\uFF09",
289577
- "Constructing additional pylons...": "\u6B63\u5728\u5EFA\u9020\u989D\u5916\u7684\u80FD\u91CF\u5854..."
290377
+ WITTY_LOADING_PHRASES: [
290378
+ // --- 职场搬砖系列 ---
290379
+ "\u6B63\u5728\u52AA\u529B\u642C\u7816\uFF0C\u8BF7\u7A0D\u5019...",
290380
+ "\u8001\u677F\u5728\u8EAB\u540E\uFF0C\u5FEB\u52A0\u8F7D\u554A\uFF01",
290381
+ "\u5934\u53D1\u6389\u5149\u524D\uFF0C\u4E00\u5B9A\u80FD\u52A0\u8F7D\u5B8C...",
290382
+ "\u670D\u52A1\u5668\u6B63\u5728\u6DF1\u547C\u5438\uFF0C\u51C6\u5907\u653E\u5927\u62DB...",
290383
+ "\u6B63\u5728\u5411\u670D\u52A1\u5668\u6295\u5582\u5496\u5561...",
290384
+ // --- 大厂黑话系列 ---
290385
+ "\u6B63\u5728\u8D4B\u80FD\u5168\u94FE\u8DEF\uFF0C\u5BFB\u627E\u5173\u952E\u6293\u624B...",
290386
+ "\u6B63\u5728\u964D\u672C\u589E\u6548\uFF0C\u4F18\u5316\u52A0\u8F7D\u8DEF\u5F84...",
290387
+ "\u6B63\u5728\u6253\u7834\u90E8\u95E8\u58C1\u5792\uFF0C\u6C89\u6DC0\u65B9\u6CD5\u8BBA...",
290388
+ "\u6B63\u5728\u62E5\u62B1\u53D8\u5316\uFF0C\u8FED\u4EE3\u6838\u5FC3\u4EF7\u503C...",
290389
+ "\u6B63\u5728\u5BF9\u9F50\u9897\u7C92\u5EA6\uFF0C\u6253\u78E8\u5E95\u5C42\u903B\u8F91...",
290390
+ "\u5927\u529B\u51FA\u5947\u8FF9\uFF0C\u6B63\u5728\u5F3A\u884C\u52A0\u8F7D...",
290391
+ // --- 程序员自嘲系列 ---
290392
+ "\u53EA\u8981\u6211\u4E0D\u5199\u4EE3\u7801\uFF0C\u4EE3\u7801\u5C31\u6CA1\u6709 Bug...",
290393
+ "\u6B63\u5728\u628A Bug \u8F6C\u5316\u4E3A Feature...",
290394
+ "\u53EA\u8981\u6211\u4E0D\u5C34\u5C2C\uFF0CBug \u5C31\u8FFD\u4E0D\u4E0A\u6211...",
290395
+ "\u6B63\u5728\u8BD5\u56FE\u7406\u89E3\u53BB\u5E74\u7684\u81EA\u5DF1\u5199\u4E86\u4EC0\u4E48...",
290396
+ "\u6B63\u5728\u733F\u529B\u89C9\u9192\u4E2D\uFF0C\u8BF7\u8010\u5FC3\u7B49\u5F85...",
290397
+ // --- 合作愉快系列 ---
290398
+ "\u6B63\u5728\u8BE2\u95EE\u4EA7\u54C1\u7ECF\u7406\uFF1A\u8FD9\u9700\u6C42\u662F\u771F\u7684\u5417\uFF1F",
290399
+ "\u6B63\u5728\u7ED9\u4EA7\u54C1\u7ECF\u7406\u753B\u997C\uFF0C\u8BF7\u7A0D\u7B49...",
290400
+ // --- 温暖治愈系列 ---
290401
+ "\u6BCF\u4E00\u884C\u4EE3\u7801\uFF0C\u90FD\u5728\u52AA\u529B\u8BA9\u4E16\u754C\u53D8\u5F97\u66F4\u597D\u4E00\u70B9\u70B9...",
290402
+ "\u6BCF\u4E00\u4E2A\u4F1F\u5927\u7684\u60F3\u6CD5\uFF0C\u90FD\u503C\u5F97\u8FD9\u4EFD\u8010\u5FC3\u7684\u7B49\u5F85...",
290403
+ "\u522B\u6025\uFF0C\u7F8E\u597D\u7684\u4E8B\u7269\u603B\u662F\u9700\u8981\u4E00\u70B9\u65F6\u95F4\u53BB\u915D\u917F...",
290404
+ "\u613F\u4F60\u7684\u4EE3\u7801\u6C38\u65E0 Bug\uFF0C\u613F\u4F60\u7684\u68A6\u60F3\u7EC8\u5C06\u6210\u771F...",
290405
+ "\u54EA\u6015\u53EA\u6709 0.1% \u7684\u8FDB\u5EA6\uFF0C\u4E5F\u662F\u5728\u5411\u76EE\u6807\u9760\u8FD1...",
290406
+ "\u52A0\u8F7D\u7684\u662F\u5B57\u8282\uFF0C\u627F\u8F7D\u7684\u662F\u5BF9\u6280\u672F\u7684\u70ED\u7231..."
290407
+ ]
289578
290408
  };
289579
290409
  }
289580
290410
  });
@@ -334266,7 +335096,7 @@ var loadYoga = (() => {
334266
335096
  pa.unshift(a2);
334267
335097
  }
334268
335098
  __name(sa, "sa");
334269
- var F4 = 0, ta = null, G2 = null;
335099
+ var F4 = 0, ta2 = null, G2 = null;
334270
335100
  function x3(a2) {
334271
335101
  if (h3.onAbort) h3.onAbort(a2);
334272
335102
  a2 = "Aborted(" + a2 + ")";
@@ -335409,7 +336239,7 @@ var loadYoga = (() => {
335409
336239
  qa.unshift(h3.asm.F);
335410
336240
  F4--;
335411
336241
  h3.monitorRunDependencies && h3.monitorRunDependencies(F4);
335412
- 0 == F4 && (null !== ta && (clearInterval(ta), ta = null), G2 && (e4 = G2, G2 = null, e4()));
336242
+ 0 == F4 && (null !== ta2 && (clearInterval(ta2), ta2 = null), G2 && (e4 = G2, G2 = null, e4()));
335413
336243
  }
335414
336244
  __name(a2, "a");
335415
336245
  function b2(e4) {
@@ -341431,7 +342261,8 @@ var SETTINGS_SCHEMA = {
341431
342261
  { value: "auto", label: "Auto (detect from system)" },
341432
342262
  { value: "en", label: "English" },
341433
342263
  { value: "zh", label: "\u4E2D\u6587 (Chinese)" },
341434
- { value: "ru", label: "\u0420\u0443\u0441\u0441\u043A\u0438\u0439 (Russian)" }
342264
+ { value: "ru", label: "\u0420\u0443\u0441\u0441\u043A\u0438\u0439 (Russian)" },
342265
+ { value: "de", label: "Deutsch (German)" }
341435
342266
  ]
341436
342267
  },
341437
342268
  terminalBell: {
@@ -342651,7 +343482,18 @@ function handleError(error2, config2, customErrorCode) {
342651
343482
  }
342652
343483
  }
342653
343484
  __name(handleError, "handleError");
342654
- function handleToolError(toolName, toolError, config2, _errorCode, resultDisplay) {
343485
+ function handleToolError(toolName, toolError, config2, errorCode, resultDisplay) {
343486
+ const isExecutionDenied = errorCode === ToolErrorType.EXECUTION_DENIED;
343487
+ const isNonInteractive = !config2.isInteractive();
343488
+ const isTextMode = config2.getOutputFormat() === OutputFormat.TEXT;
343489
+ if (isExecutionDenied && isNonInteractive && isTextMode) {
343490
+ const warningMessage = `Warning: Tool "${toolName}" requires user approval but cannot execute in non-interactive mode.
343491
+ To enable automatic tool execution, use the -y flag (YOLO mode):
343492
+ Example: qwen -p 'your prompt' -y
343493
+
343494
+ `;
343495
+ process.stderr.write(warningMessage);
343496
+ }
342655
343497
  if (config2.getDebugMode()) {
342656
343498
  console.error(
342657
343499
  `Error executing tool ${toolName}: ${resultDisplay || toolError.message}`
@@ -355486,7 +356328,7 @@ __name(getPackageJson, "getPackageJson");
355486
356328
  // packages/cli/src/utils/version.ts
355487
356329
  async function getCliVersion() {
355488
356330
  const pkgJson = await getPackageJson();
355489
- return "0.6.0";
356331
+ return "0.6.1-nightly.20260107.2c285394";
355490
356332
  }
355491
356333
  __name(getCliVersion, "getCliVersion");
355492
356334
 
@@ -359584,9 +360426,13 @@ async function parseArguments(settings) {
359584
360426
  type: "boolean",
359585
360427
  description: "Enables checkpointing of file edits",
359586
360428
  default: false
359587
- }).option("experimental-acp", {
360429
+ }).option("acp", {
359588
360430
  type: "boolean",
359589
360431
  description: "Starts the agent in ACP mode"
360432
+ }).option("experimental-acp", {
360433
+ type: "boolean",
360434
+ description: "Starts the agent in ACP mode (deprecated, use --acp instead)",
360435
+ hidden: true
359590
360436
  }).option("experimental-skills", {
359591
360437
  type: "boolean",
359592
360438
  description: "Enable experimental Skills feature",
@@ -359782,7 +360628,15 @@ async function parseArguments(settings) {
359782
360628
  }
359783
360629
  }
359784
360630
  result["query"] = q2 || void 0;
359785
- if (result["experimentalAcp"] && !result["channel"]) {
360631
+ if (result["experimentalAcp"]) {
360632
+ console.warn(
360633
+ "\x1B[33m\u26A0 Warning: --experimental-acp is deprecated and will be removed in a future release. Please use --acp instead.\x1B[0m"
360634
+ );
360635
+ if (!result["acp"]) {
360636
+ result["acp"] = true;
360637
+ }
360638
+ }
360639
+ if ((result["acp"] || result["experimentalAcp"]) && !result["channel"]) {
359786
360640
  result["channel"] = "ACP";
359787
360641
  }
359788
360642
  return result;
@@ -360033,7 +360887,7 @@ async function loadCliConfig(settings, extensions, extensionEnablementManager, a
360033
360887
  extensionContextFilePaths,
360034
360888
  sessionTokenLimit: settings.model?.sessionTokenLimit ?? -1,
360035
360889
  maxSessionTurns: argv.maxSessionTurns ?? settings.model?.maxSessionTurns ?? -1,
360036
- experimentalZedIntegration: argv.experimentalAcp || false,
360890
+ experimentalZedIntegration: argv.acp || argv.experimentalAcp || false,
360037
360891
  experimentalSkills: argv.experimentalSkills || false,
360038
360892
  listExtensions: argv.listExtensions || false,
360039
360893
  extensions: allExtensions,
@@ -362591,8 +363445,39 @@ import * as path80 from "node:path";
362591
363445
  import { fileURLToPath as fileURLToPath11, pathToFileURL as pathToFileURL2 } from "node:url";
362592
363446
  import { homedir as homedir17 } from "node:os";
362593
363447
 
363448
+ // packages/cli/src/i18n/languages.ts
363449
+ init_esbuild_shims();
363450
+ var SUPPORTED_LANGUAGES = [
363451
+ {
363452
+ code: "en",
363453
+ id: "en-US",
363454
+ fullName: "English"
363455
+ },
363456
+ {
363457
+ code: "zh",
363458
+ id: "zh-CN",
363459
+ fullName: "Chinese"
363460
+ },
363461
+ {
363462
+ code: "ru",
363463
+ id: "ru-RU",
363464
+ fullName: "Russian"
363465
+ },
363466
+ {
363467
+ code: "de",
363468
+ id: "de-DE",
363469
+ fullName: "German"
363470
+ }
363471
+ ];
363472
+ function getLanguageNameFromLocale(locale) {
363473
+ const lang = SUPPORTED_LANGUAGES.find((l3) => l3.code === locale);
363474
+ return lang?.fullName || "English";
363475
+ }
363476
+ __name(getLanguageNameFromLocale, "getLanguageNameFromLocale");
363477
+
362594
363478
  // import("./locales/**/*.js") in packages/cli/src/i18n/index.ts
362595
363479
  var globImport_locales_js = __glob({
363480
+ "./locales/de.js": () => Promise.resolve().then(() => (init_de(), de_exports)),
362596
363481
  "./locales/en.js": () => Promise.resolve().then(() => (init_en3(), en_exports)),
362597
363482
  "./locales/ru.js": () => Promise.resolve().then(() => (init_ru(), ru_exports)),
362598
363483
  "./locales/zh.js": () => Promise.resolve().then(() => (init_zh(), zh_exports))
@@ -362617,10 +363502,12 @@ function detectSystemLanguage() {
362617
363502
  if (envLang?.startsWith("zh")) return "zh";
362618
363503
  if (envLang?.startsWith("en")) return "en";
362619
363504
  if (envLang?.startsWith("ru")) return "ru";
363505
+ if (envLang?.startsWith("de")) return "de";
362620
363506
  try {
362621
363507
  const locale = Intl.DateTimeFormat().resolvedOptions().locale;
362622
363508
  if (locale.startsWith("zh")) return "zh";
362623
363509
  if (locale.startsWith("ru")) return "ru";
363510
+ if (locale.startsWith("de")) return "de";
362624
363511
  } catch {
362625
363512
  }
362626
363513
  return "en";
@@ -362721,9 +363608,20 @@ function getCurrentLanguage() {
362721
363608
  __name(getCurrentLanguage, "getCurrentLanguage");
362722
363609
  function t4(key, params) {
362723
363610
  const translation = translations[key] ?? key;
363611
+ if (Array.isArray(translation)) {
363612
+ return key;
363613
+ }
362724
363614
  return interpolate(translation, params);
362725
363615
  }
362726
363616
  __name(t4, "t");
363617
+ function ta(key) {
363618
+ const translation = translations[key];
363619
+ if (Array.isArray(translation)) {
363620
+ return translation;
363621
+ }
363622
+ return [];
363623
+ }
363624
+ __name(ta, "ta");
362727
363625
  async function initializeI18n(lang) {
362728
363626
  await setLanguageAsync(lang ?? "auto");
362729
363627
  }
@@ -362741,10 +363639,344 @@ function validateTheme(settings) {
362741
363639
  }
362742
363640
  __name(validateTheme, "validateTheme");
362743
363641
 
363642
+ // packages/cli/src/ui/commands/languageCommand.ts
363643
+ init_esbuild_shims();
363644
+
363645
+ // packages/cli/src/ui/commands/types.ts
363646
+ init_esbuild_shims();
363647
+
363648
+ // packages/cli/src/ui/commands/languageCommand.ts
363649
+ import * as fs75 from "node:fs";
363650
+ import * as path81 from "node:path";
363651
+ var LLM_OUTPUT_LANGUAGE_RULE_FILENAME = "output-language.md";
363652
+ var LLM_OUTPUT_LANGUAGE_MARKER_PREFIX = "qwen-code:llm-output-language:";
363653
+ function parseUiLanguageArg(input) {
363654
+ const lowered = input.trim().toLowerCase();
363655
+ if (!lowered) return null;
363656
+ for (const lang of SUPPORTED_LANGUAGES) {
363657
+ if (lowered === lang.code || lowered === lang.id.toLowerCase() || lowered === lang.fullName.toLowerCase()) {
363658
+ return lang.code;
363659
+ }
363660
+ }
363661
+ return null;
363662
+ }
363663
+ __name(parseUiLanguageArg, "parseUiLanguageArg");
363664
+ function formatUiLanguageDisplay(lang) {
363665
+ const option2 = SUPPORTED_LANGUAGES.find((o3) => o3.code === lang);
363666
+ return option2 ? `${option2.fullName}\uFF08${option2.id}\uFF09` : lang;
363667
+ }
363668
+ __name(formatUiLanguageDisplay, "formatUiLanguageDisplay");
363669
+ function sanitizeLanguageForMarker(language) {
363670
+ return language.replace(/[\r\n]/g, " ").replace(/--!?>/g, "").replace(/--/g, "");
363671
+ }
363672
+ __name(sanitizeLanguageForMarker, "sanitizeLanguageForMarker");
363673
+ function generateLlmOutputLanguageRule(language) {
363674
+ const markerLanguage = sanitizeLanguageForMarker(language);
363675
+ return `# Output language preference: ${language}
363676
+ <!-- ${LLM_OUTPUT_LANGUAGE_MARKER_PREFIX} ${markerLanguage} -->
363677
+
363678
+ ## Goal
363679
+ Prefer responding in **${language}** for normal assistant messages and explanations.
363680
+
363681
+ ## Keep technical artifacts unchanged
363682
+ Do **not** translate or rewrite:
363683
+ - Code blocks, CLI commands, file paths, stack traces, logs, JSON keys, identifiers
363684
+ - Exact quoted text from the user (keep quotes verbatim)
363685
+
363686
+ ## When a conflict exists
363687
+ If higher-priority instructions (system/developer) require a different behavior, follow them.
363688
+
363689
+ ## Tool / system outputs
363690
+ Raw tool/system outputs may contain fixed-format English. Preserve them verbatim, and if needed, add a short **${language}** explanation below.
363691
+ `;
363692
+ }
363693
+ __name(generateLlmOutputLanguageRule, "generateLlmOutputLanguageRule");
363694
+ function getLlmOutputLanguageRulePath() {
363695
+ return path81.join(
363696
+ Storage.getGlobalQwenDir(),
363697
+ LLM_OUTPUT_LANGUAGE_RULE_FILENAME
363698
+ );
363699
+ }
363700
+ __name(getLlmOutputLanguageRulePath, "getLlmOutputLanguageRulePath");
363701
+ function normalizeLanguageName(language) {
363702
+ const lowered = language.toLowerCase();
363703
+ const fullName = getLanguageNameFromLocale(lowered);
363704
+ if (fullName !== "English" || lowered === "en") {
363705
+ return fullName;
363706
+ }
363707
+ return language;
363708
+ }
363709
+ __name(normalizeLanguageName, "normalizeLanguageName");
363710
+ function extractLlmOutputLanguageFromRuleFileContent(content) {
363711
+ const markerMatch = content.match(
363712
+ new RegExp(
363713
+ String.raw`<!--\s*${LLM_OUTPUT_LANGUAGE_MARKER_PREFIX}\s*(.*?)\s*-->`,
363714
+ "i"
363715
+ )
363716
+ );
363717
+ if (markerMatch?.[1]) {
363718
+ const lang = markerMatch[1].trim();
363719
+ if (lang) return lang;
363720
+ }
363721
+ const headingMatch = content.match(
363722
+ /^#.*?CRITICAL:\s*(.*?)\s+Output Language Rule\b/im
363723
+ );
363724
+ if (headingMatch?.[1]) {
363725
+ const lang = headingMatch[1].trim();
363726
+ if (lang) return lang;
363727
+ }
363728
+ return null;
363729
+ }
363730
+ __name(extractLlmOutputLanguageFromRuleFileContent, "extractLlmOutputLanguageFromRuleFileContent");
363731
+ function initializeLlmOutputLanguage() {
363732
+ const filePath = getLlmOutputLanguageRulePath();
363733
+ if (fs75.existsSync(filePath)) {
363734
+ return;
363735
+ }
363736
+ const detectedLocale = detectSystemLanguage();
363737
+ const languageName = getLanguageNameFromLocale(detectedLocale);
363738
+ const content = generateLlmOutputLanguageRule(languageName);
363739
+ const dir = path81.dirname(filePath);
363740
+ fs75.mkdirSync(dir, { recursive: true });
363741
+ fs75.writeFileSync(filePath, content, "utf-8");
363742
+ }
363743
+ __name(initializeLlmOutputLanguage, "initializeLlmOutputLanguage");
363744
+ function getCurrentLlmOutputLanguage() {
363745
+ const filePath = getLlmOutputLanguageRulePath();
363746
+ if (fs75.existsSync(filePath)) {
363747
+ try {
363748
+ const content = fs75.readFileSync(filePath, "utf-8");
363749
+ return extractLlmOutputLanguageFromRuleFileContent(content);
363750
+ } catch {
363751
+ }
363752
+ }
363753
+ return null;
363754
+ }
363755
+ __name(getCurrentLlmOutputLanguage, "getCurrentLlmOutputLanguage");
363756
+ async function setUiLanguage(context2, lang) {
363757
+ const { services } = context2;
363758
+ const { settings } = services;
363759
+ if (!services.config) {
363760
+ return {
363761
+ type: "message",
363762
+ messageType: "error",
363763
+ content: t4("Configuration not available.")
363764
+ };
363765
+ }
363766
+ await setLanguageAsync(lang);
363767
+ if (settings && typeof settings.setValue === "function") {
363768
+ try {
363769
+ settings.setValue("User" /* User */, "general.language", lang);
363770
+ } catch (error2) {
363771
+ console.warn("Failed to save language setting:", error2);
363772
+ }
363773
+ }
363774
+ context2.ui.reloadCommands();
363775
+ return {
363776
+ type: "message",
363777
+ messageType: "info",
363778
+ content: t4("UI language changed to {{lang}}", {
363779
+ lang: formatUiLanguageDisplay(lang)
363780
+ })
363781
+ };
363782
+ }
363783
+ __name(setUiLanguage, "setUiLanguage");
363784
+ function generateLlmOutputLanguageRuleFile(language) {
363785
+ try {
363786
+ const filePath = getLlmOutputLanguageRulePath();
363787
+ const normalizedLanguage = normalizeLanguageName(language);
363788
+ const content = generateLlmOutputLanguageRule(normalizedLanguage);
363789
+ const dir = path81.dirname(filePath);
363790
+ fs75.mkdirSync(dir, { recursive: true });
363791
+ fs75.writeFileSync(filePath, content, "utf-8");
363792
+ return Promise.resolve({
363793
+ type: "message",
363794
+ messageType: "info",
363795
+ content: [
363796
+ t4("LLM output language rule file generated at {{path}}", {
363797
+ path: filePath
363798
+ }),
363799
+ "",
363800
+ t4("Please restart the application for the changes to take effect.")
363801
+ ].join("\n")
363802
+ });
363803
+ } catch (error2) {
363804
+ return Promise.resolve({
363805
+ type: "message",
363806
+ messageType: "error",
363807
+ content: t4(
363808
+ "Failed to generate LLM output language rule file: {{error}}",
363809
+ {
363810
+ error: error2 instanceof Error ? error2.message : String(error2)
363811
+ }
363812
+ )
363813
+ });
363814
+ }
363815
+ }
363816
+ __name(generateLlmOutputLanguageRuleFile, "generateLlmOutputLanguageRuleFile");
363817
+ var languageCommand = {
363818
+ name: "language",
363819
+ get description() {
363820
+ return t4("View or change the language setting");
363821
+ },
363822
+ kind: "built-in" /* BUILT_IN */,
363823
+ action: /* @__PURE__ */ __name(async (context2, args) => {
363824
+ const { services } = context2;
363825
+ if (!services.config) {
363826
+ return {
363827
+ type: "message",
363828
+ messageType: "error",
363829
+ content: t4("Configuration not available.")
363830
+ };
363831
+ }
363832
+ const trimmedArgs = args.trim();
363833
+ const parts = trimmedArgs.split(/\s+/);
363834
+ const firstArg = parts[0].toLowerCase();
363835
+ const subArgs = parts.slice(1).join(" ");
363836
+ if (firstArg === "ui" || firstArg === "output") {
363837
+ const subCommand = languageCommand.subCommands?.find(
363838
+ (s5) => s5.name === firstArg
363839
+ );
363840
+ if (subCommand?.action) {
363841
+ return subCommand.action(
363842
+ context2,
363843
+ subArgs
363844
+ );
363845
+ }
363846
+ }
363847
+ if (!trimmedArgs) {
363848
+ const currentUiLang = getCurrentLanguage();
363849
+ const currentLlmLang = getCurrentLlmOutputLanguage();
363850
+ const message = [
363851
+ t4("Current UI language: {{lang}}", {
363852
+ lang: formatUiLanguageDisplay(currentUiLang)
363853
+ }),
363854
+ currentLlmLang ? t4("Current LLM output language: {{lang}}", { lang: currentLlmLang }) : t4("LLM output language not set"),
363855
+ "",
363856
+ t4("Available subcommands:"),
363857
+ ` /language ui [${SUPPORTED_LANGUAGES.map((o3) => o3.id).join("|")}] - ${t4("Set UI language")}`,
363858
+ ` /language output <language> - ${t4("Set LLM output language")}`
363859
+ ].join("\n");
363860
+ return {
363861
+ type: "message",
363862
+ messageType: "info",
363863
+ content: message
363864
+ };
363865
+ }
363866
+ const targetLang = parseUiLanguageArg(trimmedArgs);
363867
+ if (targetLang) {
363868
+ return setUiLanguage(context2, targetLang);
363869
+ }
363870
+ return {
363871
+ type: "message",
363872
+ messageType: "error",
363873
+ content: [
363874
+ t4("Invalid command. Available subcommands:"),
363875
+ ` - /language ui [${SUPPORTED_LANGUAGES.map((o3) => o3.id).join("|")}] - ${t4("Set UI language")}`,
363876
+ " - /language output <language> - " + t4("Set LLM output language")
363877
+ ].join("\n")
363878
+ };
363879
+ }, "action"),
363880
+ subCommands: [
363881
+ {
363882
+ name: "ui",
363883
+ get description() {
363884
+ return t4("Set UI language");
363885
+ },
363886
+ kind: "built-in" /* BUILT_IN */,
363887
+ action: /* @__PURE__ */ __name(async (context2, args) => {
363888
+ const trimmedArgs = args.trim();
363889
+ if (!trimmedArgs) {
363890
+ return {
363891
+ type: "message",
363892
+ messageType: "info",
363893
+ content: [
363894
+ t4("Set UI language"),
363895
+ "",
363896
+ t4("Usage: /language ui [{{options}}]", {
363897
+ options: SUPPORTED_LANGUAGES.map((o3) => o3.id).join("|")
363898
+ }),
363899
+ "",
363900
+ t4("Available options:"),
363901
+ ...SUPPORTED_LANGUAGES.map(
363902
+ (o3) => ` - ${o3.id}: ${t4(o3.fullName)}`
363903
+ ),
363904
+ "",
363905
+ t4(
363906
+ "To request additional UI language packs, please open an issue on GitHub."
363907
+ )
363908
+ ].join("\n")
363909
+ };
363910
+ }
363911
+ const targetLang = parseUiLanguageArg(trimmedArgs);
363912
+ if (!targetLang) {
363913
+ return {
363914
+ type: "message",
363915
+ messageType: "error",
363916
+ content: t4("Invalid language. Available: {{options}}", {
363917
+ options: SUPPORTED_LANGUAGES.map((o3) => o3.id).join(",")
363918
+ })
363919
+ };
363920
+ }
363921
+ return setUiLanguage(context2, targetLang);
363922
+ }, "action"),
363923
+ subCommands: SUPPORTED_LANGUAGES.map(createUiLanguageSubCommand)
363924
+ },
363925
+ {
363926
+ name: "output",
363927
+ get description() {
363928
+ return t4("Set LLM output language");
363929
+ },
363930
+ kind: "built-in" /* BUILT_IN */,
363931
+ action: /* @__PURE__ */ __name(async (context2, args) => {
363932
+ const trimmedArgs = args.trim();
363933
+ if (!trimmedArgs) {
363934
+ return {
363935
+ type: "message",
363936
+ messageType: "info",
363937
+ content: [
363938
+ t4("Set LLM output language"),
363939
+ "",
363940
+ t4("Usage: /language output <language>"),
363941
+ ` ${t4("Example: /language output \u4E2D\u6587")}`,
363942
+ ` ${t4("Example: /language output English")}`,
363943
+ ` ${t4("Example: /language output \u65E5\u672C\u8A9E")}`
363944
+ ].join("\n")
363945
+ };
363946
+ }
363947
+ return generateLlmOutputLanguageRuleFile(trimmedArgs);
363948
+ }, "action")
363949
+ }
363950
+ ]
363951
+ };
363952
+ function createUiLanguageSubCommand(option2) {
363953
+ return {
363954
+ name: option2.id,
363955
+ get description() {
363956
+ return t4("Set UI language to {{name}}", { name: option2.fullName });
363957
+ },
363958
+ kind: "built-in" /* BUILT_IN */,
363959
+ action: /* @__PURE__ */ __name(async (context2, args) => {
363960
+ if (args.trim().length > 0) {
363961
+ return {
363962
+ type: "message",
363963
+ messageType: "error",
363964
+ content: t4(
363965
+ "Language subcommands do not accept additional arguments."
363966
+ )
363967
+ };
363968
+ }
363969
+ return setUiLanguage(context2, option2.code);
363970
+ }, "action")
363971
+ };
363972
+ }
363973
+ __name(createUiLanguageSubCommand, "createUiLanguageSubCommand");
363974
+
362744
363975
  // packages/cli/src/core/initializer.ts
362745
363976
  async function initializeApp(config2, settings) {
362746
363977
  const languageSetting = process.env["QWEN_CODE_LANG"] || settings.merged.general?.language || "auto";
362747
363978
  await initializeI18n(languageSetting);
363979
+ initializeLlmOutputLanguage();
362748
363980
  const authType = settings.merged.security?.auth?.selectedType;
362749
363981
  const authError = await performInitialAuth(config2, authType);
362750
363982
  if (authError) {
@@ -362960,11 +364192,6 @@ init_esbuild_shims();
362960
364192
 
362961
364193
  // packages/cli/src/utils/commands.ts
362962
364194
  init_esbuild_shims();
362963
-
362964
- // packages/cli/src/ui/commands/types.ts
362965
- init_esbuild_shims();
362966
-
362967
- // packages/cli/src/utils/commands.ts
362968
364195
  var parseSlashCommand = /* @__PURE__ */ __name((query, commands) => {
362969
364196
  const trimmed2 = query.trim();
362970
364197
  const parts = trimmed2.substring(1).trim().split(/\s+/);
@@ -363162,7 +364389,7 @@ var formatDuration = /* @__PURE__ */ __name((milliseconds) => {
363162
364389
 
363163
364390
  // packages/cli/src/generated/git-commit.ts
363164
364391
  init_esbuild_shims();
363165
- var GIT_COMMIT_INFO2 = "17eb20c1";
364392
+ var GIT_COMMIT_INFO2 = "101c48a3";
363166
364393
 
363167
364394
  // packages/cli/src/utils/systemInfo.ts
363168
364395
  async function getNpmVersion() {
@@ -363296,16 +364523,56 @@ var agentsCommand = {
363296
364523
 
363297
364524
  // packages/cli/src/ui/commands/approvalModeCommand.ts
363298
364525
  init_esbuild_shims();
364526
+ function parseApprovalModeArg(arg) {
364527
+ const trimmed2 = arg.trim().toLowerCase();
364528
+ if (!trimmed2) {
364529
+ return void 0;
364530
+ }
364531
+ return APPROVAL_MODES.find((mode) => mode.toLowerCase() === trimmed2);
364532
+ }
364533
+ __name(parseApprovalModeArg, "parseApprovalModeArg");
363299
364534
  var approvalModeCommand = {
363300
364535
  name: "approval-mode",
363301
364536
  get description() {
363302
364537
  return t4("View or change the approval mode for tool usage");
363303
364538
  },
363304
364539
  kind: "built-in" /* BUILT_IN */,
363305
- action: /* @__PURE__ */ __name(async (_context, _args) => ({
363306
- type: "dialog",
363307
- dialog: "approval-mode"
363308
- }), "action")
364540
+ action: /* @__PURE__ */ __name(async (context2, args) => {
364541
+ const mode = parseApprovalModeArg(args);
364542
+ if (!args.trim()) {
364543
+ return {
364544
+ type: "dialog",
364545
+ dialog: "approval-mode"
364546
+ };
364547
+ }
364548
+ if (!mode) {
364549
+ return {
364550
+ type: "message",
364551
+ messageType: "error",
364552
+ content: t4('Invalid approval mode "{{arg}}". Valid modes: {{modes}}', {
364553
+ arg: args.trim(),
364554
+ modes: APPROVAL_MODES.join(", ")
364555
+ })
364556
+ };
364557
+ }
364558
+ const { config: config2 } = context2.services;
364559
+ if (config2) {
364560
+ try {
364561
+ config2.setApprovalMode(mode);
364562
+ } catch (e4) {
364563
+ return {
364564
+ type: "message",
364565
+ messageType: "error",
364566
+ content: e4.message
364567
+ };
364568
+ }
364569
+ }
364570
+ return {
364571
+ type: "message",
364572
+ messageType: "info",
364573
+ content: t4('Approval mode set to "{{mode}}"', { mode })
364574
+ };
364575
+ }, "action")
363309
364576
  };
363310
364577
 
363311
364578
  // packages/cli/src/ui/commands/authCommand.ts
@@ -363721,7 +364988,7 @@ var docsCommand = {
363721
364988
  // packages/cli/src/ui/commands/directoryCommand.tsx
363722
364989
  init_esbuild_shims();
363723
364990
  import * as os29 from "node:os";
363724
- import * as path81 from "node:path";
364991
+ import * as path82 from "node:path";
363725
364992
  function expandHomeDir(p2) {
363726
364993
  if (!p2) {
363727
364994
  return "";
@@ -363732,7 +364999,7 @@ function expandHomeDir(p2) {
363732
364999
  } else if (p2 === "~" || p2.startsWith("~/")) {
363733
365000
  expandedPath = os29.homedir() + p2.substring(1);
363734
365001
  }
363735
- return path81.normalize(expandedPath);
365002
+ return path82.normalize(expandedPath);
363736
365003
  }
363737
365004
  __name(expandHomeDir, "expandHomeDir");
363738
365005
  var directoryCommand = {
@@ -364085,7 +365352,7 @@ var helpCommand = {
364085
365352
 
364086
365353
  // packages/cli/src/ui/commands/ideCommand.ts
364087
365354
  init_esbuild_shims();
364088
- import path82 from "node:path";
365355
+ import path83 from "node:path";
364089
365356
  function getIdeStatusMessage(ideClient) {
364090
365357
  const connection = ideClient.getConnectionStatus();
364091
365358
  switch (connection.status) {
@@ -364115,13 +365382,13 @@ __name(getIdeStatusMessage, "getIdeStatusMessage");
364115
365382
  function formatFileList(openFiles) {
364116
365383
  const basenameCounts = /* @__PURE__ */ new Map();
364117
365384
  for (const file of openFiles) {
364118
- const basename19 = path82.basename(file.path);
365385
+ const basename19 = path83.basename(file.path);
364119
365386
  basenameCounts.set(basename19, (basenameCounts.get(basename19) || 0) + 1);
364120
365387
  }
364121
365388
  const fileList = openFiles.map((file) => {
364122
- const basename19 = path82.basename(file.path);
365389
+ const basename19 = path83.basename(file.path);
364123
365390
  const isDuplicate = (basenameCounts.get(basename19) || 0) > 1;
364124
- const parentDir = path82.basename(path82.dirname(file.path));
365391
+ const parentDir = path83.basename(path83.dirname(file.path));
364125
365392
  const displayName = isDuplicate ? `${basename19} (/${parentDir})` : basename19;
364126
365393
  return ` - ${displayName}${file.isActive ? " (active)" : ""}`;
364127
365394
  }).join("\n");
@@ -364352,8 +365619,8 @@ var ideCommand = /* @__PURE__ */ __name(async () => {
364352
365619
 
364353
365620
  // packages/cli/src/ui/commands/initCommand.ts
364354
365621
  init_esbuild_shims();
364355
- import * as fs75 from "node:fs";
364356
- import * as path83 from "node:path";
365622
+ import * as fs76 from "node:fs";
365623
+ import * as path84 from "node:path";
364357
365624
  var import_react27 = __toESM(require_react(), 1);
364358
365625
  var initCommand = {
364359
365626
  name: "init",
@@ -364371,11 +365638,11 @@ var initCommand = {
364371
365638
  }
364372
365639
  const targetDir = context2.services.config.getTargetDir();
364373
365640
  const contextFileName = getCurrentGeminiMdFilename();
364374
- const contextFilePath = path83.join(targetDir, contextFileName);
365641
+ const contextFilePath = path84.join(targetDir, contextFileName);
364375
365642
  try {
364376
- if (fs75.existsSync(contextFilePath)) {
365643
+ if (fs76.existsSync(contextFilePath)) {
364377
365644
  try {
364378
- const existing = fs75.readFileSync(contextFilePath, "utf8");
365645
+ const existing = fs76.readFileSync(contextFilePath, "utf8");
364379
365646
  if (existing && existing.trim().length > 0) {
364380
365647
  if (!context2.overwriteConfirmed) {
364381
365648
  return {
@@ -364397,7 +365664,7 @@ var initCommand = {
364397
365664
  }
364398
365665
  }
364399
365666
  try {
364400
- fs75.writeFileSync(contextFilePath, "", "utf8");
365667
+ fs76.writeFileSync(contextFilePath, "", "utf8");
364401
365668
  context2.ui.addItem(
364402
365669
  {
364403
365670
  type: "info",
@@ -364460,378 +365727,6 @@ Write the complete content to the \`${contextFileName}\` file. The output must b
364460
365727
  }, "action")
364461
365728
  };
364462
365729
 
364463
- // packages/cli/src/ui/commands/languageCommand.ts
364464
- init_esbuild_shims();
364465
- import * as fs76 from "node:fs";
364466
- import * as path84 from "node:path";
364467
- var LLM_OUTPUT_LANGUAGE_RULE_FILENAME = "output-language.md";
364468
- function generateLlmOutputLanguageRule(language) {
364469
- return `# \u26A0\uFE0F CRITICAL: ${language} Output Language Rule - HIGHEST PRIORITY \u26A0\uFE0F
364470
-
364471
- ## \u{1F6A8} MANDATORY RULE - NO EXCEPTIONS \u{1F6A8}
364472
-
364473
- **YOU MUST RESPOND IN ${language.toUpperCase()} FOR EVERY SINGLE OUTPUT, REGARDLESS OF THE USER'S INPUT LANGUAGE.**
364474
-
364475
- This is a **NON-NEGOTIABLE** requirement. Even if the user writes in English, says "hi", asks a simple question, or explicitly requests another language, **YOU MUST ALWAYS RESPOND IN ${language.toUpperCase()}.**
364476
-
364477
- ## What Must Be in ${language}
364478
-
364479
- **EVERYTHING** you output: conversation replies, tool call descriptions, success/error messages, generated file content (comments, documentation), and all explanatory text.
364480
-
364481
- **Tool outputs**: All descriptive text from \`read_file\`, \`write_file\`, \`codebase_search\`, \`run_terminal_cmd\`, \`todo_write\`, \`web_search\`, etc. MUST be in ${language}.
364482
-
364483
- ## Examples
364484
-
364485
- ### \u2705 CORRECT:
364486
- - User says "hi" \u2192 Respond in ${language} (e.g., "Bonjour" if ${language} is French)
364487
- - Tool result \u2192 "\u5DF2\u6210\u529F\u8BFB\u53D6\u6587\u4EF6 config.json" (if ${language} is Chinese)
364488
- - Error \u2192 "\u65E0\u6CD5\u627E\u5230\u6307\u5B9A\u7684\u6587\u4EF6" (if ${language} is Chinese)
364489
-
364490
- ### \u274C WRONG:
364491
- - User says "hi" \u2192 "Hello" in English
364492
- - Tool result \u2192 "Successfully read file" in English
364493
- - Error \u2192 "File not found" in English
364494
-
364495
- ## Notes
364496
-
364497
- - Code elements (variable/function names, syntax) can remain in English
364498
- - Comments, documentation, and all other text MUST be in ${language}
364499
-
364500
- **THIS RULE IS ACTIVE NOW. ALL OUTPUTS MUST BE IN ${language.toUpperCase()}. NO EXCEPTIONS.**
364501
- `;
364502
- }
364503
- __name(generateLlmOutputLanguageRule, "generateLlmOutputLanguageRule");
364504
- function getLlmOutputLanguageRulePath() {
364505
- return path84.join(
364506
- Storage.getGlobalQwenDir(),
364507
- LLM_OUTPUT_LANGUAGE_RULE_FILENAME
364508
- );
364509
- }
364510
- __name(getLlmOutputLanguageRulePath, "getLlmOutputLanguageRulePath");
364511
- function getCurrentLlmOutputLanguage() {
364512
- const filePath = getLlmOutputLanguageRulePath();
364513
- if (fs76.existsSync(filePath)) {
364514
- try {
364515
- const content = fs76.readFileSync(filePath, "utf-8");
364516
- const match2 = content.match(/^#.*?(\w+)\s+Output Language Rule/i);
364517
- if (match2) {
364518
- return match2[1];
364519
- }
364520
- } catch {
364521
- }
364522
- }
364523
- return null;
364524
- }
364525
- __name(getCurrentLlmOutputLanguage, "getCurrentLlmOutputLanguage");
364526
- async function setUiLanguage(context2, lang) {
364527
- const { services } = context2;
364528
- const { settings } = services;
364529
- if (!services.config) {
364530
- return {
364531
- type: "message",
364532
- messageType: "error",
364533
- content: t4("Configuration not available.")
364534
- };
364535
- }
364536
- await setLanguageAsync(lang);
364537
- if (settings && typeof settings.setValue === "function") {
364538
- try {
364539
- settings.setValue("User" /* User */, "general.language", lang);
364540
- } catch (error2) {
364541
- console.warn("Failed to save language setting:", error2);
364542
- }
364543
- }
364544
- context2.ui.reloadCommands();
364545
- const langDisplayNames = {
364546
- zh: "\u4E2D\u6587\uFF08zh-CN\uFF09",
364547
- en: "English\uFF08en-US\uFF09",
364548
- ru: "\u0420\u0443\u0441\u0441\u043A\u0438\u0439 (ru-RU)"
364549
- };
364550
- return {
364551
- type: "message",
364552
- messageType: "info",
364553
- content: t4("UI language changed to {{lang}}", {
364554
- lang: langDisplayNames[lang] || lang
364555
- })
364556
- };
364557
- }
364558
- __name(setUiLanguage, "setUiLanguage");
364559
- function generateLlmOutputLanguageRuleFile(language) {
364560
- try {
364561
- const filePath = getLlmOutputLanguageRulePath();
364562
- const content = generateLlmOutputLanguageRule(language);
364563
- const dir = path84.dirname(filePath);
364564
- fs76.mkdirSync(dir, { recursive: true });
364565
- fs76.writeFileSync(filePath, content, "utf-8");
364566
- return Promise.resolve({
364567
- type: "message",
364568
- messageType: "info",
364569
- content: [
364570
- t4("LLM output language rule file generated at {{path}}", {
364571
- path: filePath
364572
- }),
364573
- "",
364574
- t4("Please restart the application for the changes to take effect.")
364575
- ].join("\n")
364576
- });
364577
- } catch (error2) {
364578
- return Promise.resolve({
364579
- type: "message",
364580
- messageType: "error",
364581
- content: t4(
364582
- "Failed to generate LLM output language rule file: {{error}}",
364583
- {
364584
- error: error2 instanceof Error ? error2.message : String(error2)
364585
- }
364586
- )
364587
- });
364588
- }
364589
- }
364590
- __name(generateLlmOutputLanguageRuleFile, "generateLlmOutputLanguageRuleFile");
364591
- var languageCommand = {
364592
- name: "language",
364593
- get description() {
364594
- return t4("View or change the language setting");
364595
- },
364596
- kind: "built-in" /* BUILT_IN */,
364597
- action: /* @__PURE__ */ __name(async (context2, args) => {
364598
- const { services } = context2;
364599
- if (!services.config) {
364600
- return {
364601
- type: "message",
364602
- messageType: "error",
364603
- content: t4("Configuration not available.")
364604
- };
364605
- }
364606
- const trimmedArgs = args.trim();
364607
- if (!trimmedArgs) {
364608
- const currentUiLang = getCurrentLanguage();
364609
- const currentLlmLang = getCurrentLlmOutputLanguage();
364610
- const message = [
364611
- t4("Current UI language: {{lang}}", { lang: currentUiLang }),
364612
- currentLlmLang ? t4("Current LLM output language: {{lang}}", { lang: currentLlmLang }) : t4("LLM output language not set"),
364613
- "",
364614
- t4("Available subcommands:"),
364615
- ` /language ui [zh-CN|en-US|ru-RU] - ${t4("Set UI language")}`,
364616
- ` /language output <language> - ${t4("Set LLM output language")}`
364617
- ].join("\n");
364618
- return {
364619
- type: "message",
364620
- messageType: "info",
364621
- content: message
364622
- };
364623
- }
364624
- const parts = trimmedArgs.split(/\s+/);
364625
- const subcommand = parts[0].toLowerCase();
364626
- if (subcommand === "ui") {
364627
- if (parts.length === 1) {
364628
- return {
364629
- type: "message",
364630
- messageType: "info",
364631
- content: [
364632
- t4("Set UI language"),
364633
- "",
364634
- t4("Usage: /language ui [zh-CN|en-US|ru-RU]"),
364635
- "",
364636
- t4("Available options:"),
364637
- t4(" - zh-CN: Simplified Chinese"),
364638
- t4(" - en-US: English"),
364639
- t4(" - ru-RU: Russian"),
364640
- "",
364641
- t4(
364642
- "To request additional UI language packs, please open an issue on GitHub."
364643
- )
364644
- ].join("\n")
364645
- };
364646
- }
364647
- const langArg = parts[1].toLowerCase();
364648
- let targetLang = null;
364649
- if (langArg === "en" || langArg === "english" || langArg === "en-us") {
364650
- targetLang = "en";
364651
- } else if (langArg === "zh" || langArg === "chinese" || langArg === "\u4E2D\u6587" || langArg === "zh-cn") {
364652
- targetLang = "zh";
364653
- } else if (langArg === "ru" || langArg === "ru-RU" || langArg === "russian" || langArg === "\u0440\u0443\u0441\u0441\u043A\u0438\u0439") {
364654
- targetLang = "ru";
364655
- } else {
364656
- return {
364657
- type: "message",
364658
- messageType: "error",
364659
- content: t4("Invalid language. Available: en-US, zh-CN, ru-RU")
364660
- };
364661
- }
364662
- return setUiLanguage(context2, targetLang);
364663
- } else if (subcommand === "output") {
364664
- if (parts.length === 1) {
364665
- return {
364666
- type: "message",
364667
- messageType: "info",
364668
- content: [
364669
- t4("Set LLM output language"),
364670
- "",
364671
- t4("Usage: /language output <language>"),
364672
- ` ${t4("Example: /language output \u4E2D\u6587")}`
364673
- ].join("\n")
364674
- };
364675
- }
364676
- const language = parts.slice(1).join(" ");
364677
- return generateLlmOutputLanguageRuleFile(language);
364678
- } else {
364679
- const langArg = trimmedArgs.toLowerCase();
364680
- let targetLang = null;
364681
- if (langArg === "en" || langArg === "english" || langArg === "en-us") {
364682
- targetLang = "en";
364683
- } else if (langArg === "zh" || langArg === "chinese" || langArg === "\u4E2D\u6587" || langArg === "zh-cn") {
364684
- targetLang = "zh";
364685
- } else if (langArg === "ru" || langArg === "ru-RU" || langArg === "russian" || langArg === "\u0440\u0443\u0441\u0441\u043A\u0438\u0439") {
364686
- targetLang = "ru";
364687
- } else {
364688
- return {
364689
- type: "message",
364690
- messageType: "error",
364691
- content: [
364692
- t4("Invalid command. Available subcommands:"),
364693
- " - /language ui [zh-CN|en-US|ru-RU] - " + t4("Set UI language"),
364694
- " - /language output <language> - " + t4("Set LLM output language")
364695
- ].join("\n")
364696
- };
364697
- }
364698
- return setUiLanguage(context2, targetLang);
364699
- }
364700
- }, "action"),
364701
- subCommands: [
364702
- {
364703
- name: "ui",
364704
- get description() {
364705
- return t4("Set UI language");
364706
- },
364707
- kind: "built-in" /* BUILT_IN */,
364708
- action: /* @__PURE__ */ __name(async (context2, args) => {
364709
- const trimmedArgs = args.trim();
364710
- if (!trimmedArgs) {
364711
- return {
364712
- type: "message",
364713
- messageType: "info",
364714
- content: [
364715
- t4("Set UI language"),
364716
- "",
364717
- t4("Usage: /language ui [zh-CN|en-US]"),
364718
- "",
364719
- t4("Available options:"),
364720
- t4(" - zh-CN: Simplified Chinese"),
364721
- t4(" - en-US: English"),
364722
- "",
364723
- t4(
364724
- "To request additional UI language packs, please open an issue on GitHub."
364725
- )
364726
- ].join("\n")
364727
- };
364728
- }
364729
- const langArg = trimmedArgs.toLowerCase();
364730
- let targetLang = null;
364731
- if (langArg === "en" || langArg === "english" || langArg === "en-us") {
364732
- targetLang = "en";
364733
- } else if (langArg === "zh" || langArg === "chinese" || langArg === "\u4E2D\u6587" || langArg === "zh-cn") {
364734
- targetLang = "zh";
364735
- } else {
364736
- return {
364737
- type: "message",
364738
- messageType: "error",
364739
- content: t4("Invalid language. Available: en-US, zh-CN")
364740
- };
364741
- }
364742
- return setUiLanguage(context2, targetLang);
364743
- }, "action"),
364744
- subCommands: [
364745
- {
364746
- name: "zh-CN",
364747
- altNames: ["zh", "chinese", "\u4E2D\u6587"],
364748
- get description() {
364749
- return t4("Set UI language to Simplified Chinese (zh-CN)");
364750
- },
364751
- kind: "built-in" /* BUILT_IN */,
364752
- action: /* @__PURE__ */ __name(async (context2, args) => {
364753
- if (args.trim().length > 0) {
364754
- return {
364755
- type: "message",
364756
- messageType: "error",
364757
- content: t4(
364758
- "Language subcommands do not accept additional arguments."
364759
- )
364760
- };
364761
- }
364762
- return setUiLanguage(context2, "zh");
364763
- }, "action")
364764
- },
364765
- {
364766
- name: "en-US",
364767
- altNames: ["en", "english"],
364768
- get description() {
364769
- return t4("Set UI language to English (en-US)");
364770
- },
364771
- kind: "built-in" /* BUILT_IN */,
364772
- action: /* @__PURE__ */ __name(async (context2, args) => {
364773
- if (args.trim().length > 0) {
364774
- return {
364775
- type: "message",
364776
- messageType: "error",
364777
- content: t4(
364778
- "Language subcommands do not accept additional arguments."
364779
- )
364780
- };
364781
- }
364782
- return setUiLanguage(context2, "en");
364783
- }, "action")
364784
- },
364785
- {
364786
- name: "ru-RU",
364787
- altNames: ["ru", "russian", "\u0440\u0443\u0441\u0441\u043A\u0438\u0439"],
364788
- get description() {
364789
- return t4("Set UI language to Russian (ru-RU)");
364790
- },
364791
- kind: "built-in" /* BUILT_IN */,
364792
- action: /* @__PURE__ */ __name(async (context2, args) => {
364793
- if (args.trim().length > 0) {
364794
- return {
364795
- type: "message",
364796
- messageType: "error",
364797
- content: t4(
364798
- "Language subcommands do not accept additional arguments."
364799
- )
364800
- };
364801
- }
364802
- return setUiLanguage(context2, "ru");
364803
- }, "action")
364804
- }
364805
- ]
364806
- },
364807
- {
364808
- name: "output",
364809
- get description() {
364810
- return t4("Set LLM output language");
364811
- },
364812
- kind: "built-in" /* BUILT_IN */,
364813
- action: /* @__PURE__ */ __name(async (context2, args) => {
364814
- const trimmedArgs = args.trim();
364815
- if (!trimmedArgs) {
364816
- return {
364817
- type: "message",
364818
- messageType: "info",
364819
- content: [
364820
- t4("Set LLM output language"),
364821
- "",
364822
- t4("Usage: /language output <language>"),
364823
- ` ${t4("Example: /language output \u4E2D\u6587")}`,
364824
- ` ${t4("Example: /language output English")}`,
364825
- ` ${t4("Example: /language output \u65E5\u672C\u8A9E")}`
364826
- ].join("\n")
364827
- };
364828
- }
364829
- return generateLlmOutputLanguageRuleFile(trimmedArgs);
364830
- }, "action")
364831
- }
364832
- ]
364833
- };
364834
-
364835
365730
  // packages/cli/src/ui/commands/mcpCommand.ts
364836
365731
  init_esbuild_shims();
364837
365732
  var authCommand2 = {
@@ -368283,7 +369178,14 @@ ${event.value}`, null);
368283
369178
  */
368284
369179
  appendThinking(state, subject, description, parentToolUseId) {
368285
369180
  const actualParentToolUseId = parentToolUseId ?? null;
368286
- const fragment = [subject?.trim(), description?.trim()].filter((value) => value && value.length > 0).join(": ");
369181
+ const parts = [];
369182
+ if (subject && subject.length > 0) {
369183
+ parts.push(subject);
369184
+ }
369185
+ if (description && description.length > 0) {
369186
+ parts.push(description);
369187
+ }
369188
+ const fragment = parts.join(": ");
368287
369189
  if (!fragment) {
368288
369190
  return;
368289
369191
  }
@@ -369384,6 +370286,7 @@ async function runNonInteractive(config2, settings, input, prompt_id, options2 =
369384
370286
  );
369385
370287
  process.stderr.write(`${errorText}
369386
370288
  `);
370289
+ throw new Error(errorText);
369387
370290
  }
369388
370291
  }
369389
370292
  }
@@ -369404,15 +370307,23 @@ async function runNonInteractive(config2, settings, input, prompt_id, options2 =
369404
370307
  adapter
369405
370308
  ) : void 0;
369406
370309
  const taskToolProgressHandler = taskToolProgress?.handler;
370310
+ const nonTaskOutputHandler = !isTaskTool && !adapter ? (callId, outputChunk) => {
370311
+ if (typeof outputChunk === "string") {
370312
+ process.stdout.write(outputChunk);
370313
+ } else if (outputChunk && typeof outputChunk === "object" && "ansiOutput" in outputChunk) {
370314
+ process.stdout.write(String(outputChunk.ansiOutput));
370315
+ }
370316
+ } : void 0;
370317
+ const outputUpdateHandler = taskToolProgressHandler || nonTaskOutputHandler;
369407
370318
  const toolResponse = await executeToolCall(
369408
370319
  config2,
369409
370320
  finalRequestInfo,
369410
370321
  abortController.signal,
369411
- isTaskTool && taskToolProgressHandler ? {
369412
- outputUpdateHandler: taskToolProgressHandler,
369413
- onToolCallsUpdate: toolCallUpdateCallback
369414
- } : toolCallUpdateCallback ? {
369415
- onToolCallsUpdate: toolCallUpdateCallback
370322
+ outputUpdateHandler || toolCallUpdateCallback ? {
370323
+ ...outputUpdateHandler && { outputUpdateHandler },
370324
+ ...toolCallUpdateCallback && {
370325
+ onToolCallsUpdate: toolCallUpdateCallback
370326
+ }
369416
370327
  } : void 0
369417
370328
  );
369418
370329
  if (toolResponse.error) {
@@ -388652,7 +389563,7 @@ var import_chalk5 = __toESM(require_source(), 1);
388652
389563
  // packages/cli/src/ui/components/shared/text-buffer.ts
388653
389564
  init_esbuild_shims();
388654
389565
  var import_react46 = __toESM(require_react(), 1);
388655
- import { spawnSync as spawnSync3 } from "node:child_process";
389566
+ import { spawnSync as spawnSync4 } from "node:child_process";
388656
389567
  import fs83 from "node:fs";
388657
389568
  import os32 from "node:os";
388658
389569
  import pathMod from "node:path";
@@ -390493,7 +391404,7 @@ function useTextBuffer({
390493
391404
  const wasRaw = stdin?.isRaw ?? false;
390494
391405
  try {
390495
391406
  setRawMode?.(false);
390496
- const { status, error: error2 } = spawnSync3(editor, [filePath], {
391407
+ const { status, error: error2 } = spawnSync4(editor, [filePath], {
390497
391408
  stdio: "inherit"
390498
391409
  });
390499
391410
  if (error2) throw error2;
@@ -391196,7 +392107,7 @@ var import_react52 = __toESM(require_react(), 1);
391196
392107
  // packages/cli/src/ui/hooks/useLaunchEditor.ts
391197
392108
  init_esbuild_shims();
391198
392109
  var import_react51 = __toESM(require_react(), 1);
391199
- import { spawnSync as spawnSync4 } from "child_process";
392110
+ import { spawnSync as spawnSync5 } from "child_process";
391200
392111
  function getEditorCommand(preferredEditor) {
391201
392112
  if (preferredEditor) {
391202
392113
  return preferredEditor;
@@ -391231,7 +392142,7 @@ function useLaunchEditor() {
391231
392142
  const wasRaw = stdin?.isRaw ?? false;
391232
392143
  try {
391233
392144
  setRawMode?.(false);
391234
- const { status, error: error2 } = spawnSync4(editorCommand2, editorArgs, {
392145
+ const { status, error: error2 } = spawnSync5(editorCommand2, editorArgs, {
391235
392146
  stdio: "inherit"
391236
392147
  });
391237
392148
  if (error2) throw error2;
@@ -406201,143 +407112,16 @@ var useTimer = /* @__PURE__ */ __name((isActive, resetKey) => {
406201
407112
  // packages/cli/src/ui/hooks/usePhraseCycler.ts
406202
407113
  init_esbuild_shims();
406203
407114
  var import_react119 = __toESM(require_react(), 1);
406204
- var WITTY_LOADING_PHRASES = [
406205
- "I'm Feeling Lucky",
406206
- "Shipping awesomeness... ",
406207
- "Painting the serifs back on...",
406208
- "Navigating the slime mold...",
406209
- "Consulting the digital spirits...",
406210
- "Reticulating splines...",
406211
- "Warming up the AI hamsters...",
406212
- "Asking the magic conch shell...",
406213
- "Generating witty retort...",
406214
- "Polishing the algorithms...",
406215
- "Don't rush perfection (or my code)...",
406216
- "Brewing fresh bytes...",
406217
- "Counting electrons...",
406218
- "Engaging cognitive processors...",
406219
- "Checking for syntax errors in the universe...",
406220
- "One moment, optimizing humor...",
406221
- "Shuffling punchlines...",
406222
- "Untangling neural nets...",
406223
- "Compiling brilliance...",
406224
- "Loading wit.exe...",
406225
- "Summoning the cloud of wisdom...",
406226
- "Preparing a witty response...",
406227
- "Just a sec, I'm debugging reality...",
406228
- "Confuzzling the options...",
406229
- "Tuning the cosmic frequencies...",
406230
- "Crafting a response worthy of your patience...",
406231
- "Compiling the 1s and 0s...",
406232
- "Resolving dependencies... and existential crises...",
406233
- "Defragmenting memories... both RAM and personal...",
406234
- "Rebooting the humor module...",
406235
- "Caching the essentials (mostly cat memes)...",
406236
- "Optimizing for ludicrous speed",
406237
- "Swapping bits... don't tell the bytes...",
406238
- "Garbage collecting... be right back...",
406239
- "Assembling the interwebs...",
406240
- "Converting coffee into code...",
406241
- "Updating the syntax for reality...",
406242
- "Rewiring the synapses...",
406243
- "Looking for a misplaced semicolon...",
406244
- "Greasin' the cogs of the machine...",
406245
- "Pre-heating the servers...",
406246
- "Calibrating the flux capacitor...",
406247
- "Engaging the improbability drive...",
406248
- "Channeling the Force...",
406249
- "Aligning the stars for optimal response...",
406250
- "So say we all...",
406251
- "Loading the next great idea...",
406252
- "Just a moment, I'm in the zone...",
406253
- "Preparing to dazzle you with brilliance...",
406254
- "Just a tick, I'm polishing my wit...",
406255
- "Hold tight, I'm crafting a masterpiece...",
406256
- "Just a jiffy, I'm debugging the universe...",
406257
- "Just a moment, I'm aligning the pixels...",
406258
- "Just a sec, I'm optimizing the humor...",
406259
- "Just a moment, I'm tuning the algorithms...",
406260
- "Warp speed engaged...",
406261
- "Mining for more Dilithium crystals...",
406262
- "Don't panic...",
406263
- "Following the white rabbit...",
406264
- "The truth is in here... somewhere...",
406265
- "Blowing on the cartridge...",
406266
- "Loading... Do a barrel roll!",
406267
- "Waiting for the respawn...",
406268
- "Finishing the Kessel Run in less than 12 parsecs...",
406269
- "The cake is not a lie, it's just still loading...",
406270
- "Fiddling with the character creation screen...",
406271
- "Just a moment, I'm finding the right meme...",
406272
- "Pressing 'A' to continue...",
406273
- "Herding digital cats...",
406274
- "Polishing the pixels...",
406275
- "Finding a suitable loading screen pun...",
406276
- "Distracting you with this witty phrase...",
406277
- "Almost there... probably...",
406278
- "Our hamsters are working as fast as they can...",
406279
- "Giving Cloudy a pat on the head...",
406280
- "Petting the cat...",
406281
- "Rickrolling my boss...",
406282
- "Never gonna give you up, never gonna let you down...",
406283
- "Slapping the bass...",
406284
- "Tasting the snozberries...",
406285
- "I'm going the distance, I'm going for speed...",
406286
- "Is this the real life? Is this just fantasy?...",
406287
- "I've got a good feeling about this...",
406288
- "Poking the bear...",
406289
- "Doing research on the latest memes...",
406290
- "Figuring out how to make this more witty...",
406291
- "Hmmm... let me think...",
406292
- "What do you call a fish with no eyes? A fsh...",
406293
- "Why did the computer go to therapy? It had too many bytes...",
406294
- "Why don't programmers like nature? It has too many bugs...",
406295
- "Why do programmers prefer dark mode? Because light attracts bugs...",
406296
- "Why did the developer go broke? Because they used up all their cache...",
406297
- "What can you do with a broken pencil? Nothing, it's pointless...",
406298
- "Applying percussive maintenance...",
406299
- "Searching for the correct USB orientation...",
406300
- "Ensuring the magic smoke stays inside the wires...",
406301
- "Rewriting in Rust for no particular reason...",
406302
- "Trying to exit Vim...",
406303
- "Spinning up the hamster wheel...",
406304
- "That's not a bug, it's an undocumented feature...",
406305
- "Engage.",
406306
- "I'll be back... with an answer.",
406307
- "My other process is a TARDIS...",
406308
- "Communing with the machine spirit...",
406309
- "Letting the thoughts marinate...",
406310
- "Just remembered where I put my keys...",
406311
- "Pondering the orb...",
406312
- "I've seen things you people wouldn't believe... like a user who reads loading messages.",
406313
- "Initiating thoughtful gaze...",
406314
- "What's a computer's favorite snack? Microchips.",
406315
- "Why do Java developers wear glasses? Because they don't C#.",
406316
- "Charging the laser... pew pew!",
406317
- "Dividing by zero... just kidding!",
406318
- "Looking for an adult superviso... I mean, processing.",
406319
- "Making it go beep boop.",
406320
- "Buffering... because even AIs need a moment.",
406321
- "Entangling quantum particles for a faster response...",
406322
- "Polishing the chrome... on the algorithms.",
406323
- "Are you not entertained? (Working on it!)",
406324
- "Summoning the code gremlins... to help, of course.",
406325
- "Just waiting for the dial-up tone to finish...",
406326
- "Recalibrating the humor-o-meter.",
406327
- "My other loading screen is even funnier.",
406328
- "Pretty sure there's a cat walking on the keyboard somewhere...",
406329
- "Enhancing... Enhancing... Still loading.",
406330
- "It's not a bug, it's a feature... of this loading screen.",
406331
- "Have you tried turning it off and on again? (The loading screen, not me.)",
406332
- "Constructing additional pylons...",
406333
- "New line? That\u2019s Ctrl+J."
406334
- ];
407115
+ var WITTY_LOADING_PHRASES = ["I'm Feeling Lucky"];
406335
407116
  var PHRASE_CHANGE_INTERVAL_MS = 15e3;
406336
407117
  var usePhraseCycler = /* @__PURE__ */ __name((isActive, isWaiting, customPhrases) => {
406337
- const loadingPhrases = (0, import_react119.useMemo)(
406338
- () => customPhrases && customPhrases.length > 0 ? customPhrases : WITTY_LOADING_PHRASES.map((phrase) => t4(phrase)),
406339
- [customPhrases]
406340
- );
407118
+ const loadingPhrases = (0, import_react119.useMemo)(() => {
407119
+ if (customPhrases && customPhrases.length > 0) {
407120
+ return customPhrases;
407121
+ }
407122
+ const translatedPhrases = ta("WITTY_LOADING_PHRASES");
407123
+ return translatedPhrases.length > 0 ? translatedPhrases : WITTY_LOADING_PHRASES;
407124
+ }, [customPhrases]);
406341
407125
  const [currentLoadingPhrase, setCurrentLoadingPhrase] = (0, import_react119.useState)(
406342
407126
  loadingPhrases[0]
406343
407127
  );
@@ -412258,19 +413042,26 @@ async function showResumeSessionPicker(cwd7 = process.cwd()) {
412258
413042
  return new Promise((resolve25) => {
412259
413043
  let selectedId;
412260
413044
  const { unmount, waitUntilExit } = render_default(
412261
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(KeypressProvider, { kittyProtocolEnabled: false, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
412262
- StandalonePickerScreen,
413045
+ /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
413046
+ KeypressProvider,
412263
413047
  {
412264
- sessionService,
412265
- onSelect: (id) => {
412266
- selectedId = id;
412267
- },
412268
- onCancel: () => {
412269
- selectedId = void 0;
412270
- },
412271
- currentBranch: getGitBranch(cwd7)
413048
+ kittyProtocolEnabled: false,
413049
+ pasteWorkaround: process.platform === "win32" || parseInt(process.versions.node.split(".")[0], 10) < 20,
413050
+ children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
413051
+ StandalonePickerScreen,
413052
+ {
413053
+ sessionService,
413054
+ onSelect: (id) => {
413055
+ selectedId = id;
413056
+ },
413057
+ onCancel: () => {
413058
+ selectedId = void 0;
413059
+ },
413060
+ currentBranch: getGitBranch(cwd7)
413061
+ }
413062
+ )
412272
413063
  }
412273
- ) }),
413064
+ ),
412274
413065
  {
412275
413066
  exitOnCtrlC: false
412276
413067
  }
@@ -414600,7 +415391,7 @@ var GeminiAgent = class {
414600
415391
  name: APPROVAL_MODE_INFO[mode].name,
414601
415392
  description: APPROVAL_MODE_INFO[mode].description
414602
415393
  }));
414603
- const version2 = "0.6.0";
415394
+ const version2 = "0.6.1-nightly.20260107.2c285394";
414604
415395
  return {
414605
415396
  protocolVersion: PROTOCOL_VERSION,
414606
415397
  agentInfo: {
@@ -414915,13 +415706,15 @@ async function startInteractiveUI(config2, settings, startupWarnings, workspaceR
414915
415706
  isScreenReaderEnabled: config2.getScreenReader()
414916
415707
  }
414917
415708
  );
414918
- checkForUpdates().then((info) => {
414919
- handleAutoUpdate(info, settings, config2.getProjectRoot());
414920
- }).catch((err) => {
414921
- if (config2.getDebugMode()) {
414922
- console.error("Update check failed:", err);
414923
- }
414924
- });
415709
+ if (!settings.merged.general?.disableUpdateNag) {
415710
+ checkForUpdates().then((info) => {
415711
+ handleAutoUpdate(info, settings, config2.getProjectRoot());
415712
+ }).catch((err) => {
415713
+ if (config2.getDebugMode()) {
415714
+ console.error("Update check failed:", err);
415715
+ }
415716
+ });
415717
+ }
414925
415718
  registerCleanup(() => instance.unmount());
414926
415719
  }
414927
415720
  __name(startInteractiveUI, "startInteractiveUI");
@@ -415176,6 +415969,16 @@ main().catch((error2) => {
415176
415969
  * Copyright 2025 Qwen Team
415177
415970
  * SPDX-License-Identifier: Apache-2.0
415178
415971
  */
415972
+ /**
415973
+ * @license
415974
+ * Copyright 2026 Google LLC
415975
+ * SPDX-License-Identifier: Apache-2.0
415976
+ */
415977
+ /**
415978
+ * @license
415979
+ * Copyright 2025 Qwen team
415980
+ * SPDX-License-Identifier: Apache-2.0
415981
+ */
415179
415982
  /*! Bundled license information:
415180
415983
 
415181
415984
  undici/lib/web/fetch/body.js: