@rdmind/rdmind 0.1.3-alpha.3 → 0.1.3-alpha.5

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
@@ -160739,7 +160739,7 @@ function createContentGeneratorConfig(config2, authType, generationConfig) {
160739
160739
  };
160740
160740
  }
160741
160741
  async function createContentGenerator(config2, gcConfig, isInitialAuth) {
160742
- const version3 = "0.1.3-alpha.3";
160742
+ const version3 = "0.1.3-alpha.5";
160743
160743
  const userAgent2 = `QwenCode/${version3} (${process.platform}; ${process.arch})`;
160744
160744
  const baseHeaders = {
160745
160745
  "User-Agent": userAgent2
@@ -235698,8 +235698,8 @@ var init_git_commit = __esm({
235698
235698
  "packages/core/src/generated/git-commit.ts"() {
235699
235699
  "use strict";
235700
235700
  init_esbuild_shims();
235701
- GIT_COMMIT_INFO = "398f69c0";
235702
- CLI_VERSION = "0.1.3-alpha.3";
235701
+ GIT_COMMIT_INFO = "5e9005a1";
235702
+ CLI_VERSION = "0.1.3-alpha.5";
235703
235703
  }
235704
235704
  });
235705
235705
 
@@ -260022,7 +260022,7 @@ var require_backend = __commonJS({
260022
260022
  return function() {
260023
260023
  };
260024
260024
  }, "useCacheRefresh"),
260025
- useCallback: /* @__PURE__ */ __name(function useCallback53(a) {
260025
+ useCallback: /* @__PURE__ */ __name(function useCallback52(a) {
260026
260026
  var b = C();
260027
260027
  x2.push({
260028
260028
  primitive: "Callback",
@@ -260116,7 +260116,7 @@ var require_backend = __commonJS({
260116
260116
  });
260117
260117
  return a;
260118
260118
  }, "useRef"),
260119
- useState: /* @__PURE__ */ __name(function useState67(a) {
260119
+ useState: /* @__PURE__ */ __name(function useState66(a) {
260120
260120
  var b = C();
260121
260121
  a = null !== b ? b.memoizedState : "function" === typeof a ? a() : a;
260122
260122
  x2.push({
@@ -306707,7 +306707,6 @@ var init_en3 = __esm({
306707
306707
  "open full RDMind documentation in your browser": "open full RDMind documentation in your browser",
306708
306708
  "Configuration not available.": "Configuration not available.",
306709
306709
  "change the auth method": "change the auth method",
306710
- "Show quit confirmation dialog": "Show quit confirmation dialog",
306711
306710
  "Copy the last result or code snippet to clipboard": "Copy the last result or code snippet to clipboard",
306712
306711
  // ============================================================================
306713
306712
  // Commands - Agents
@@ -307131,14 +307130,6 @@ var init_en3 = __esm({
307131
307130
  "Shell Command Execution": "Shell Command Execution",
307132
307131
  "A custom command wants to run the following shell commands:": "A custom command wants to run the following shell commands:",
307133
307132
  // ============================================================================
307134
- // Dialogs - Quit Confirmation
307135
- // ============================================================================
307136
- "What would you like to do before exiting?": "What would you like to do before exiting?",
307137
- "Quit immediately (/quit)": "Quit immediately (/quit)",
307138
- "Generate summary and quit (/summary)": "Generate summary and quit (/summary)",
307139
- "Save conversation and quit (/chat save)": "Save conversation and quit (/chat save)",
307140
- "Cancel (stay in application)": "Cancel (stay in application)",
307141
- // ============================================================================
307142
307133
  // Dialogs - Pro Quota
307143
307134
  // ============================================================================
307144
307135
  "Pro quota limit reached for {{model}}.": "Pro quota limit reached for {{model}}.",
@@ -307566,7 +307557,6 @@ var init_zh = __esm({
307566
307557
  "open full RDMind documentation in your browser": "\u5728\u6D4F\u89C8\u5668\u4E2D\u6253\u5F00\u5B8C\u6574\u7684 RDMind \u6587\u6863",
307567
307558
  "Configuration not available.": "\u914D\u7F6E\u4E0D\u53EF\u7528",
307568
307559
  "change the auth method": "\u66F4\u6539\u8BA4\u8BC1\u65B9\u6CD5",
307569
- "Show quit confirmation dialog": "\u663E\u793A\u9000\u51FA\u786E\u8BA4\u5BF9\u8BDD\u6846",
307570
307560
  "Copy the last result or code snippet to clipboard": "\u5C06\u6700\u540E\u7684\u7ED3\u679C\u6216\u4EE3\u7801\u7247\u6BB5\u590D\u5236\u5230\u526A\u8D34\u677F",
307571
307561
  // ============================================================================
307572
307562
  // Commands - Agents
@@ -307990,14 +307980,6 @@ var init_zh = __esm({
307990
307980
  "Shell Command Execution": "Shell \u547D\u4EE4\u6267\u884C",
307991
307981
  "A custom command wants to run the following shell commands:": "\u81EA\u5B9A\u4E49\u547D\u4EE4\u60F3\u8981\u8FD0\u884C\u4EE5\u4E0B shell \u547D\u4EE4\uFF1A",
307992
307982
  // ============================================================================
307993
- // Dialogs - Quit Confirmation
307994
- // ============================================================================
307995
- "What would you like to do before exiting?": "\u9000\u51FA\u524D\u60A8\u60F3\u8981\u505A\u4EC0\u4E48\uFF1F",
307996
- "Quit immediately (/quit)": "\u7ACB\u5373\u9000\u51FA (/quit)",
307997
- "Generate summary and quit (/summary)": "\u751F\u6210\u6458\u8981\u5E76\u9000\u51FA (/summary)",
307998
- "Save conversation and quit (/chat save)": "\u4FDD\u5B58\u5BF9\u8BDD\u5E76\u9000\u51FA (/chat save)",
307999
- "Cancel (stay in application)": "\u53D6\u6D88\uFF08\u7559\u5728\u5E94\u7528\u7A0B\u5E8F\u4E2D\uFF09",
308000
- // ============================================================================
308001
307983
  // Dialogs - Pro Quota
308002
307984
  // ============================================================================
308003
307985
  "Pro quota limit reached for {{model}}.": "{{model}} \u7684 Pro \u914D\u989D\u5DF2\u8FBE\u5230\u4E0A\u9650",
@@ -340230,7 +340212,7 @@ var measureElement = /* @__PURE__ */ __name((node) => ({
340230
340212
  var measure_element_default = measureElement;
340231
340213
 
340232
340214
  // packages/cli/src/gemini.tsx
340233
- var import_react137 = __toESM(require_react(), 1);
340215
+ var import_react136 = __toESM(require_react(), 1);
340234
340216
  import dns from "node:dns";
340235
340217
  import os48 from "node:os";
340236
340218
  import { basename as basename19 } from "node:path";
@@ -346185,7 +346167,7 @@ __name(getPackageJson, "getPackageJson");
346185
346167
  // packages/cli/src/utils/version.ts
346186
346168
  async function getCliVersion() {
346187
346169
  const pkgJson = await getPackageJson();
346188
- return "0.1.3-alpha.3";
346170
+ return "0.1.3-alpha.5";
346189
346171
  }
346190
346172
  __name(getCliVersion, "getCliVersion");
346191
346173
 
@@ -352552,7 +352534,7 @@ var formatDuration = /* @__PURE__ */ __name((milliseconds) => {
352552
352534
 
352553
352535
  // packages/cli/src/generated/git-commit.ts
352554
352536
  init_esbuild_shims();
352555
- var GIT_COMMIT_INFO2 = "398f69c0";
352537
+ var GIT_COMMIT_INFO2 = "5e9005a1";
352556
352538
 
352557
352539
  // packages/cli/src/utils/systemInfo.ts
352558
352540
  async function getNpmVersion() {
@@ -356431,33 +356413,6 @@ var modelCommand = {
356431
356413
 
356432
356414
  // packages/cli/src/ui/commands/quitCommand.ts
356433
356415
  init_esbuild_shims();
356434
- var quitConfirmCommand = {
356435
- name: "quit-confirm",
356436
- get description() {
356437
- return t3("Show quit confirmation dialog");
356438
- },
356439
- kind: "built-in" /* BUILT_IN */,
356440
- action: /* @__PURE__ */ __name((context2) => {
356441
- const now = Date.now();
356442
- const { sessionStartTime } = context2.session.stats;
356443
- const wallDuration = now - sessionStartTime.getTime();
356444
- return {
356445
- type: "quit_confirmation",
356446
- messages: [
356447
- {
356448
- type: "user",
356449
- text: `/quit-confirm`,
356450
- id: now - 1
356451
- },
356452
- {
356453
- type: "quit_confirmation",
356454
- duration: formatDuration(wallDuration),
356455
- id: now
356456
- }
356457
- ]
356458
- };
356459
- }, "action")
356460
- };
356461
356416
  var quitCommand = {
356462
356417
  name: "quit",
356463
356418
  altNames: ["exit"],
@@ -359091,7 +359046,6 @@ var BuiltinCommandLoader = class {
359091
359046
  memoryCommand,
359092
359047
  modelCommand,
359093
359048
  quitCommand,
359094
- quitConfirmCommand,
359095
359049
  restoreCommand(this.config),
359096
359050
  statsCommand,
359097
359051
  summaryCommand,
@@ -363482,7 +363436,7 @@ __name(runNonInteractiveStreamJson, "runNonInteractiveStreamJson");
363482
363436
 
363483
363437
  // packages/cli/src/ui/AppContainer.tsx
363484
363438
  init_esbuild_shims();
363485
- var import_react134 = __toESM(require_react(), 1);
363439
+ var import_react133 = __toESM(require_react(), 1);
363486
363440
 
363487
363441
  // packages/cli/src/ui/App.tsx
363488
363442
  init_esbuild_shims();
@@ -387068,7 +387022,6 @@ var HistoryItemDisplayComponent = /* @__PURE__ */ __name(({
387068
387022
  itemForDisplay.type === "model_stats" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(ModelStatsDisplay, {}),
387069
387023
  itemForDisplay.type === "tool_stats" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(ToolStatsDisplay, {}),
387070
387024
  itemForDisplay.type === "quit" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SessionSummaryDisplay, { duration: itemForDisplay.duration }),
387071
- itemForDisplay.type === "quit_confirmation" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SessionSummaryDisplay, { duration: itemForDisplay.duration }),
387072
387025
  itemForDisplay.type === "tool_group" && /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
387073
387026
  ToolGroupMessage,
387074
387027
  {
@@ -390843,56 +390796,8 @@ function WelcomeBackDialog({
390843
390796
  }
390844
390797
  __name(WelcomeBackDialog, "WelcomeBackDialog");
390845
390798
 
390846
- // packages/cli/src/ui/components/QuitConfirmationDialog.tsx
390847
- init_esbuild_shims();
390848
- var import_jsx_runtime85 = __toESM(require_jsx_runtime(), 1);
390849
- var QuitConfirmationDialog = /* @__PURE__ */ __name(({
390850
- onSelect
390851
- }) => {
390852
- useKeypress(
390853
- (key) => {
390854
- if (key.name === "escape") {
390855
- onSelect("cancel" /* CANCEL */);
390856
- }
390857
- },
390858
- { isActive: true }
390859
- );
390860
- const options2 = [
390861
- {
390862
- key: "quit",
390863
- label: t3("Quit immediately (/quit)"),
390864
- value: "quit" /* QUIT */
390865
- },
390866
- {
390867
- key: "summary-and-quit",
390868
- label: t3("Generate summary and quit (/summary)"),
390869
- value: "summary_and_quit" /* SUMMARY_AND_QUIT */
390870
- },
390871
- {
390872
- key: "cancel",
390873
- label: t3("Cancel (stay in application)"),
390874
- value: "cancel" /* CANCEL */
390875
- }
390876
- ];
390877
- return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(
390878
- Box_default,
390879
- {
390880
- flexDirection: "column",
390881
- borderStyle: "round",
390882
- borderColor: Colors.AccentYellow,
390883
- padding: 1,
390884
- width: "100%",
390885
- marginLeft: 1,
390886
- children: [
390887
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Text3, { children: t3("What would you like to do before exiting?") }) }),
390888
- /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(RadioButtonSelect, { items: options2, onSelect, isFocused: true })
390889
- ]
390890
- }
390891
- );
390892
- }, "QuitConfirmationDialog");
390893
-
390894
390799
  // packages/cli/src/ui/components/DialogManager.tsx
390895
- var import_jsx_runtime86 = __toESM(require_jsx_runtime(), 1);
390800
+ var import_jsx_runtime85 = __toESM(require_jsx_runtime(), 1);
390896
390801
  var DialogManager = /* @__PURE__ */ __name(({
390897
390802
  addItem,
390898
390803
  terminalWidth
@@ -390912,7 +390817,7 @@ var DialogManager = /* @__PURE__ */ __name(({
390912
390817
  };
390913
390818
  }, "getDefaultOpenAIConfig");
390914
390819
  if (uiState.showWelcomeBackDialog && uiState.welcomeBackInfo?.hasHistory) {
390915
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390820
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
390916
390821
  WelcomeBackDialog,
390917
390822
  {
390918
390823
  welcomeBackInfo: uiState.welcomeBackInfo,
@@ -390922,10 +390827,10 @@ var DialogManager = /* @__PURE__ */ __name(({
390922
390827
  );
390923
390828
  }
390924
390829
  if (uiState.showIdeRestartPrompt) {
390925
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(IdeTrustChangeDialog, { reason: uiState.ideTrustRestartReason });
390830
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(IdeTrustChangeDialog, { reason: uiState.ideTrustRestartReason });
390926
390831
  }
390927
390832
  if (uiState.showWorkspaceMigrationDialog) {
390928
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390833
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
390929
390834
  WorkspaceMigrationDialog,
390930
390835
  {
390931
390836
  workspaceExtensions: uiState.workspaceExtensions,
@@ -390935,7 +390840,7 @@ var DialogManager = /* @__PURE__ */ __name(({
390935
390840
  );
390936
390841
  }
390937
390842
  if (uiState.proQuotaRequest) {
390938
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390843
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
390939
390844
  ProQuotaDialog,
390940
390845
  {
390941
390846
  failedModel: uiState.proQuotaRequest.failedModel,
@@ -390945,7 +390850,7 @@ var DialogManager = /* @__PURE__ */ __name(({
390945
390850
  );
390946
390851
  }
390947
390852
  if (uiState.shouldShowIdePrompt) {
390948
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390853
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
390949
390854
  IdeIntegrationNudge,
390950
390855
  {
390951
390856
  ide: uiState.currentIDE,
@@ -390954,7 +390859,7 @@ var DialogManager = /* @__PURE__ */ __name(({
390954
390859
  );
390955
390860
  }
390956
390861
  if (uiState.isFolderTrustDialogOpen) {
390957
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390862
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
390958
390863
  FolderTrustDialog,
390959
390864
  {
390960
390865
  onSelect: uiActions.handleFolderTrustSelect,
@@ -390963,37 +390868,18 @@ var DialogManager = /* @__PURE__ */ __name(({
390963
390868
  );
390964
390869
  }
390965
390870
  if (uiState.shellConfirmationRequest) {
390966
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(ShellConfirmationDialog, { request: uiState.shellConfirmationRequest });
390871
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ShellConfirmationDialog, { request: uiState.shellConfirmationRequest });
390967
390872
  }
390968
390873
  if (uiState.loopDetectionConfirmationRequest) {
390969
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390874
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
390970
390875
  LoopDetectionConfirmation,
390971
390876
  {
390972
390877
  onComplete: uiState.loopDetectionConfirmationRequest.onComplete
390973
390878
  }
390974
390879
  );
390975
390880
  }
390976
- if (uiState.quitConfirmationRequest) {
390977
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390978
- QuitConfirmationDialog,
390979
- {
390980
- onSelect: (choice2) => {
390981
- if (choice2 === "cancel" /* CANCEL */) {
390982
- uiState.quitConfirmationRequest?.onConfirm(false, "cancel");
390983
- } else if (choice2 === "quit" /* QUIT */) {
390984
- uiState.quitConfirmationRequest?.onConfirm(true, "quit");
390985
- } else if (choice2 === "summary_and_quit" /* SUMMARY_AND_QUIT */) {
390986
- uiState.quitConfirmationRequest?.onConfirm(
390987
- true,
390988
- "summary_and_quit"
390989
- );
390990
- }
390991
- }
390992
- }
390993
- );
390994
- }
390995
390881
  if (uiState.confirmationRequest) {
390996
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390882
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
390997
390883
  ConsentPrompt,
390998
390884
  {
390999
390885
  prompt: uiState.confirmationRequest.prompt,
@@ -391004,7 +390890,7 @@ var DialogManager = /* @__PURE__ */ __name(({
391004
390890
  }
391005
390891
  if (uiState.confirmUpdateExtensionRequests.length > 0) {
391006
390892
  const request4 = uiState.confirmUpdateExtensionRequests[0];
391007
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390893
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391008
390894
  ConsentPrompt,
391009
390895
  {
391010
390896
  prompt: request4.prompt,
@@ -391014,9 +390900,9 @@ var DialogManager = /* @__PURE__ */ __name(({
391014
390900
  );
391015
390901
  }
391016
390902
  if (uiState.isThemeDialogOpen) {
391017
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Box_default, { flexDirection: "column", children: [
391018
- uiState.themeError && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Text3, { color: theme.status.error, children: uiState.themeError }) }),
391019
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390903
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(Box_default, { flexDirection: "column", children: [
390904
+ uiState.themeError && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Text3, { color: theme.status.error, children: uiState.themeError }) }),
390905
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391020
390906
  ThemeDialog,
391021
390907
  {
391022
390908
  onSelect: uiActions.handleThemeSelect,
@@ -391029,7 +390915,7 @@ var DialogManager = /* @__PURE__ */ __name(({
391029
390915
  ] });
391030
390916
  }
391031
390917
  if (uiState.isSettingsDialogOpen) {
391032
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390918
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391033
390919
  SettingsDialog,
391034
390920
  {
391035
390921
  settings,
@@ -391042,7 +390928,7 @@ var DialogManager = /* @__PURE__ */ __name(({
391042
390928
  }
391043
390929
  if (uiState.isApprovalModeDialogOpen) {
391044
390930
  const currentMode = config2.getApprovalMode();
391045
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390931
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391046
390932
  ApprovalModeDialog,
391047
390933
  {
391048
390934
  settings,
@@ -391053,18 +390939,18 @@ var DialogManager = /* @__PURE__ */ __name(({
391053
390939
  ) });
391054
390940
  }
391055
390941
  if (uiState.isModelDialogOpen) {
391056
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(ModelDialog, { onClose: uiActions.closeModelDialog });
390942
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ModelDialog, { onClose: uiActions.closeModelDialog });
391057
390943
  }
391058
390944
  if (uiState.isVisionSwitchDialogOpen) {
391059
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(ModelSwitchDialog, { onSelect: uiActions.handleVisionSwitchSelect });
390945
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(ModelSwitchDialog, { onSelect: uiActions.handleVisionSwitchSelect });
391060
390946
  }
391061
390947
  if (uiState.isAuthDialogOpen || uiState.authError) {
391062
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(AuthDialog, {}) });
390948
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { flexDirection: "column", children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(AuthDialog, {}) });
391063
390949
  }
391064
390950
  if (uiState.isAuthenticating) {
391065
390951
  if (uiState.pendingAuthType === "openai" /* USE_OPENAI */) {
391066
390952
  const defaults3 = getDefaultOpenAIConfig();
391067
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390953
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391068
390954
  OpenAIKeyPrompt,
391069
390955
  {
391070
390956
  onSubmit: (apiKey, baseUrl, model) => {
@@ -391085,7 +390971,7 @@ var DialogManager = /* @__PURE__ */ __name(({
391085
390971
  );
391086
390972
  }
391087
390973
  if (uiState.pendingAuthType === "qwen-oauth" /* QWEN_OAUTH */) {
391088
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390974
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391089
390975
  QwenOAuthProgress,
391090
390976
  {
391091
390977
  deviceAuth: uiState.qwenAuthState.deviceAuth || void 0,
@@ -391105,9 +390991,9 @@ var DialogManager = /* @__PURE__ */ __name(({
391105
390991
  }
391106
390992
  }
391107
390993
  if (uiState.isEditorDialogOpen) {
391108
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Box_default, { flexDirection: "column", children: [
391109
- uiState.editorError && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Text3, { color: theme.status.error, children: uiState.editorError }) }),
391110
- /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
390994
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsxs)(Box_default, { flexDirection: "column", children: [
390995
+ uiState.editorError && /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(Text3, { color: theme.status.error, children: uiState.editorError }) }),
390996
+ /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391111
390997
  EditorSettingsDialog,
391112
390998
  {
391113
390999
  onSelect: uiActions.handleEditorSelect,
@@ -391118,7 +391004,7 @@ var DialogManager = /* @__PURE__ */ __name(({
391118
391004
  ] });
391119
391005
  }
391120
391006
  if (uiState.isPermissionsDialogOpen) {
391121
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
391007
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391122
391008
  PermissionsModifyTrustDialog,
391123
391009
  {
391124
391010
  onExit: uiActions.closePermissionsDialog,
@@ -391127,7 +391013,7 @@ var DialogManager = /* @__PURE__ */ __name(({
391127
391013
  );
391128
391014
  }
391129
391015
  if (uiState.isSubagentCreateDialogOpen) {
391130
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
391016
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391131
391017
  AgentCreationWizard,
391132
391018
  {
391133
391019
  onClose: uiActions.closeSubagentCreateDialog,
@@ -391136,7 +391022,7 @@ var DialogManager = /* @__PURE__ */ __name(({
391136
391022
  );
391137
391023
  }
391138
391024
  if (uiState.isAgentsManagerDialogOpen) {
391139
- return /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
391025
+ return /* @__PURE__ */ (0, import_jsx_runtime85.jsx)(
391140
391026
  AgentsManagerDialog,
391141
391027
  {
391142
391028
  onClose: uiActions.closeAgentsManagerDialog,
@@ -391162,7 +391048,7 @@ function isNarrowWidth(width) {
391162
391048
  __name(isNarrowWidth, "isNarrowWidth");
391163
391049
 
391164
391050
  // packages/cli/src/ui/components/LoadingIndicator.tsx
391165
- var import_jsx_runtime87 = __toESM(require_jsx_runtime(), 1);
391051
+ var import_jsx_runtime86 = __toESM(require_jsx_runtime(), 1);
391166
391052
  var LoadingIndicator = /* @__PURE__ */ __name(({
391167
391053
  currentLoadingPhrase,
391168
391054
  elapsedTime,
@@ -391179,41 +391065,41 @@ var LoadingIndicator = /* @__PURE__ */ __name(({
391179
391065
  const cancelAndTimerContent = streamingState !== "waiting_for_confirmation" /* WaitingForConfirmation */ ? t3("(esc to cancel, {{time}})", {
391180
391066
  time: elapsedTime < 60 ? `${elapsedTime}s` : formatDuration(elapsedTime * 1e3)
391181
391067
  }) : null;
391182
- return /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Box_default, { paddingLeft: 0, flexDirection: "column", children: [
391183
- /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(
391068
+ return /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Box_default, { paddingLeft: 0, flexDirection: "column", children: [
391069
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(
391184
391070
  Box_default,
391185
391071
  {
391186
391072
  width: "100%",
391187
391073
  flexDirection: isNarrow ? "column" : "row",
391188
391074
  alignItems: isNarrow ? "flex-start" : "center",
391189
391075
  children: [
391190
- /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Box_default, { children: [
391191
- /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Box_default, { marginRight: 1, children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(
391076
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Box_default, { children: [
391077
+ /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { marginRight: 1, children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(
391192
391078
  GeminiRespondingSpinner,
391193
391079
  {
391194
391080
  nonRespondingDisplay: streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */ ? "\u280F" : ""
391195
391081
  }
391196
391082
  ) }),
391197
- primaryText && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Text3, { color: theme.text.accent, wrap: "truncate-end", children: primaryText }),
391198
- !isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Text3, { color: theme.text.secondary, children: [
391083
+ primaryText && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Text3, { color: theme.text.accent, wrap: "truncate-end", children: primaryText }),
391084
+ !isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsxs)(Text3, { color: theme.text.secondary, children: [
391199
391085
  " ",
391200
391086
  cancelAndTimerContent
391201
391087
  ] })
391202
391088
  ] }),
391203
- !isNarrow && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Box_default, { flexGrow: 1 }),
391204
- !isNarrow && rightContent && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Box_default, { children: rightContent })
391089
+ !isNarrow && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { flexGrow: 1 }),
391090
+ !isNarrow && rightContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { children: rightContent })
391205
391091
  ]
391206
391092
  }
391207
391093
  ),
391208
- isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Text3, { color: theme.text.secondary, children: cancelAndTimerContent }) }),
391209
- isNarrow && rightContent && /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Box_default, { children: rightContent })
391094
+ isNarrow && cancelAndTimerContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Text3, { color: theme.text.secondary, children: cancelAndTimerContent }) }),
391095
+ isNarrow && rightContent && /* @__PURE__ */ (0, import_jsx_runtime86.jsx)(Box_default, { children: rightContent })
391210
391096
  ] });
391211
391097
  }, "LoadingIndicator");
391212
391098
 
391213
391099
  // packages/cli/src/ui/components/ContextSummaryDisplay.tsx
391214
391100
  init_esbuild_shims();
391215
391101
  init_core4();
391216
- var import_jsx_runtime88 = __toESM(require_jsx_runtime(), 1);
391102
+ var import_jsx_runtime87 = __toESM(require_jsx_runtime(), 1);
391217
391103
  var ContextSummaryDisplay = /* @__PURE__ */ __name(({
391218
391104
  geminiMdFileCount,
391219
391105
  contextFileNames,
@@ -391228,7 +391114,7 @@ var ContextSummaryDisplay = /* @__PURE__ */ __name(({
391228
391114
  const blockedMcpServerCount = blockedMcpServers?.length || 0;
391229
391115
  const openFileCount = ideContext?.workspaceState?.openFiles?.length ?? 0;
391230
391116
  if (geminiMdFileCount === 0 && mcpServerCount === 0 && blockedMcpServerCount === 0 && openFileCount === 0) {
391231
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Text3, { children: " " });
391117
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Text3, { children: " " });
391232
391118
  }
391233
391119
  const openFilesText = (() => {
391234
391120
  if (openFileCount === 0) {
@@ -391286,16 +391172,16 @@ var ContextSummaryDisplay = /* @__PURE__ */ __name(({
391286
391172
  })();
391287
391173
  const summaryParts = [openFilesText, geminiMdText, mcpText].filter(Boolean);
391288
391174
  if (isNarrow) {
391289
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(Box_default, { flexDirection: "column", children: [
391290
- /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Text3, { color: theme.text.secondary, children: t3("Using:") }),
391291
- summaryParts.map((part, index) => /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(Text3, { color: theme.text.secondary, children: [
391175
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Box_default, { flexDirection: "column", children: [
391176
+ /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Text3, { color: theme.text.secondary, children: t3("Using:") }),
391177
+ summaryParts.map((part, index) => /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Text3, { color: theme.text.secondary, children: [
391292
391178
  " ",
391293
391179
  "- ",
391294
391180
  part
391295
391181
  ] }, index))
391296
391182
  ] });
391297
391183
  }
391298
- return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(Text3, { color: theme.text.secondary, children: [
391184
+ return /* @__PURE__ */ (0, import_jsx_runtime87.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime87.jsxs)(Text3, { color: theme.text.secondary, children: [
391299
391185
  t3("Using:"),
391300
391186
  " ",
391301
391187
  summaryParts.join(" | ")
@@ -391305,7 +391191,7 @@ var ContextSummaryDisplay = /* @__PURE__ */ __name(({
391305
391191
  // packages/cli/src/ui/components/AutoAcceptIndicator.tsx
391306
391192
  init_esbuild_shims();
391307
391193
  init_core4();
391308
- var import_jsx_runtime89 = __toESM(require_jsx_runtime(), 1);
391194
+ var import_jsx_runtime88 = __toESM(require_jsx_runtime(), 1);
391309
391195
  var AutoAcceptIndicator = /* @__PURE__ */ __name(({
391310
391196
  approvalMode
391311
391197
  }) => {
@@ -391332,29 +391218,29 @@ var AutoAcceptIndicator = /* @__PURE__ */ __name(({
391332
391218
  default:
391333
391219
  break;
391334
391220
  }
391335
- return /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(Text3, { color: textColor, children: [
391221
+ return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime88.jsxs)(Text3, { color: textColor, children: [
391336
391222
  textContent2,
391337
- subText && /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Text3, { color: theme.text.secondary, children: subText })
391223
+ subText && /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(Text3, { color: theme.text.secondary, children: subText })
391338
391224
  ] }) });
391339
391225
  }, "AutoAcceptIndicator");
391340
391226
 
391341
391227
  // packages/cli/src/ui/components/ShellModeIndicator.tsx
391342
391228
  init_esbuild_shims();
391343
- var import_jsx_runtime90 = __toESM(require_jsx_runtime(), 1);
391344
- var ShellModeIndicator = /* @__PURE__ */ __name(() => /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { color: theme.ui.symbol, children: [
391229
+ var import_jsx_runtime89 = __toESM(require_jsx_runtime(), 1);
391230
+ var ShellModeIndicator = /* @__PURE__ */ __name(() => /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime89.jsxs)(Text3, { color: theme.ui.symbol, children: [
391345
391231
  "shell mode enabled",
391346
- /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Text3, { color: theme.text.secondary, children: " (esc to disable)" })
391232
+ /* @__PURE__ */ (0, import_jsx_runtime89.jsx)(Text3, { color: theme.text.secondary, children: " (esc to disable)" })
391347
391233
  ] }) }), "ShellModeIndicator");
391348
391234
 
391349
391235
  // packages/cli/src/ui/components/DetailedMessagesDisplay.tsx
391350
391236
  init_esbuild_shims();
391351
- var import_jsx_runtime91 = __toESM(require_jsx_runtime(), 1);
391237
+ var import_jsx_runtime90 = __toESM(require_jsx_runtime(), 1);
391352
391238
  var DetailedMessagesDisplay = /* @__PURE__ */ __name(({ messages, maxHeight, width }) => {
391353
391239
  if (messages.length === 0) {
391354
391240
  return null;
391355
391241
  }
391356
391242
  const borderAndPadding = 4;
391357
- return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(
391243
+ return /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(
391358
391244
  Box_default,
391359
391245
  {
391360
391246
  flexDirection: "column",
@@ -391364,12 +391250,12 @@ var DetailedMessagesDisplay = /* @__PURE__ */ __name(({ messages, maxHeight, wid
391364
391250
  paddingX: 1,
391365
391251
  width,
391366
391252
  children: [
391367
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(Text3, { bold: true, color: theme.text.primary, children: [
391253
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Box_default, { marginBottom: 1, children: /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { bold: true, color: theme.text.primary, children: [
391368
391254
  "Debug Console",
391369
391255
  " ",
391370
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Text3, { color: theme.text.secondary, children: "(ctrl+o to close)" })
391256
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(Text3, { color: theme.text.secondary, children: "(ctrl+o to close)" })
391371
391257
  ] }) }),
391372
- /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(MaxSizedBox, { maxHeight, maxWidth: width - borderAndPadding, children: messages.map((msg, index) => {
391258
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsx)(MaxSizedBox, { maxHeight, maxWidth: width - borderAndPadding, children: messages.map((msg, index) => {
391373
391259
  let textColor = theme.text.primary;
391374
391260
  let icon = "\u2139";
391375
391261
  switch (msg.type) {
@@ -391389,14 +391275,14 @@ var DetailedMessagesDisplay = /* @__PURE__ */ __name(({ messages, maxHeight, wid
391389
391275
  default:
391390
391276
  break;
391391
391277
  }
391392
- return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(Box_default, { flexDirection: "row", children: [
391393
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(Text3, { color: textColor, children: [
391278
+ return /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Box_default, { flexDirection: "row", children: [
391279
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { color: textColor, children: [
391394
391280
  icon,
391395
391281
  " "
391396
391282
  ] }),
391397
- /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(Text3, { color: textColor, wrap: "wrap", children: [
391283
+ /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { color: textColor, wrap: "wrap", children: [
391398
391284
  msg.content,
391399
- msg.count && msg.count > 1 && /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(Text3, { color: theme.text.secondary, children: [
391285
+ msg.count && msg.count > 1 && /* @__PURE__ */ (0, import_jsx_runtime90.jsxs)(Text3, { color: theme.text.secondary, children: [
391400
391286
  " (x",
391401
391287
  msg.count,
391402
391288
  ")"
@@ -391419,7 +391305,7 @@ init_esbuild_shims();
391419
391305
  // packages/cli/src/ui/components/PrepareLabel.tsx
391420
391306
  init_esbuild_shims();
391421
391307
  var import_react85 = __toESM(require_react(), 1);
391422
- var import_jsx_runtime92 = __toESM(require_jsx_runtime(), 1);
391308
+ var import_jsx_runtime91 = __toESM(require_jsx_runtime(), 1);
391423
391309
  var MAX_WIDTH = 150;
391424
391310
  var _PrepareLabel = /* @__PURE__ */ __name(({
391425
391311
  label,
@@ -391431,7 +391317,7 @@ var _PrepareLabel = /* @__PURE__ */ __name(({
391431
391317
  const hasMatch = matchedIndex !== void 0 && matchedIndex >= 0 && matchedIndex < label.length && userInput.length > 0;
391432
391318
  if (!hasMatch) {
391433
391319
  const display = isExpanded ? label : label.length > MAX_WIDTH ? label.slice(0, MAX_WIDTH) + "..." : label;
391434
- return /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { wrap: "wrap", color: textColor, children: display });
391320
+ return /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(Text3, { wrap: "wrap", color: textColor, children: display });
391435
391321
  }
391436
391322
  const matchLength = userInput.length;
391437
391323
  let before = "";
@@ -391470,9 +391356,9 @@ var _PrepareLabel = /* @__PURE__ */ __name(({
391470
391356
  after = after.length >= 3 ? after.slice(0, -3) + "..." : "...";
391471
391357
  }
391472
391358
  }
391473
- return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Text3, { color: textColor, wrap: "wrap", children: [
391359
+ return /* @__PURE__ */ (0, import_jsx_runtime91.jsxs)(Text3, { color: textColor, wrap: "wrap", children: [
391474
391360
  before,
391475
- match2 ? match2.split(/(\s+)/).map((part, index) => /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
391361
+ match2 ? match2.split(/(\s+)/).map((part, index) => /* @__PURE__ */ (0, import_jsx_runtime91.jsx)(
391476
391362
  Text3,
391477
391363
  {
391478
391364
  color: theme.background.primary,
@@ -391487,7 +391373,7 @@ var _PrepareLabel = /* @__PURE__ */ __name(({
391487
391373
  var PrepareLabel = import_react85.default.memo(_PrepareLabel);
391488
391374
 
391489
391375
  // packages/cli/src/ui/components/SuggestionsDisplay.tsx
391490
- var import_jsx_runtime93 = __toESM(require_jsx_runtime(), 1);
391376
+ var import_jsx_runtime92 = __toESM(require_jsx_runtime(), 1);
391491
391377
  var MAX_SUGGESTIONS_TO_SHOW = 8;
391492
391378
  function SuggestionsDisplay({
391493
391379
  suggestions,
@@ -391500,7 +391386,7 @@ function SuggestionsDisplay({
391500
391386
  expandedIndex
391501
391387
  }) {
391502
391388
  if (isLoading) {
391503
- return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { paddingX: 1, width, children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: "gray", children: "Loading suggestions..." }) });
391389
+ return /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Box_default, { paddingX: 1, width, children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: "gray", children: "Loading suggestions..." }) });
391504
391390
  }
391505
391391
  if (suggestions.length === 0) {
391506
391392
  return null;
@@ -391516,8 +391402,8 @@ function SuggestionsDisplay({
391516
391402
  ...suggestions.map((s4) => getFullLabel(s4).length)
391517
391403
  );
391518
391404
  const commandColumnWidth = mode === "slash" ? Math.min(maxLabelLength, Math.floor(width * 0.5)) : 0;
391519
- return /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Box_default, { flexDirection: "column", paddingX: 1, width, children: [
391520
- scrollOffset > 0 && /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: theme.text.primary, children: "\u25B2" }),
391405
+ return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Box_default, { flexDirection: "column", paddingX: 1, width, children: [
391406
+ scrollOffset > 0 && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: theme.text.primary, children: "\u25B2" }),
391521
391407
  visibleSuggestions.map((suggestion, index) => {
391522
391408
  const originalIndex = startIndex + index;
391523
391409
  const isActive = originalIndex === activeIndex;
@@ -391525,7 +391411,7 @@ function SuggestionsDisplay({
391525
391411
  const textColor = isActive ? theme.text.accent : theme.text.secondary;
391526
391412
  const displayLabel = suggestion.label ?? suggestion.value;
391527
391413
  const isLong = displayLabel.length >= MAX_WIDTH;
391528
- const labelElement = /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
391414
+ const labelElement = /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
391529
391415
  PrepareLabel,
391530
391416
  {
391531
391417
  label: displayLabel,
@@ -391535,23 +391421,23 @@ function SuggestionsDisplay({
391535
391421
  isExpanded
391536
391422
  }
391537
391423
  );
391538
- return /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Box_default, { flexDirection: "row", children: [
391539
- /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
391424
+ return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Box_default, { flexDirection: "row", children: [
391425
+ /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(
391540
391426
  Box_default,
391541
391427
  {
391542
391428
  ...mode === "slash" ? { width: commandColumnWidth, flexShrink: 0 } : { flexShrink: 1 },
391543
- children: /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Box_default, { children: [
391429
+ children: /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Box_default, { children: [
391544
391430
  labelElement,
391545
- suggestion.commandKind === "mcp-prompt" /* MCP_PROMPT */ && /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: textColor, children: " [MCP]" })
391431
+ suggestion.commandKind === "mcp-prompt" /* MCP_PROMPT */ && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: textColor, children: " [MCP]" })
391546
391432
  ] })
391547
391433
  }
391548
391434
  ),
391549
- suggestion.description && /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { flexGrow: 1, paddingLeft: 3, children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: textColor, wrap: "truncate", children: suggestion.description }) }),
391550
- isActive && isLong && /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: Colors.Gray, children: isExpanded ? " \u2190 " : " \u2192 " }) })
391435
+ suggestion.description && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Box_default, { flexGrow: 1, paddingLeft: 3, children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: textColor, wrap: "truncate", children: suggestion.description }) }),
391436
+ isActive && isLong && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: Colors.Gray, children: isExpanded ? " \u2190 " : " \u2192 " }) })
391551
391437
  ] }, `${suggestion.value}-${originalIndex}`);
391552
391438
  }),
391553
- endIndex < suggestions.length && /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: "gray", children: "\u25BC" }),
391554
- suggestions.length > MAX_SUGGESTIONS_TO_SHOW && /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Text3, { color: "gray", children: [
391439
+ endIndex < suggestions.length && /* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Text3, { color: "gray", children: "\u25BC" }),
391440
+ suggestions.length > MAX_SUGGESTIONS_TO_SHOW && /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(Text3, { color: "gray", children: [
391555
391441
  "(",
391556
391442
  activeIndex + 1,
391557
391443
  "/",
@@ -392482,7 +392368,7 @@ function formatSlashCommandLabel(command2) {
392482
392368
  __name(formatSlashCommandLabel, "formatSlashCommandLabel");
392483
392369
 
392484
392370
  // packages/cli/src/ui/hooks/useCommandCompletion.tsx
392485
- function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext, reverseSearchActive = false, config2) {
392371
+ function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext, reverseSearchActive = false, config2, shellModeActive = false) {
392486
392372
  const {
392487
392373
  suggestions,
392488
392374
  activeSuggestionIndex,
@@ -392504,7 +392390,7 @@ function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext,
392504
392390
  const cursorCol = buffer.cursor[1];
392505
392391
  const { completionMode, query, completionStart, completionEnd } = (0, import_react92.useMemo)(() => {
392506
392392
  const currentLine = buffer.lines[cursorRow] || "";
392507
- if (cursorRow === 0 && isSlashCommand(currentLine.trim())) {
392393
+ if (cursorRow === 0 && !shellModeActive && isSlashCommand(currentLine.trim())) {
392508
392394
  return {
392509
392395
  completionMode: "SLASH" /* SLASH */,
392510
392396
  query: currentLine,
@@ -392553,7 +392439,7 @@ function useCommandCompletion(buffer, dirs, cwd7, slashCommands, commandContext,
392553
392439
  completionStart: -1,
392554
392440
  completionEnd: -1
392555
392441
  };
392556
- }, [cursorRow, cursorCol, buffer.lines]);
392442
+ }, [cursorRow, cursorCol, buffer.lines, shellModeActive]);
392557
392443
  useAtCompletion({
392558
392444
  enabled: completionMode === "AT" /* AT */,
392559
392445
  pattern: query || "",
@@ -392824,7 +392710,7 @@ var ShellFocusContext = (0, import_react93.createContext)(true);
392824
392710
  var useShellFocusState = /* @__PURE__ */ __name(() => (0, import_react93.useContext)(ShellFocusContext), "useShellFocusState");
392825
392711
 
392826
392712
  // packages/cli/src/ui/components/InputPrompt.tsx
392827
- var import_jsx_runtime94 = __toESM(require_jsx_runtime(), 1);
392713
+ var import_jsx_runtime93 = __toESM(require_jsx_runtime(), 1);
392828
392714
  var calculatePromptWidths = /* @__PURE__ */ __name((terminalWidth) => {
392829
392715
  const widthFraction = 0.9;
392830
392716
  const FRAME_PADDING_AND_BORDER = 4;
@@ -392893,7 +392779,8 @@ var InputPrompt = /* @__PURE__ */ __name(({
392893
392779
  slashCommands,
392894
392780
  commandContext,
392895
392781
  reverseSearchActive,
392896
- config2
392782
+ config2,
392783
+ shellModeActive
392897
392784
  );
392898
392785
  const reverseSearchCompletion = useReverseSearchCompletion(
392899
392786
  buffer,
@@ -393333,21 +393220,21 @@ var InputPrompt = /* @__PURE__ */ __name(({
393333
393220
  statusColor = theme.status.warning;
393334
393221
  statusText = t3("Accepting edits");
393335
393222
  }
393336
- return /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(import_jsx_runtime94.Fragment, { children: [
393337
- /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(
393223
+ return /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(import_jsx_runtime93.Fragment, { children: [
393224
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
393338
393225
  Box_default,
393339
393226
  {
393340
393227
  borderStyle: "round",
393341
393228
  borderColor: isShellFocused && !isEmbeddedShellFocused ? statusColor ?? theme.border.focused : theme.border.default,
393342
393229
  paddingX: 1,
393343
393230
  children: [
393344
- /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(
393231
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
393345
393232
  Text3,
393346
393233
  {
393347
393234
  color: statusColor ?? theme.text.accent,
393348
393235
  "aria-label": statusText || void 0,
393349
393236
  children: [
393350
- shellModeActive ? reverseSearchActive ? /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(
393237
+ shellModeActive ? reverseSearchActive ? /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(
393351
393238
  Text3,
393352
393239
  {
393353
393240
  color: theme.text.link,
@@ -393357,15 +393244,15 @@ var InputPrompt = /* @__PURE__ */ __name(({
393357
393244
  " "
393358
393245
  ]
393359
393246
  }
393360
- ) : "!" : commandSearchActive ? /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { color: theme.text.accent, children: "(r:) " }) : showYoloStyling ? "*" : ">",
393247
+ ) : "!" : commandSearchActive ? /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: theme.text.accent, children: "(r:) " }) : showYoloStyling ? "*" : ">",
393361
393248
  " "
393362
393249
  ]
393363
393250
  }
393364
393251
  ),
393365
- /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Box_default, { flexGrow: 1, flexDirection: "column", children: buffer.text.length === 0 && placeholder ? showCursor ? /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(Text3, { children: [
393252
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { flexGrow: 1, flexDirection: "column", children: buffer.text.length === 0 && placeholder ? showCursor ? /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(Text3, { children: [
393366
393253
  import_chalk7.default.inverse(placeholder.slice(0, 1)),
393367
- /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { color: theme.text.secondary, children: placeholder.slice(1) })
393368
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { color: theme.text.secondary, children: placeholder }) : linesToRender.map((lineText, visualIdxInRenderedSet) => {
393254
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: theme.text.secondary, children: placeholder.slice(1) })
393255
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color: theme.text.secondary, children: placeholder }) : linesToRender.map((lineText, visualIdxInRenderedSet) => {
393369
393256
  const absoluteVisualIdx = scrollVisualRow + visualIdxInRenderedSet;
393370
393257
  const mapEntry = buffer.visualToLogicalMap[absoluteVisualIdx];
393371
393258
  const cursorVisualRow = cursorVisualRowAbsolute - scrollVisualRow;
@@ -393412,20 +393299,20 @@ var InputPrompt = /* @__PURE__ */ __name(({
393412
393299
  }
393413
393300
  const color = seg.type === "command" || seg.type === "file" ? theme.text.accent : theme.text.primary;
393414
393301
  renderedLine.push(
393415
- /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { color, children: display }, `token-${segIdx}`)
393302
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { color, children: display }, `token-${segIdx}`)
393416
393303
  );
393417
393304
  });
393418
393305
  if (isOnCursorLine && cursorVisualColAbsolute === cpLen(lineText)) {
393419
393306
  renderedLine.push(
393420
- /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { children: showCursor ? import_chalk7.default.inverse(" ") : " " }, `cursor-end-${cursorVisualColAbsolute}`)
393307
+ /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { children: showCursor ? import_chalk7.default.inverse(" ") : " " }, `cursor-end-${cursorVisualColAbsolute}`)
393421
393308
  );
393422
393309
  }
393423
- return /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Box_default, { height: 1, children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { children: renderedLine }) }, `line-${visualIdxInRenderedSet}`);
393310
+ return /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { height: 1, children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Text3, { children: renderedLine }) }, `line-${visualIdxInRenderedSet}`);
393424
393311
  }) })
393425
393312
  ]
393426
393313
  }
393427
393314
  ),
393428
- shouldShowSuggestions && /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Box_default, { paddingRight: 2, children: /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(
393315
+ shouldShowSuggestions && /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(Box_default, { paddingRight: 2, children: /* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
393429
393316
  SuggestionsDisplay,
393430
393317
  {
393431
393318
  suggestions: activeCompletion.suggestions,
@@ -393447,7 +393334,7 @@ init_core4();
393447
393334
 
393448
393335
  // packages/cli/src/ui/components/ConsoleSummaryDisplay.tsx
393449
393336
  init_esbuild_shims();
393450
- var import_jsx_runtime95 = __toESM(require_jsx_runtime(), 1);
393337
+ var import_jsx_runtime94 = __toESM(require_jsx_runtime(), 1);
393451
393338
  var ConsoleSummaryDisplay = /* @__PURE__ */ __name(({
393452
393339
  errorCount
393453
393340
  }) => {
@@ -393455,14 +393342,14 @@ var ConsoleSummaryDisplay = /* @__PURE__ */ __name(({
393455
393342
  return null;
393456
393343
  }
393457
393344
  const errorIcon = "\u2716";
393458
- return /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Box_default, { children: errorCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime95.jsxs)(Text3, { color: theme.status.error, children: [
393345
+ return /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Box_default, { children: errorCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime94.jsxs)(Text3, { color: theme.status.error, children: [
393459
393346
  errorIcon,
393460
393347
  " ",
393461
393348
  errorCount,
393462
393349
  " error",
393463
393350
  errorCount > 1 ? "s" : "",
393464
393351
  " ",
393465
- /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Text3, { color: theme.text.secondary, children: "(ctrl+o for details)" })
393352
+ /* @__PURE__ */ (0, import_jsx_runtime94.jsx)(Text3, { color: theme.text.secondary, children: "(ctrl+o for details)" })
393466
393353
  ] }) });
393467
393354
  }, "ConsoleSummaryDisplay");
393468
393355
 
@@ -393473,7 +393360,7 @@ import process35 from "node:process";
393473
393360
  init_esbuild_shims();
393474
393361
  var import_react95 = __toESM(require_react(), 1);
393475
393362
  import process34 from "node:process";
393476
- var import_jsx_runtime96 = __toESM(require_jsx_runtime(), 1);
393363
+ var import_jsx_runtime95 = __toESM(require_jsx_runtime(), 1);
393477
393364
  var MemoryUsageDisplay = /* @__PURE__ */ __name(() => {
393478
393365
  const [memoryUsage, setMemoryUsage] = (0, import_react95.useState)("");
393479
393366
  const [memoryUsageColor, setMemoryUsageColor] = (0, import_react95.useState)(
@@ -393491,16 +393378,16 @@ var MemoryUsageDisplay = /* @__PURE__ */ __name(() => {
393491
393378
  updateMemory();
393492
393379
  return () => clearInterval(intervalId);
393493
393380
  }, []);
393494
- return /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(Box_default, { children: [
393495
- /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(Text3, { color: theme.text.secondary, children: " | " }),
393496
- /* @__PURE__ */ (0, import_jsx_runtime96.jsx)(Text3, { color: memoryUsageColor, children: memoryUsage })
393381
+ return /* @__PURE__ */ (0, import_jsx_runtime95.jsxs)(Box_default, { children: [
393382
+ /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Text3, { color: theme.text.secondary, children: " | " }),
393383
+ /* @__PURE__ */ (0, import_jsx_runtime95.jsx)(Text3, { color: memoryUsageColor, children: memoryUsage })
393497
393384
  ] });
393498
393385
  }, "MemoryUsageDisplay");
393499
393386
 
393500
393387
  // packages/cli/src/ui/components/ContextUsageDisplay.tsx
393501
393388
  init_esbuild_shims();
393502
393389
  init_core4();
393503
- var import_jsx_runtime97 = __toESM(require_jsx_runtime(), 1);
393390
+ var import_jsx_runtime96 = __toESM(require_jsx_runtime(), 1);
393504
393391
  var ContextUsageDisplay = /* @__PURE__ */ __name(({
393505
393392
  promptTokenCount,
393506
393393
  model,
@@ -393509,7 +393396,7 @@ var ContextUsageDisplay = /* @__PURE__ */ __name(({
393509
393396
  const percentage = promptTokenCount / tokenLimit(model);
393510
393397
  const percentageLeft = ((1 - percentage) * 100).toFixed(0);
393511
393398
  const label = terminalWidth < 100 ? "%" : "% context left";
393512
- return /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(Text3, { color: theme.text.secondary, children: [
393399
+ return /* @__PURE__ */ (0, import_jsx_runtime96.jsxs)(Text3, { color: theme.text.secondary, children: [
393513
393400
  "(",
393514
393401
  percentageLeft,
393515
393402
  label,
@@ -393520,7 +393407,7 @@ var ContextUsageDisplay = /* @__PURE__ */ __name(({
393520
393407
  // packages/cli/src/ui/components/DebugProfiler.tsx
393521
393408
  init_esbuild_shims();
393522
393409
  var import_react96 = __toESM(require_react(), 1);
393523
- var import_jsx_runtime98 = __toESM(require_jsx_runtime(), 1);
393410
+ var import_jsx_runtime97 = __toESM(require_jsx_runtime(), 1);
393524
393411
  var DebugProfiler = /* @__PURE__ */ __name(() => {
393525
393412
  const numRenders = (0, import_react96.useRef)(0);
393526
393413
  const [showNumRenders, setShowNumRenders] = (0, import_react96.useState)(false);
@@ -393538,7 +393425,7 @@ var DebugProfiler = /* @__PURE__ */ __name(() => {
393538
393425
  if (!showNumRenders) {
393539
393426
  return null;
393540
393427
  }
393541
- return /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.status.warning, children: [
393428
+ return /* @__PURE__ */ (0, import_jsx_runtime97.jsxs)(Text3, { color: theme.status.warning, children: [
393542
393429
  "Renders: ",
393543
393430
  numRenders.current,
393544
393431
  " "
@@ -393546,7 +393433,7 @@ var DebugProfiler = /* @__PURE__ */ __name(() => {
393546
393433
  }, "DebugProfiler");
393547
393434
 
393548
393435
  // packages/cli/src/ui/components/Footer.tsx
393549
- var import_jsx_runtime99 = __toESM(require_jsx_runtime(), 1);
393436
+ var import_jsx_runtime98 = __toESM(require_jsx_runtime(), 1);
393550
393437
  var Footer = /* @__PURE__ */ __name(() => {
393551
393438
  const uiState = useUIState();
393552
393439
  const config2 = useConfig();
@@ -393586,7 +393473,7 @@ var Footer = /* @__PURE__ */ __name(() => {
393586
393473
  const displayPath = shortenPath(tildeifyPath(targetDir), pathLength);
393587
393474
  const justifyContent = hideCWD && hideModelInfo ? "center" : "space-between";
393588
393475
  const displayVimMode = vimEnabled ? vimMode : void 0;
393589
- return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(
393476
+ return /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(
393590
393477
  Box_default,
393591
393478
  {
393592
393479
  justifyContent,
@@ -393594,57 +393481,57 @@ var Footer = /* @__PURE__ */ __name(() => {
393594
393481
  flexDirection: "row",
393595
393482
  alignItems: "center",
393596
393483
  children: [
393597
- (debugMode || displayVimMode || !hideCWD) && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { children: [
393598
- debugMode && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(DebugProfiler, {}),
393599
- displayVimMode && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { color: theme.text.secondary, children: [
393484
+ (debugMode || displayVimMode || !hideCWD) && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { children: [
393485
+ debugMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(DebugProfiler, {}),
393486
+ displayVimMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.secondary, children: [
393600
393487
  "[",
393601
393488
  displayVimMode,
393602
393489
  "] "
393603
393490
  ] }),
393604
- !hideCWD && (nightly ? /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(dist_default5, { colors: theme.ui.gradient, children: /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { children: [
393491
+ !hideCWD && (nightly ? /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(dist_default5, { colors: theme.ui.gradient, children: /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { children: [
393605
393492
  displayPath,
393606
- branchName && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { children: [
393493
+ branchName && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { children: [
393607
393494
  " (",
393608
393495
  branchName,
393609
393496
  "*)"
393610
393497
  ] })
393611
- ] }) }) : /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { color: theme.text.link, children: [
393498
+ ] }) }) : /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.link, children: [
393612
393499
  displayPath,
393613
- branchName && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { color: theme.text.secondary, children: [
393500
+ branchName && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.secondary, children: [
393614
393501
  " (",
393615
393502
  branchName,
393616
393503
  "*)"
393617
393504
  ] })
393618
393505
  ] })),
393619
- debugMode && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.status.error, children: " " + (debugMessage || "--debug") })
393506
+ debugMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: " " + (debugMessage || "--debug") })
393620
393507
  ] }),
393621
- !hideSandboxStatus && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
393508
+ !hideSandboxStatus && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(
393622
393509
  Box_default,
393623
393510
  {
393624
393511
  flexGrow: 1,
393625
393512
  alignItems: "center",
393626
393513
  justifyContent: "center",
393627
393514
  display: "flex",
393628
- children: isTrustedFolder === false ? /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.status.warning, children: "untrusted" }) : process35.env["SANDBOX"] && process35.env["SANDBOX"] !== "sandbox-exec" ? /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: "green", children: process35.env["SANDBOX"].replace(/^gemini-(?:cli-)?/, "") }) : process35.env["SANDBOX"] === "sandbox-exec" ? /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { color: theme.status.warning, children: [
393515
+ children: isTrustedFolder === false ? /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.warning, children: "untrusted" }) : process35.env["SANDBOX"] && process35.env["SANDBOX"] !== "sandbox-exec" ? /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: "green", children: process35.env["SANDBOX"].replace(/^gemini-(?:cli-)?/, "") }) : process35.env["SANDBOX"] === "sandbox-exec" ? /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.status.warning, children: [
393629
393516
  "macOS Seatbelt",
393630
393517
  " ",
393631
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { color: theme.text.secondary, children: [
393518
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.secondary, children: [
393632
393519
  "(",
393633
393520
  process35.env["SEATBELT_PROFILE"],
393634
393521
  ")"
393635
393522
  ] })
393636
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { color: theme.status.error, children: [
393523
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.status.error, children: [
393637
393524
  "no sandbox",
393638
- terminalWidth >= 100 && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.text.secondary, children: " (see /docs)" })
393525
+ terminalWidth >= 100 && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.text.secondary, children: " (see /docs)" })
393639
393526
  ] })
393640
393527
  }
393641
393528
  ),
393642
- !hideModelInfo && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { alignItems: "center", justifyContent: "flex-end", children: [
393643
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { alignItems: "center", children: [
393644
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { color: theme.text.accent, children: [
393529
+ !hideModelInfo && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { alignItems: "center", justifyContent: "flex-end", children: [
393530
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { alignItems: "center", children: [
393531
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { color: theme.text.accent, children: [
393645
393532
  model,
393646
393533
  " ",
393647
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
393534
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(
393648
393535
  ContextUsageDisplay,
393649
393536
  {
393650
393537
  promptTokenCount,
@@ -393653,20 +393540,20 @@ var Footer = /* @__PURE__ */ __name(() => {
393653
393540
  }
393654
393541
  )
393655
393542
  ] }),
393656
- showMemoryUsage && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(MemoryUsageDisplay, {})
393543
+ showMemoryUsage && /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(MemoryUsageDisplay, {})
393657
393544
  ] }),
393658
- /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { alignItems: "center", paddingLeft: 2, children: [
393659
- corgiMode && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { children: [
393660
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.ui.symbol, children: "| " }),
393661
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.status.error, children: "\u25BC" }),
393662
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.text.primary, children: "(\xB4" }),
393663
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.status.error, children: "\u1D25" }),
393664
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.text.primary, children: "`)" }),
393665
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.status.error, children: "\u25BC " })
393545
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { alignItems: "center", paddingLeft: 2, children: [
393546
+ corgiMode && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Text3, { children: [
393547
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.ui.symbol, children: "| " }),
393548
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: "\u25BC" }),
393549
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.text.primary, children: "(\xB4" }),
393550
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: "\u1D25" }),
393551
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.text.primary, children: "`)" }),
393552
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.status.error, children: "\u25BC " })
393666
393553
  ] }),
393667
- !showErrorDetails && errorCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { children: [
393668
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { color: theme.ui.symbol, children: "| " }),
393669
- /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(ConsoleSummaryDisplay, { errorCount })
393554
+ !showErrorDetails && errorCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime98.jsxs)(Box_default, { children: [
393555
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(Text3, { color: theme.ui.symbol, children: "| " }),
393556
+ /* @__PURE__ */ (0, import_jsx_runtime98.jsx)(ConsoleSummaryDisplay, { errorCount })
393670
393557
  ] })
393671
393558
  ] })
393672
393559
  ] })
@@ -393677,7 +393564,7 @@ var Footer = /* @__PURE__ */ __name(() => {
393677
393564
 
393678
393565
  // packages/cli/src/ui/components/QueuedMessageDisplay.tsx
393679
393566
  init_esbuild_shims();
393680
- var import_jsx_runtime100 = __toESM(require_jsx_runtime(), 1);
393567
+ var import_jsx_runtime99 = __toESM(require_jsx_runtime(), 1);
393681
393568
  var MAX_DISPLAYED_QUEUED_MESSAGES = 3;
393682
393569
  var QueuedMessageDisplay = /* @__PURE__ */ __name(({
393683
393570
  messageQueue
@@ -393685,12 +393572,12 @@ var QueuedMessageDisplay = /* @__PURE__ */ __name(({
393685
393572
  if (messageQueue.length === 0) {
393686
393573
  return null;
393687
393574
  }
393688
- return /* @__PURE__ */ (0, import_jsx_runtime100.jsxs)(Box_default, { flexDirection: "column", marginTop: 1, children: [
393575
+ return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { flexDirection: "column", marginTop: 1, children: [
393689
393576
  messageQueue.slice(0, MAX_DISPLAYED_QUEUED_MESSAGES).map((message, index) => {
393690
393577
  const preview = message.replace(/\s+/g, " ");
393691
- return /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(Box_default, { paddingLeft: 2, width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(Text3, { dimColor: true, wrap: "truncate", children: preview }) }, index);
393578
+ return /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Box_default, { paddingLeft: 2, width: "100%", children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text3, { dimColor: true, wrap: "truncate", children: preview }) }, index);
393692
393579
  }),
393693
- messageQueue.length > MAX_DISPLAYED_QUEUED_MESSAGES && /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(Box_default, { paddingLeft: 2, children: /* @__PURE__ */ (0, import_jsx_runtime100.jsxs)(Text3, { dimColor: true, children: [
393580
+ messageQueue.length > MAX_DISPLAYED_QUEUED_MESSAGES && /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Box_default, { paddingLeft: 2, children: /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text3, { dimColor: true, children: [
393694
393581
  "... (+",
393695
393582
  messageQueue.length - MAX_DISPLAYED_QUEUED_MESSAGES,
393696
393583
  " more)"
@@ -393705,7 +393592,7 @@ init_core4();
393705
393592
  init_esbuild_shims();
393706
393593
  var import_react97 = __toESM(require_react(), 1);
393707
393594
  init_core4();
393708
- var import_jsx_runtime101 = __toESM(require_jsx_runtime(), 1);
393595
+ var import_jsx_runtime100 = __toESM(require_jsx_runtime(), 1);
393709
393596
  var ConfigInitDisplay = /* @__PURE__ */ __name(() => {
393710
393597
  const config2 = useConfig();
393711
393598
  const [message, setMessage] = (0, import_react97.useState)(t3("Initializing..."));
@@ -393733,15 +393620,15 @@ var ConfigInitDisplay = /* @__PURE__ */ __name(() => {
393733
393620
  appEvents.off("mcp-client-update", onChange);
393734
393621
  };
393735
393622
  }, [config2]);
393736
- return /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Text3, { children: [
393737
- /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(GeminiSpinner, {}),
393623
+ return /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime100.jsxs)(Text3, { children: [
393624
+ /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(GeminiSpinner, {}),
393738
393625
  " ",
393739
- /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.text.primary, children: message })
393626
+ /* @__PURE__ */ (0, import_jsx_runtime100.jsx)(Text3, { color: theme.text.primary, children: message })
393740
393627
  ] }) });
393741
393628
  }, "ConfigInitDisplay");
393742
393629
 
393743
393630
  // packages/cli/src/ui/components/Composer.tsx
393744
- var import_jsx_runtime102 = __toESM(require_jsx_runtime(), 1);
393631
+ var import_jsx_runtime101 = __toESM(require_jsx_runtime(), 1);
393745
393632
  var Composer = /* @__PURE__ */ __name(() => {
393746
393633
  const config2 = useConfig();
393747
393634
  const settings = useSettings();
@@ -393757,8 +393644,8 @@ var Composer = /* @__PURE__ */ __name(() => {
393757
393644
  () => calculatePromptWidths(uiState.terminalWidth),
393758
393645
  [uiState.terminalWidth]
393759
393646
  );
393760
- return /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(Box_default, { flexDirection: "column", children: [
393761
- !uiState.embeddedShellFocused && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(
393647
+ return /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { flexDirection: "column", children: [
393648
+ !uiState.embeddedShellFocused && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
393762
393649
  LoadingIndicator,
393763
393650
  {
393764
393651
  thought: uiState.streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */ || config2.getAccessibility()?.disableLoadingPhrases ? void 0 : uiState.thought,
@@ -393766,9 +393653,9 @@ var Composer = /* @__PURE__ */ __name(() => {
393766
393653
  elapsedTime: uiState.elapsedTime
393767
393654
  }
393768
393655
  ),
393769
- !uiState.isConfigInitialized && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(ConfigInitDisplay, {}),
393770
- /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(QueuedMessageDisplay, { messageQueue: uiState.messageQueue }),
393771
- /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(
393656
+ !uiState.isConfigInitialized && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(ConfigInitDisplay, {}),
393657
+ /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(QueuedMessageDisplay, { messageQueue: uiState.messageQueue }),
393658
+ /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(
393772
393659
  Box_default,
393773
393660
  {
393774
393661
  marginTop: 1,
@@ -393777,9 +393664,9 @@ var Composer = /* @__PURE__ */ __name(() => {
393777
393664
  flexDirection: isNarrow ? "column" : "row",
393778
393665
  alignItems: isNarrow ? "flex-start" : "center",
393779
393666
  children: [
393780
- /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(Box_default, { marginRight: 1, children: [
393781
- process.env["GEMINI_SYSTEM_MD"] && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.status.error, children: "|\u2310\u25A0_\u25A0| " }),
393782
- uiState.ctrlCPressedOnce ? /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.status.warning, children: t3("Press Ctrl+C again to exit.") }) : uiState.ctrlDPressedOnce ? /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.status.warning, children: t3("Press Ctrl+D again to exit.") }) : uiState.showEscapePrompt ? /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.text.secondary, children: t3("Press Esc again to clear.") }) : !settings.merged.ui?.hideContextSummary && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(
393667
+ /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { marginRight: 1, children: [
393668
+ process.env["GEMINI_SYSTEM_MD"] && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.status.error, children: "|\u2310\u25A0_\u25A0| " }),
393669
+ uiState.ctrlCPressedOnce ? /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.status.warning, children: t3("Press Ctrl+C again to exit.") }) : uiState.ctrlDPressedOnce ? /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.status.warning, children: t3("Press Ctrl+D again to exit.") }) : uiState.showEscapePrompt ? /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Text3, { color: theme.text.secondary, children: t3("Press Esc again to clear.") }) : !settings.merged.ui?.hideContextSummary && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
393783
393670
  ContextSummaryDisplay,
393784
393671
  {
393785
393672
  ideContext: uiState.ideContextState,
@@ -393791,15 +393678,15 @@ var Composer = /* @__PURE__ */ __name(() => {
393791
393678
  }
393792
393679
  )
393793
393680
  ] }),
393794
- /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(Box_default, { paddingTop: isNarrow ? 1 : 0, children: [
393795
- showAutoAcceptIndicator !== "default" /* DEFAULT */ && !uiState.shellModeActive && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(AutoAcceptIndicator, { approvalMode: showAutoAcceptIndicator }),
393796
- uiState.shellModeActive && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(ShellModeIndicator, {})
393681
+ /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { paddingTop: isNarrow ? 1 : 0, children: [
393682
+ showAutoAcceptIndicator !== "default" /* DEFAULT */ && !uiState.shellModeActive && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(AutoAcceptIndicator, { approvalMode: showAutoAcceptIndicator }),
393683
+ uiState.shellModeActive && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(ShellModeIndicator, {})
393797
393684
  ] })
393798
393685
  ]
393799
393686
  }
393800
393687
  ),
393801
- uiState.showErrorDetails && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(OverflowProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(Box_default, { flexDirection: "column", children: [
393802
- /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(
393688
+ uiState.showErrorDetails && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(OverflowProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime101.jsxs)(Box_default, { flexDirection: "column", children: [
393689
+ /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
393803
393690
  DetailedMessagesDisplay,
393804
393691
  {
393805
393692
  messages: uiState.filteredConsoleMessages,
@@ -393807,9 +393694,9 @@ var Composer = /* @__PURE__ */ __name(() => {
393807
393694
  width: containerWidth
393808
393695
  }
393809
393696
  ),
393810
- /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(ShowMoreLines, { constrainHeight: uiState.constrainHeight })
393697
+ /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(ShowMoreLines, { constrainHeight: uiState.constrainHeight })
393811
393698
  ] }) }),
393812
- uiState.isInputActive && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(
393699
+ uiState.isInputActive && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(
393813
393700
  InputPrompt,
393814
393701
  {
393815
393702
  buffer: uiState.buffer,
@@ -393831,65 +393718,65 @@ var Composer = /* @__PURE__ */ __name(() => {
393831
393718
  placeholder: vimEnabled ? " " + t3("Press 'i' for INSERT mode and 'Esc' for NORMAL mode.") : " " + t3("Type your message or @path/to/file")
393832
393719
  }
393833
393720
  ),
393834
- !settings.merged.ui?.hideFooter && !isScreenReaderEnabled && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Footer, {})
393721
+ !settings.merged.ui?.hideFooter && !isScreenReaderEnabled && /* @__PURE__ */ (0, import_jsx_runtime101.jsx)(Footer, {})
393835
393722
  ] });
393836
393723
  }, "Composer");
393837
393724
 
393838
393725
  // packages/cli/src/ui/components/ExitWarning.tsx
393839
393726
  init_esbuild_shims();
393840
- var import_jsx_runtime103 = __toESM(require_jsx_runtime(), 1);
393727
+ var import_jsx_runtime102 = __toESM(require_jsx_runtime(), 1);
393841
393728
  var ExitWarning = /* @__PURE__ */ __name(() => {
393842
393729
  const uiState = useUIState();
393843
- return /* @__PURE__ */ (0, import_jsx_runtime103.jsxs)(import_jsx_runtime103.Fragment, { children: [
393844
- uiState.dialogsVisible && uiState.ctrlCPressedOnce && /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Text3, { color: theme.status.warning, children: "Press Ctrl+C again to exit." }) }),
393845
- uiState.dialogsVisible && uiState.ctrlDPressedOnce && /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Text3, { color: theme.status.warning, children: "Press Ctrl+D again to exit." }) })
393730
+ return /* @__PURE__ */ (0, import_jsx_runtime102.jsxs)(import_jsx_runtime102.Fragment, { children: [
393731
+ uiState.dialogsVisible && uiState.ctrlCPressedOnce && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.status.warning, children: "Press Ctrl+C again to exit." }) }),
393732
+ uiState.dialogsVisible && uiState.ctrlDPressedOnce && /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Box_default, { marginTop: 1, children: /* @__PURE__ */ (0, import_jsx_runtime102.jsx)(Text3, { color: theme.status.warning, children: "Press Ctrl+D again to exit." }) })
393846
393733
  ] });
393847
393734
  }, "ExitWarning");
393848
393735
 
393849
393736
  // packages/cli/src/ui/layouts/ScreenReaderAppLayout.tsx
393850
- var import_jsx_runtime104 = __toESM(require_jsx_runtime(), 1);
393737
+ var import_jsx_runtime103 = __toESM(require_jsx_runtime(), 1);
393851
393738
  var ScreenReaderAppLayout = /* @__PURE__ */ __name(() => {
393852
393739
  const uiState = useUIState();
393853
- return /* @__PURE__ */ (0, import_jsx_runtime104.jsxs)(Box_default, { flexDirection: "column", width: "90%", height: "100%", children: [
393854
- /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Notifications, {}),
393855
- /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Footer, {}),
393856
- /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Box_default, { flexGrow: 1, overflow: "hidden", children: /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(MainContent, {}) }),
393857
- uiState.dialogsVisible ? /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(
393740
+ return /* @__PURE__ */ (0, import_jsx_runtime103.jsxs)(Box_default, { flexDirection: "column", width: "90%", height: "100%", children: [
393741
+ /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Notifications, {}),
393742
+ /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Footer, {}),
393743
+ /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Box_default, { flexGrow: 1, overflow: "hidden", children: /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(MainContent, {}) }),
393744
+ uiState.dialogsVisible ? /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(
393858
393745
  DialogManager,
393859
393746
  {
393860
393747
  terminalWidth: uiState.terminalWidth,
393861
393748
  addItem: uiState.historyManager.addItem
393862
393749
  }
393863
- ) : /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Composer, {}),
393864
- /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(ExitWarning, {})
393750
+ ) : /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(Composer, {}),
393751
+ /* @__PURE__ */ (0, import_jsx_runtime103.jsx)(ExitWarning, {})
393865
393752
  ] });
393866
393753
  }, "ScreenReaderAppLayout");
393867
393754
 
393868
393755
  // packages/cli/src/ui/layouts/DefaultAppLayout.tsx
393869
393756
  init_esbuild_shims();
393870
- var import_jsx_runtime105 = __toESM(require_jsx_runtime(), 1);
393757
+ var import_jsx_runtime104 = __toESM(require_jsx_runtime(), 1);
393871
393758
  var DefaultAppLayout = /* @__PURE__ */ __name(({
393872
393759
  width = "90%"
393873
393760
  }) => {
393874
393761
  const uiState = useUIState();
393875
- return /* @__PURE__ */ (0, import_jsx_runtime105.jsxs)(Box_default, { flexDirection: "column", width, children: [
393876
- /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(MainContent, {}),
393877
- /* @__PURE__ */ (0, import_jsx_runtime105.jsxs)(Box_default, { flexDirection: "column", ref: uiState.mainControlsRef, children: [
393878
- /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(Notifications, {}),
393879
- uiState.dialogsVisible ? /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(
393762
+ return /* @__PURE__ */ (0, import_jsx_runtime104.jsxs)(Box_default, { flexDirection: "column", width, children: [
393763
+ /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(MainContent, {}),
393764
+ /* @__PURE__ */ (0, import_jsx_runtime104.jsxs)(Box_default, { flexDirection: "column", ref: uiState.mainControlsRef, children: [
393765
+ /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Notifications, {}),
393766
+ uiState.dialogsVisible ? /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(
393880
393767
  DialogManager,
393881
393768
  {
393882
393769
  terminalWidth: uiState.terminalWidth,
393883
393770
  addItem: uiState.historyManager.addItem
393884
393771
  }
393885
- ) : /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(Composer, {}),
393886
- /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(ExitWarning, {})
393772
+ ) : /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(Composer, {}),
393773
+ /* @__PURE__ */ (0, import_jsx_runtime104.jsx)(ExitWarning, {})
393887
393774
  ] })
393888
393775
  ] });
393889
393776
  }, "DefaultAppLayout");
393890
393777
 
393891
393778
  // packages/cli/src/ui/App.tsx
393892
- var import_jsx_runtime106 = __toESM(require_jsx_runtime(), 1);
393779
+ var import_jsx_runtime105 = __toESM(require_jsx_runtime(), 1);
393893
393780
  var getContainerWidth = /* @__PURE__ */ __name((terminalWidth) => {
393894
393781
  if (terminalWidth <= 80) {
393895
393782
  return "98%";
@@ -393907,9 +393794,9 @@ var App2 = /* @__PURE__ */ __name(() => {
393907
393794
  const { columns } = useTerminalSize();
393908
393795
  const containerWidth = getContainerWidth(columns);
393909
393796
  if (uiState.quittingMessages) {
393910
- return /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(QuittingDisplay, {});
393797
+ return /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(QuittingDisplay, {});
393911
393798
  }
393912
- return /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(StreamingContext.Provider, { value: uiState.streamingState, children: isScreenReaderEnabled ? /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(ScreenReaderAppLayout, {}) : /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(DefaultAppLayout, { width: containerWidth }) });
393799
+ return /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(StreamingContext.Provider, { value: uiState.streamingState, children: isScreenReaderEnabled ? /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(ScreenReaderAppLayout, {}) : /* @__PURE__ */ (0, import_jsx_runtime105.jsx)(DefaultAppLayout, { width: containerWidth }) });
393913
393800
  }, "App");
393914
393801
 
393915
393802
  // packages/cli/src/ui/AppContainer.tsx
@@ -395597,7 +395484,6 @@ function serializeHistoryItemForRecording(item) {
395597
395484
  __name(serializeHistoryItemForRecording, "serializeHistoryItemForRecording");
395598
395485
  var SLASH_COMMANDS_SKIP_RECORDING = /* @__PURE__ */ new Set([
395599
395486
  "quit",
395600
- "quit-confirm",
395601
395487
  "exit",
395602
395488
  "clear",
395603
395489
  "reset",
@@ -395612,7 +395498,6 @@ var useSlashCommandProcessor = /* @__PURE__ */ __name((config2, settings, addIte
395612
395498
  }, []);
395613
395499
  const [shellConfirmationRequest, setShellConfirmationRequest] = (0, import_react108.useState)(null);
395614
395500
  const [confirmationRequest, setConfirmationRequest] = (0, import_react108.useState)(null);
395615
- const [quitConfirmationRequest, setQuitConfirmationRequest] = (0, import_react108.useState)(null);
395616
395501
  const [sessionShellAllowlist, setSessionShellAllowlist] = (0, import_react108.useState)(
395617
395502
  /* @__PURE__ */ new Set()
395618
395503
  );
@@ -395663,11 +395548,6 @@ var useSlashCommandProcessor = /* @__PURE__ */ __name((config2, settings, addIte
395663
395548
  type: "quit",
395664
395549
  duration: message.duration
395665
395550
  };
395666
- } else if (message.type === "quit_confirmation" /* QUIT_CONFIRMATION */) {
395667
- historyItemContent = {
395668
- type: "quit_confirmation",
395669
- duration: message.duration
395670
- };
395671
395551
  } else if (message.type === "compression" /* COMPRESSION */) {
395672
395552
  historyItemContent = {
395673
395553
  type: "compression",
@@ -395906,52 +395786,6 @@ var useSlashCommandProcessor = /* @__PURE__ */ __name((config2, settings, addIte
395906
395786
  });
395907
395787
  return { type: "handled" };
395908
395788
  }
395909
- case "quit_confirmation":
395910
- setQuitConfirmationRequest({
395911
- onConfirm: /* @__PURE__ */ __name((shouldQuit, action) => {
395912
- setQuitConfirmationRequest(null);
395913
- if (!shouldQuit) {
395914
- return;
395915
- }
395916
- if (shouldQuit) {
395917
- if (action === "summary_and_quit") {
395918
- handleSlashCommand2("/summary").then(() => {
395919
- setTimeout(() => {
395920
- handleSlashCommand2("/quit");
395921
- }, 1200);
395922
- }).catch((error2) => {
395923
- addItemWithRecording(
395924
- {
395925
- type: "error",
395926
- text: `Failed to generate summary before quit: ${error2 instanceof Error ? error2.message : String(error2)}`
395927
- },
395928
- Date.now()
395929
- );
395930
- setTimeout(() => {
395931
- handleSlashCommand2("/quit");
395932
- }, 1e3);
395933
- });
395934
- } else {
395935
- const now = Date.now();
395936
- const { sessionStartTime } = sessionStats;
395937
- const wallDuration = now - sessionStartTime.getTime();
395938
- actions.quit([
395939
- {
395940
- type: "user",
395941
- text: `/quit`,
395942
- id: now - 1
395943
- },
395944
- {
395945
- type: "quit",
395946
- duration: formatDuration(wallDuration),
395947
- id: now
395948
- }
395949
- ]);
395950
- }
395951
- }
395952
- }, "onConfirm")
395953
- });
395954
- return { type: "handled" };
395955
395789
  case "quit":
395956
395790
  actions.quit(result.messages);
395957
395791
  return { type: "handled" };
@@ -396121,8 +395955,7 @@ ${commandToExecute.subCommands.map((sc) => ` - ${sc.name}: ${sc.description ||
396121
395955
  setShellConfirmationRequest,
396122
395956
  setSessionShellAllowlist,
396123
395957
  setIsProcessing,
396124
- setConfirmationRequest,
396125
- sessionStats
395958
+ setConfirmationRequest
396126
395959
  ]
396127
395960
  );
396128
395961
  return {
@@ -396132,7 +395965,6 @@ ${commandToExecute.subCommands.map((sc) => ` - ${sc.name}: ${sc.description ||
396132
395965
  commandContext,
396133
395966
  shellConfirmationRequest,
396134
395967
  confirmationRequest,
396135
- quitConfirmationRequest,
396136
395968
  reloadCommands
396137
395969
  };
396138
395970
  }, "useSlashCommandProcessor");
@@ -397219,6 +397051,9 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
397219
397051
  const trimmedQuery = query.trim();
397220
397052
  onDebugMessage(`User query: '${trimmedQuery}'`);
397221
397053
  await logger6?.logMessage("user" /* USER */, trimmedQuery);
397054
+ if (shellModeActive && handleShellCommand(trimmedQuery, abortSignal)) {
397055
+ return { queryToSend: null, shouldProceed: false };
397056
+ }
397222
397057
  const slashCommandResult = isSlashCommand(trimmedQuery) ? await handleSlashCommand2(trimmedQuery) : false;
397223
397058
  if (slashCommandResult) {
397224
397059
  switch (slashCommandResult.type) {
@@ -397252,9 +397087,6 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
397252
397087
  }
397253
397088
  }
397254
397089
  }
397255
- if (shellModeActive && handleShellCommand(trimmedQuery, abortSignal)) {
397256
- return { queryToSend: null, shouldProceed: false };
397257
- }
397258
397090
  if (isAtCommand(trimmedQuery)) {
397259
397091
  const atCommandResult = await handleAtCommand({
397260
397092
  query: trimmedQuery,
@@ -402258,44 +402090,18 @@ var useExtensionUpdates = /* @__PURE__ */ __name((extensions, addItem, cwd7) =>
402258
402090
  };
402259
402091
  }, "useExtensionUpdates");
402260
402092
 
402261
- // packages/cli/src/ui/hooks/useQuitConfirmation.ts
402262
- init_esbuild_shims();
402263
- var import_react127 = __toESM(require_react(), 1);
402264
- var useQuitConfirmation = /* @__PURE__ */ __name(() => {
402265
- const [isQuitConfirmationOpen, setIsQuitConfirmationOpen] = (0, import_react127.useState)(false);
402266
- const showQuitConfirmation = (0, import_react127.useCallback)(() => {
402267
- setIsQuitConfirmationOpen(true);
402268
- }, []);
402269
- const handleQuitConfirmationSelect = (0, import_react127.useCallback)((choice2) => {
402270
- setIsQuitConfirmationOpen(false);
402271
- if (choice2 === "cancel" /* CANCEL */) {
402272
- return { shouldQuit: false, action: "cancel" };
402273
- } else if (choice2 === "quit" /* QUIT */) {
402274
- return { shouldQuit: true, action: "quit" };
402275
- } else if (choice2 === "summary_and_quit" /* SUMMARY_AND_QUIT */) {
402276
- return { shouldQuit: true, action: "summary_and_quit" };
402277
- }
402278
- return { shouldQuit: false, action: "cancel" };
402279
- }, []);
402280
- return {
402281
- isQuitConfirmationOpen,
402282
- showQuitConfirmation,
402283
- handleQuitConfirmationSelect
402284
- };
402285
- }, "useQuitConfirmation");
402286
-
402287
402093
  // packages/cli/src/ui/hooks/useWelcomeBack.ts
402288
402094
  init_esbuild_shims();
402289
- var import_react128 = __toESM(require_react(), 1);
402095
+ var import_react127 = __toESM(require_react(), 1);
402290
402096
  init_core4();
402291
402097
  init_settingsSchema();
402292
402098
  function useWelcomeBack(config2, submitQuery, buffer, settings) {
402293
- const [welcomeBackInfo, setWelcomeBackInfo] = (0, import_react128.useState)(null);
402294
- const [showWelcomeBackDialog, setShowWelcomeBackDialog] = (0, import_react128.useState)(false);
402295
- const [welcomeBackChoice, setWelcomeBackChoice] = (0, import_react128.useState)(null);
402296
- const [shouldFillInput, setShouldFillInput] = (0, import_react128.useState)(false);
402297
- const [inputFillText, setInputFillText] = (0, import_react128.useState)(null);
402298
- const checkWelcomeBack = (0, import_react128.useCallback)(async () => {
402099
+ const [welcomeBackInfo, setWelcomeBackInfo] = (0, import_react127.useState)(null);
402100
+ const [showWelcomeBackDialog, setShowWelcomeBackDialog] = (0, import_react127.useState)(false);
402101
+ const [welcomeBackChoice, setWelcomeBackChoice] = (0, import_react127.useState)(null);
402102
+ const [shouldFillInput, setShouldFillInput] = (0, import_react127.useState)(false);
402103
+ const [inputFillText, setInputFillText] = (0, import_react127.useState)(null);
402104
+ const checkWelcomeBack = (0, import_react127.useCallback)(async () => {
402299
402105
  if (settings.ui?.enableWelcomeBack === false) {
402300
402106
  return;
402301
402107
  }
@@ -402309,7 +402115,7 @@ function useWelcomeBack(config2, submitQuery, buffer, settings) {
402309
402115
  console.debug("Welcome back check failed:", error2);
402310
402116
  }
402311
402117
  }, [settings.ui?.enableWelcomeBack]);
402312
- const handleWelcomeBackSelection = (0, import_react128.useCallback)(
402118
+ const handleWelcomeBackSelection = (0, import_react127.useCallback)(
402313
402119
  (choice2) => {
402314
402120
  setWelcomeBackChoice(choice2);
402315
402121
  setShowWelcomeBackDialog(false);
@@ -402321,21 +402127,21 @@ function useWelcomeBack(config2, submitQuery, buffer, settings) {
402321
402127
  },
402322
402128
  [welcomeBackInfo]
402323
402129
  );
402324
- const handleWelcomeBackClose = (0, import_react128.useCallback)(() => {
402130
+ const handleWelcomeBackClose = (0, import_react127.useCallback)(() => {
402325
402131
  setWelcomeBackChoice("restart");
402326
402132
  setShowWelcomeBackDialog(false);
402327
402133
  }, []);
402328
- const clearInputFill = (0, import_react128.useCallback)(() => {
402134
+ const clearInputFill = (0, import_react127.useCallback)(() => {
402329
402135
  setShouldFillInput(false);
402330
402136
  setInputFillText(null);
402331
402137
  }, []);
402332
- (0, import_react128.useEffect)(() => {
402138
+ (0, import_react127.useEffect)(() => {
402333
402139
  if (shouldFillInput && inputFillText) {
402334
402140
  buffer.setText(inputFillText);
402335
402141
  clearInputFill();
402336
402142
  }
402337
402143
  }, [shouldFillInput, inputFillText, buffer, clearInputFill]);
402338
- (0, import_react128.useEffect)(() => {
402144
+ (0, import_react127.useEffect)(() => {
402339
402145
  checkWelcomeBack();
402340
402146
  }, [checkWelcomeBack]);
402341
402147
  return {
@@ -402356,10 +402162,10 @@ __name(useWelcomeBack, "useWelcomeBack");
402356
402162
 
402357
402163
  // packages/cli/src/ui/hooks/useDialogClose.ts
402358
402164
  init_esbuild_shims();
402359
- var import_react129 = __toESM(require_react(), 1);
402165
+ var import_react128 = __toESM(require_react(), 1);
402360
402166
  init_settings();
402361
402167
  function useDialogClose(options2) {
402362
- const closeAnyOpenDialog = (0, import_react129.useCallback)(() => {
402168
+ const closeAnyOpenDialog = (0, import_react128.useCallback)(() => {
402363
402169
  if (options2.isThemeDialogOpen) {
402364
402170
  options2.handleThemeSelect(void 0, "User" /* User */);
402365
402171
  return true;
@@ -402391,13 +402197,13 @@ __name(useDialogClose, "useDialogClose");
402391
402197
 
402392
402198
  // packages/cli/src/ui/hooks/useSubagentCreateDialog.ts
402393
402199
  init_esbuild_shims();
402394
- var import_react130 = __toESM(require_react(), 1);
402200
+ var import_react129 = __toESM(require_react(), 1);
402395
402201
  function useSubagentCreateDialog() {
402396
- const [isSubagentCreateDialogOpen, setIsSubagentCreateDialogOpen] = (0, import_react130.useState)(false);
402397
- const openSubagentCreateDialog = (0, import_react130.useCallback)(() => {
402202
+ const [isSubagentCreateDialogOpen, setIsSubagentCreateDialogOpen] = (0, import_react129.useState)(false);
402203
+ const openSubagentCreateDialog = (0, import_react129.useCallback)(() => {
402398
402204
  setIsSubagentCreateDialogOpen(true);
402399
402205
  }, []);
402400
- const closeSubagentCreateDialog = (0, import_react130.useCallback)(() => {
402206
+ const closeSubagentCreateDialog = (0, import_react129.useCallback)(() => {
402401
402207
  setIsSubagentCreateDialogOpen(false);
402402
402208
  }, []);
402403
402209
  return {
@@ -402410,13 +402216,13 @@ __name(useSubagentCreateDialog, "useSubagentCreateDialog");
402410
402216
 
402411
402217
  // packages/cli/src/ui/hooks/useAgentsManagerDialog.ts
402412
402218
  init_esbuild_shims();
402413
- var import_react131 = __toESM(require_react(), 1);
402219
+ var import_react130 = __toESM(require_react(), 1);
402414
402220
  var useAgentsManagerDialog = /* @__PURE__ */ __name(() => {
402415
- const [isAgentsManagerDialogOpen, setIsAgentsManagerDialogOpen] = (0, import_react131.useState)(false);
402416
- const openAgentsManagerDialog = (0, import_react131.useCallback)(() => {
402221
+ const [isAgentsManagerDialogOpen, setIsAgentsManagerDialogOpen] = (0, import_react130.useState)(false);
402222
+ const openAgentsManagerDialog = (0, import_react130.useCallback)(() => {
402417
402223
  setIsAgentsManagerDialogOpen(true);
402418
402224
  }, []);
402419
- const closeAgentsManagerDialog = (0, import_react131.useCallback)(() => {
402225
+ const closeAgentsManagerDialog = (0, import_react130.useCallback)(() => {
402420
402226
  setIsAgentsManagerDialogOpen(false);
402421
402227
  }, []);
402422
402228
  return {
@@ -402428,7 +402234,7 @@ var useAgentsManagerDialog = /* @__PURE__ */ __name(() => {
402428
402234
 
402429
402235
  // packages/cli/src/ui/hooks/useAttentionNotifications.ts
402430
402236
  init_esbuild_shims();
402431
- var import_react132 = __toESM(require_react(), 1);
402237
+ var import_react131 = __toESM(require_react(), 1);
402432
402238
 
402433
402239
  // packages/cli/src/utils/attentionNotification.ts
402434
402240
  init_esbuild_shims();
@@ -402456,9 +402262,9 @@ var useAttentionNotifications = /* @__PURE__ */ __name(({
402456
402262
  streamingState,
402457
402263
  elapsedTime
402458
402264
  }) => {
402459
- const awaitingNotificationSentRef = (0, import_react132.useRef)(false);
402460
- const respondingElapsedRef = (0, import_react132.useRef)(0);
402461
- (0, import_react132.useEffect)(() => {
402265
+ const awaitingNotificationSentRef = (0, import_react131.useRef)(false);
402266
+ const respondingElapsedRef = (0, import_react131.useRef)(0);
402267
+ (0, import_react131.useEffect)(() => {
402462
402268
  if (streamingState === "waiting_for_confirmation" /* WaitingForConfirmation */ && !isFocused && !awaitingNotificationSentRef.current) {
402463
402269
  notifyTerminalAttention("tool_approval" /* ToolApproval */);
402464
402270
  awaitingNotificationSentRef.current = true;
@@ -402467,7 +402273,7 @@ var useAttentionNotifications = /* @__PURE__ */ __name(({
402467
402273
  awaitingNotificationSentRef.current = false;
402468
402274
  }
402469
402275
  }, [isFocused, streamingState]);
402470
- (0, import_react132.useEffect)(() => {
402276
+ (0, import_react131.useEffect)(() => {
402471
402277
  if (streamingState === "responding" /* Responding */) {
402472
402278
  respondingElapsedRef.current = elapsedTime;
402473
402279
  return;
@@ -402485,7 +402291,7 @@ var useAttentionNotifications = /* @__PURE__ */ __name(({
402485
402291
 
402486
402292
  // packages/cli/src/ui/hooks/useWebSocket.ts
402487
402293
  init_esbuild_shims();
402488
- var import_react133 = __toESM(require_react(), 1);
402294
+ var import_react132 = __toESM(require_react(), 1);
402489
402295
 
402490
402296
  // packages/cli/src/config/websocket.ts
402491
402297
  init_esbuild_shims();
@@ -403088,8 +402894,8 @@ function useWebSocket({
403088
402894
  debug: debug2,
403089
402895
  sessionId
403090
402896
  }) {
403091
- const wsClientRef = (0, import_react133.useRef)(null);
403092
- (0, import_react133.useEffect)(() => {
402897
+ const wsClientRef = (0, import_react132.useRef)(null);
402898
+ (0, import_react132.useEffect)(() => {
403093
402899
  const wsRuntimeConfig = loadWebSocketRuntimeConfig(debug2);
403094
402900
  if (!wsRuntimeConfig.enabled) {
403095
402901
  if (debug2) {
@@ -403132,7 +402938,7 @@ __name(useWebSocket, "useWebSocket");
403132
402938
  // packages/cli/src/ui/AppContainer.tsx
403133
402939
  init_core4();
403134
402940
  init_xhsSsoConfig();
403135
- var import_jsx_runtime107 = __toESM(require_jsx_runtime(), 1);
402941
+ var import_jsx_runtime106 = __toESM(require_jsx_runtime(), 1);
403136
402942
  var CTRL_EXIT_PROMPT_DURATION_MS = 1e3;
403137
402943
  function isToolExecuting(pendingHistoryItems) {
403138
402944
  return pendingHistoryItems.some((item) => {
@@ -403151,22 +402957,22 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403151
402957
  const { settings, config: config2, initializationResult } = props;
403152
402958
  const historyManager = useHistory();
403153
402959
  useMemoryMonitor(historyManager);
403154
- const [corgiMode, setCorgiMode] = (0, import_react134.useState)(false);
403155
- const [debugMessage, setDebugMessage] = (0, import_react134.useState)("");
403156
- const [quittingMessages, setQuittingMessages] = (0, import_react134.useState)(null);
403157
- const [themeError, setThemeError] = (0, import_react134.useState)(
402960
+ const [corgiMode, setCorgiMode] = (0, import_react133.useState)(false);
402961
+ const [debugMessage, setDebugMessage] = (0, import_react133.useState)("");
402962
+ const [quittingMessages, setQuittingMessages] = (0, import_react133.useState)(null);
402963
+ const [themeError, setThemeError] = (0, import_react133.useState)(
403158
402964
  initializationResult.themeError
403159
402965
  );
403160
- const [isProcessing, setIsProcessing] = (0, import_react134.useState)(false);
403161
- const [embeddedShellFocused, setEmbeddedShellFocused] = (0, import_react134.useState)(false);
403162
- const [geminiMdFileCount, setGeminiMdFileCount] = (0, import_react134.useState)(
402966
+ const [isProcessing, setIsProcessing] = (0, import_react133.useState)(false);
402967
+ const [embeddedShellFocused, setEmbeddedShellFocused] = (0, import_react133.useState)(false);
402968
+ const [geminiMdFileCount, setGeminiMdFileCount] = (0, import_react133.useState)(
403163
402969
  initializationResult.geminiMdFileCount
403164
402970
  );
403165
- const [shellModeActive, setShellModeActive] = (0, import_react134.useState)(false);
403166
- const [modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError] = (0, import_react134.useState)(false);
403167
- const [historyRemountKey, setHistoryRemountKey] = (0, import_react134.useState)(0);
403168
- const [updateInfo, setUpdateInfo] = (0, import_react134.useState)(null);
403169
- const [isTrustedFolder, setIsTrustedFolder] = (0, import_react134.useState)(
402971
+ const [shellModeActive, setShellModeActive] = (0, import_react133.useState)(false);
402972
+ const [modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError] = (0, import_react133.useState)(false);
402973
+ const [historyRemountKey, setHistoryRemountKey] = (0, import_react133.useState)(0);
402974
+ const [updateInfo, setUpdateInfo] = (0, import_react133.useState)(null);
402975
+ const [isTrustedFolder, setIsTrustedFolder] = (0, import_react133.useState)(
403170
402976
  config2.isTrustedFolder()
403171
402977
  );
403172
402978
  const extensions = config2.getExtensions();
@@ -403181,38 +402987,38 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403181
402987
  historyManager.addItem,
403182
402988
  config2.getWorkingDir()
403183
402989
  );
403184
- const [isPermissionsDialogOpen, setPermissionsDialogOpen] = (0, import_react134.useState)(false);
403185
- const openPermissionsDialog = (0, import_react134.useCallback)(
402990
+ const [isPermissionsDialogOpen, setPermissionsDialogOpen] = (0, import_react133.useState)(false);
402991
+ const openPermissionsDialog = (0, import_react133.useCallback)(
403186
402992
  () => setPermissionsDialogOpen(true),
403187
402993
  []
403188
402994
  );
403189
- const closePermissionsDialog = (0, import_react134.useCallback)(
402995
+ const closePermissionsDialog = (0, import_react133.useCallback)(
403190
402996
  () => setPermissionsDialogOpen(false),
403191
402997
  []
403192
402998
  );
403193
- const getEffectiveModel2 = (0, import_react134.useCallback)(() => {
402999
+ const getEffectiveModel2 = (0, import_react133.useCallback)(() => {
403194
403000
  if (config2.isInFallbackMode()) {
403195
403001
  return DEFAULT_GEMINI_FLASH_MODEL;
403196
403002
  }
403197
403003
  return config2.getModel();
403198
403004
  }, [config2]);
403199
- const [currentModel, setCurrentModel] = (0, import_react134.useState)(getEffectiveModel2());
403200
- const [userTier] = (0, import_react134.useState)(void 0);
403201
- const [isConfigInitialized, setConfigInitialized] = (0, import_react134.useState)(false);
403202
- const [userMessages, setUserMessages] = (0, import_react134.useState)([]);
403005
+ const [currentModel, setCurrentModel] = (0, import_react133.useState)(getEffectiveModel2());
403006
+ const [userTier] = (0, import_react133.useState)(void 0);
403007
+ const [isConfigInitialized, setConfigInitialized] = (0, import_react133.useState)(false);
403008
+ const [userMessages, setUserMessages] = (0, import_react133.useState)([]);
403203
403009
  const { columns: terminalWidth, rows: terminalHeight } = useTerminalSize();
403204
403010
  const { stdin, setRawMode } = use_stdin_default();
403205
403011
  const { stdout } = use_stdout_default();
403206
403012
  const { stats: sessionStats } = useSessionStats();
403207
403013
  const logger6 = useLogger(config2.storage, sessionStats.sessionId);
403208
403014
  const branchName = useGitBranchName(config2.getTargetDir());
403209
- const mainControlsRef = (0, import_react134.useRef)(null);
403210
- const originalTitleRef = (0, import_react134.useRef)(
403015
+ const mainControlsRef = (0, import_react133.useRef)(null);
403016
+ const originalTitleRef = (0, import_react133.useRef)(
403211
403017
  computeWindowTitle(basename18(config2.getTargetDir()))
403212
403018
  );
403213
- const lastTitleRef = (0, import_react134.useRef)(null);
403019
+ const lastTitleRef = (0, import_react133.useRef)(null);
403214
403020
  const staticExtraHeight = 3;
403215
- (0, import_react134.useEffect)(() => {
403021
+ (0, import_react133.useEffect)(() => {
403216
403022
  (async () => {
403217
403023
  await config2.initialize();
403218
403024
  setConfigInitialized(true);
@@ -403230,11 +403036,11 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403230
403036
  await ideClient.disconnect();
403231
403037
  });
403232
403038
  }, [config2]);
403233
- (0, import_react134.useEffect)(
403039
+ (0, import_react133.useEffect)(
403234
403040
  () => setUpdateHandler(historyManager.addItem, setUpdateInfo),
403235
403041
  [historyManager.addItem]
403236
403042
  );
403237
- (0, import_react134.useEffect)(() => {
403043
+ (0, import_react133.useEffect)(() => {
403238
403044
  const checkModelChange = /* @__PURE__ */ __name(() => {
403239
403045
  const effectiveModel = getEffectiveModel2();
403240
403046
  if (effectiveModel !== currentModel) {
@@ -403250,7 +403056,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403250
403056
  handleNewMessage,
403251
403057
  clearConsoleMessages: clearConsoleMessagesState
403252
403058
  } = useConsoleMessages();
403253
- (0, import_react134.useEffect)(() => {
403059
+ (0, import_react133.useEffect)(() => {
403254
403060
  const consolePatcher = new ConsolePatcher({
403255
403061
  onNewMessage: handleNewMessage,
403256
403062
  debugMode: config2.getDebugMode()
@@ -403258,13 +403064,13 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403258
403064
  consolePatcher.patch();
403259
403065
  registerCleanup(consolePatcher.cleanup);
403260
403066
  }, [handleNewMessage, config2]);
403261
- const { inputWidth, suggestionsWidth } = (0, import_react134.useMemo)(() => {
403067
+ const { inputWidth, suggestionsWidth } = (0, import_react133.useMemo)(() => {
403262
403068
  const { inputWidth: inputWidth2, suggestionsWidth: suggestionsWidth2 } = calculatePromptWidths(terminalWidth);
403263
403069
  return { inputWidth: inputWidth2, suggestionsWidth: suggestionsWidth2 };
403264
403070
  }, [terminalWidth]);
403265
403071
  const mainAreaWidth = Math.floor(terminalWidth * 0.9);
403266
403072
  const staticAreaMaxItemHeight = Math.max(terminalHeight * 4, 100);
403267
- const isValidPath = (0, import_react134.useCallback)((filePath) => {
403073
+ const isValidPath = (0, import_react133.useCallback)((filePath) => {
403268
403074
  try {
403269
403075
  return fs107.existsSync(filePath) && fs107.statSync(filePath).isFile();
403270
403076
  } catch (_e) {
@@ -403279,7 +403085,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403279
403085
  isValidPath,
403280
403086
  shellModeActive
403281
403087
  });
403282
- (0, import_react134.useEffect)(() => {
403088
+ (0, import_react133.useEffect)(() => {
403283
403089
  const fetchUserMessages = /* @__PURE__ */ __name(async () => {
403284
403090
  const pastMessagesRaw = await logger6?.getPreviousUserMessages() || [];
403285
403091
  const currentSessionUserMessages = historyManager.history.filter(
@@ -403302,7 +403108,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403302
403108
  }, "fetchUserMessages");
403303
403109
  fetchUserMessages();
403304
403110
  }, [historyManager.history, logger6]);
403305
- const refreshStatic = (0, import_react134.useCallback)(() => {
403111
+ const refreshStatic = (0, import_react133.useCallback)(() => {
403306
403112
  stdout.write(base_exports.clearTerminal);
403307
403113
  setHistoryRemountKey((prev) => prev + 1);
403308
403114
  }, [setHistoryRemountKey, stdout]);
@@ -403334,7 +403140,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403334
403140
  openAuthDialog,
403335
403141
  cancelAuthentication
403336
403142
  } = useAuthCommand(settings, config2, historyManager.addItem);
403337
- (0, import_react134.useEffect)(() => {
403143
+ (0, import_react133.useEffect)(() => {
403338
403144
  if (!shouldTriggerAutoSSOAuth(settings)) {
403339
403145
  return;
403340
403146
  }
@@ -403513,17 +403319,17 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403513
403319
  setAuthState,
403514
403320
  setModelSwitchedFromQuotaError
403515
403321
  });
403516
- const handleQwenAuthTimeout = (0, import_react134.useCallback)(() => {
403322
+ const handleQwenAuthTimeout = (0, import_react133.useCallback)(() => {
403517
403323
  onAuthError("Qwen OAuth authentication timed out. Please try again.");
403518
403324
  cancelAuthentication();
403519
403325
  setAuthState("updating" /* Updating */);
403520
403326
  }, [onAuthError, cancelAuthentication, setAuthState]);
403521
- const handleQwenAuthCancel = (0, import_react134.useCallback)(() => {
403327
+ const handleQwenAuthCancel = (0, import_react133.useCallback)(() => {
403522
403328
  onAuthError("Qwen OAuth authentication cancelled.");
403523
403329
  cancelAuthentication();
403524
403330
  setAuthState("updating" /* Updating */);
403525
403331
  }, [onAuthError, cancelAuthentication, setAuthState]);
403526
- (0, import_react134.useEffect)(() => {
403332
+ (0, import_react133.useEffect)(() => {
403527
403333
  if (settings.merged.security?.auth?.enforcedType && settings.merged.security?.auth.selectedType && settings.merged.security?.auth.enforcedType !== settings.merged.security?.auth.selectedType) {
403528
403334
  onAuthError(
403529
403335
  t3(
@@ -403548,7 +403354,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403548
403354
  settings.merged.security?.auth?.useExternal,
403549
403355
  onAuthError
403550
403356
  ]);
403551
- const [editorError, setEditorError] = (0, import_react134.useState)(null);
403357
+ const [editorError, setEditorError] = (0, import_react133.useState)(null);
403552
403358
  const {
403553
403359
  isEditorDialogOpen,
403554
403360
  openEditorDialog,
@@ -403564,7 +403370,6 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403564
403370
  onWorkspaceMigrationDialogClose
403565
403371
  } = useWorkspaceMigration(settings);
403566
403372
  const { toggleVimEnabled } = useVimMode();
403567
- const { showQuitConfirmation } = useQuitConfirmation();
403568
403373
  const {
403569
403374
  isSubagentCreateDialogOpen,
403570
403375
  openSubagentCreateDialog,
@@ -403575,9 +403380,9 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403575
403380
  openAgentsManagerDialog,
403576
403381
  closeAgentsManagerDialog
403577
403382
  } = useAgentsManagerDialog();
403578
- const [isVisionSwitchDialogOpen, setIsVisionSwitchDialogOpen] = (0, import_react134.useState)(false);
403579
- const [visionSwitchResolver, setVisionSwitchResolver] = (0, import_react134.useState)(null);
403580
- const slashCommandActions = (0, import_react134.useMemo)(
403383
+ const [isVisionSwitchDialogOpen, setIsVisionSwitchDialogOpen] = (0, import_react133.useState)(false);
403384
+ const [visionSwitchResolver, setVisionSwitchResolver] = (0, import_react133.useState)(null);
403385
+ const slashCommandActions = (0, import_react133.useMemo)(
403581
403386
  () => ({
403582
403387
  openAuthDialog,
403583
403388
  openThemeDialog,
@@ -403598,8 +403403,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403598
403403
  dispatchExtensionStateUpdate,
403599
403404
  addConfirmUpdateExtensionRequest,
403600
403405
  openSubagentCreateDialog,
403601
- openAgentsManagerDialog,
403602
- _showQuitConfirmation: showQuitConfirmation
403406
+ openAgentsManagerDialog
403603
403407
  }),
403604
403408
  [
403605
403409
  openAuthDialog,
@@ -403613,7 +403417,6 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403613
403417
  openPermissionsDialog,
403614
403418
  openApprovalModeDialog,
403615
403419
  addConfirmUpdateExtensionRequest,
403616
- showQuitConfirmation,
403617
403420
  openSubagentCreateDialog,
403618
403421
  openAgentsManagerDialog
403619
403422
  ]
@@ -403625,7 +403428,6 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403625
403428
  commandContext,
403626
403429
  shellConfirmationRequest,
403627
403430
  confirmationRequest,
403628
- quitConfirmationRequest,
403629
403431
  reloadCommands
403630
403432
  } = useSlashCommandProcessor(
403631
403433
  config2,
@@ -403647,14 +403449,14 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403647
403449
  debug: config2.getDebugMode(),
403648
403450
  sessionId: config2.getSessionId()
403649
403451
  });
403650
- const handleVisionSwitchRequired = (0, import_react134.useCallback)(
403452
+ const handleVisionSwitchRequired = (0, import_react133.useCallback)(
403651
403453
  async (_query) => new Promise((resolve26, reject) => {
403652
403454
  setVisionSwitchResolver({ resolve: resolve26, reject });
403653
403455
  setIsVisionSwitchDialogOpen(true);
403654
403456
  }),
403655
403457
  []
403656
403458
  );
403657
- const handleVisionSwitchSelect = (0, import_react134.useCallback)(
403459
+ const handleVisionSwitchSelect = (0, import_react133.useCallback)(
403658
403460
  (outcome) => {
403659
403461
  setIsVisionSwitchDialogOpen(false);
403660
403462
  if (visionSwitchResolver) {
@@ -403665,10 +403467,10 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403665
403467
  },
403666
403468
  [visionSwitchResolver]
403667
403469
  );
403668
- const onDebugMessage = (0, import_react134.useCallback)((message) => {
403470
+ const onDebugMessage = (0, import_react133.useCallback)((message) => {
403669
403471
  console.debug(message);
403670
403472
  }, []);
403671
- const performMemoryRefresh = (0, import_react134.useCallback)(async () => {
403473
+ const performMemoryRefresh = (0, import_react133.useCallback)(async () => {
403672
403474
  historyManager.addItem(
403673
403475
  {
403674
403476
  type: "info" /* INFO */,
@@ -403719,7 +403521,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403719
403521
  console.error("Error refreshing memory:", error2);
403720
403522
  }
403721
403523
  }, [config2, historyManager, settings.merged]);
403722
- const cancelHandlerRef = (0, import_react134.useRef)(() => {
403524
+ const cancelHandlerRef = (0, import_react133.useRef)(() => {
403723
403525
  });
403724
403526
  const {
403725
403527
  streamingState,
@@ -403766,7 +403568,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403766
403568
  streamingState,
403767
403569
  submitQuery
403768
403570
  });
403769
- const handleFinalSubmit = (0, import_react134.useCallback)(
403571
+ const handleFinalSubmit = (0, import_react133.useCallback)(
403770
403572
  (submittedValue) => {
403771
403573
  addMessage(submittedValue);
403772
403574
  },
@@ -403779,7 +403581,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
403779
403581
  handleWelcomeBackSelection,
403780
403582
  handleWelcomeBackClose
403781
403583
  } = useWelcomeBack(config2, handleFinalSubmit, buffer, settings.merged);
403782
- cancelHandlerRef.current = (0, import_react134.useCallback)(() => {
403584
+ cancelHandlerRef.current = (0, import_react133.useCallback)(() => {
403783
403585
  const pendingHistoryItems2 = [
403784
403586
  ...pendingSlashCommandHistoryItems,
403785
403587
  ...pendingGeminiHistoryItems
@@ -403808,7 +403610,7 @@ ${queuedText}` : queuedText;
403808
403610
  pendingSlashCommandHistoryItems,
403809
403611
  pendingGeminiHistoryItems
403810
403612
  ]);
403811
- const handleClearScreen = (0, import_react134.useCallback)(() => {
403613
+ const handleClearScreen = (0, import_react133.useCallback)(() => {
403812
403614
  historyManager.clearItems();
403813
403615
  clearConsoleMessagesState();
403814
403616
  console.clear();
@@ -403816,8 +403618,8 @@ ${queuedText}` : queuedText;
403816
403618
  }, [historyManager, clearConsoleMessagesState, refreshStatic]);
403817
403619
  const { handleInput: vimHandleInput } = useVim(buffer, handleFinalSubmit);
403818
403620
  const isInputActive = !initError && !isProcessing && (streamingState === "idle" /* Idle */ || streamingState === "responding" /* Responding */) && !proQuotaRequest;
403819
- const [controlsHeight, setControlsHeight] = (0, import_react134.useState)(0);
403820
- (0, import_react134.useLayoutEffect)(() => {
403621
+ const [controlsHeight, setControlsHeight] = (0, import_react133.useState)(0);
403622
+ (0, import_react133.useLayoutEffect)(() => {
403821
403623
  if (mainControlsRef.current) {
403822
403624
  const fullFooterMeasurement = measure_element_default(mainControlsRef.current);
403823
403625
  if (fullFooterMeasurement.height > 0) {
@@ -403840,14 +403642,14 @@ ${queuedText}` : queuedText;
403840
403642
  });
403841
403643
  const isFocused = useFocus();
403842
403644
  useBracketedPaste();
403843
- const contextFileNames = (0, import_react134.useMemo)(() => {
403645
+ const contextFileNames = (0, import_react133.useMemo)(() => {
403844
403646
  const fromSettings = settings.merged.context?.fileName;
403845
403647
  return fromSettings ? Array.isArray(fromSettings) ? fromSettings : [fromSettings] : getAllGeminiMdFilenames();
403846
403648
  }, [settings.merged.context?.fileName]);
403847
- const initialPrompt = (0, import_react134.useMemo)(() => config2.getQuestion(), [config2]);
403848
- const initialPromptSubmitted = (0, import_react134.useRef)(false);
403649
+ const initialPrompt = (0, import_react133.useMemo)(() => config2.getQuestion(), [config2]);
403650
+ const initialPromptSubmitted = (0, import_react133.useRef)(false);
403849
403651
  const geminiClient = config2.getGeminiClient();
403850
- (0, import_react134.useEffect)(() => {
403652
+ (0, import_react133.useEffect)(() => {
403851
403653
  if (activePtyId) {
403852
403654
  ShellExecutionService.resizePty(
403853
403655
  activePtyId,
@@ -403856,7 +403658,7 @@ ${queuedText}` : queuedText;
403856
403658
  );
403857
403659
  }
403858
403660
  }, [terminalWidth, availableTerminalHeight, activePtyId]);
403859
- (0, import_react134.useEffect)(() => {
403661
+ (0, import_react133.useEffect)(() => {
403860
403662
  if (initialPrompt && isConfigInitialized && !initialPromptSubmitted.current && !isAuthenticating && !isAuthDialogOpen && !isThemeDialogOpen && !isEditorDialogOpen && !showWelcomeBackDialog && !isVisionSwitchDialogOpen && welcomeBackChoice !== "restart" && geminiClient?.isInitialized?.()) {
403861
403663
  handleFinalSubmit(initialPrompt);
403862
403664
  initialPromptSubmitted.current = true;
@@ -403874,9 +403676,9 @@ ${queuedText}` : queuedText;
403874
403676
  welcomeBackChoice,
403875
403677
  geminiClient
403876
403678
  ]);
403877
- const [idePromptAnswered, setIdePromptAnswered] = (0, import_react134.useState)(false);
403878
- const [currentIDE, setCurrentIDE] = (0, import_react134.useState)(null);
403879
- (0, import_react134.useEffect)(() => {
403679
+ const [idePromptAnswered, setIdePromptAnswered] = (0, import_react133.useState)(false);
403680
+ const [currentIDE, setCurrentIDE] = (0, import_react133.useState)(null);
403681
+ (0, import_react133.useEffect)(() => {
403880
403682
  const getIde = /* @__PURE__ */ __name(async () => {
403881
403683
  const ideClient = await IdeClient.getInstance();
403882
403684
  const currentIde = ideClient.getCurrentIde();
@@ -403887,28 +403689,28 @@ ${queuedText}` : queuedText;
403887
403689
  const shouldShowIdePrompt = Boolean(
403888
403690
  currentIDE && !config2.getIdeMode() && !settings.merged.ide?.hasSeenNudge && !idePromptAnswered
403889
403691
  );
403890
- const [showErrorDetails, setShowErrorDetails] = (0, import_react134.useState)(false);
403891
- const [showToolDescriptions, setShowToolDescriptions] = (0, import_react134.useState)(false);
403892
- const [ctrlCPressedOnce, setCtrlCPressedOnce] = (0, import_react134.useState)(false);
403893
- const ctrlCTimerRef = (0, import_react134.useRef)(null);
403894
- const [ctrlDPressedOnce, setCtrlDPressedOnce] = (0, import_react134.useState)(false);
403895
- const ctrlDTimerRef = (0, import_react134.useRef)(null);
403896
- const [constrainHeight, setConstrainHeight] = (0, import_react134.useState)(true);
403897
- const [ideContextState, setIdeContextState] = (0, import_react134.useState)();
403898
- const [showEscapePrompt, setShowEscapePrompt] = (0, import_react134.useState)(false);
403899
- const [showIdeRestartPrompt, setShowIdeRestartPrompt] = (0, import_react134.useState)(false);
403692
+ const [showErrorDetails, setShowErrorDetails] = (0, import_react133.useState)(false);
403693
+ const [showToolDescriptions, setShowToolDescriptions] = (0, import_react133.useState)(false);
403694
+ const [ctrlCPressedOnce, setCtrlCPressedOnce] = (0, import_react133.useState)(false);
403695
+ const ctrlCTimerRef = (0, import_react133.useRef)(null);
403696
+ const [ctrlDPressedOnce, setCtrlDPressedOnce] = (0, import_react133.useState)(false);
403697
+ const ctrlDTimerRef = (0, import_react133.useRef)(null);
403698
+ const [constrainHeight, setConstrainHeight] = (0, import_react133.useState)(true);
403699
+ const [ideContextState, setIdeContextState] = (0, import_react133.useState)();
403700
+ const [showEscapePrompt, setShowEscapePrompt] = (0, import_react133.useState)(false);
403701
+ const [showIdeRestartPrompt, setShowIdeRestartPrompt] = (0, import_react133.useState)(false);
403900
403702
  const { isFolderTrustDialogOpen, handleFolderTrustSelect, isRestarting } = useFolderTrust(settings, setIsTrustedFolder);
403901
403703
  const {
403902
403704
  needsRestart: ideNeedsRestart,
403903
403705
  restartReason: ideTrustRestartReason
403904
403706
  } = useIdeTrustListener();
403905
- const isInitialMount = (0, import_react134.useRef)(true);
403906
- (0, import_react134.useEffect)(() => {
403707
+ const isInitialMount = (0, import_react133.useRef)(true);
403708
+ (0, import_react133.useEffect)(() => {
403907
403709
  if (ideNeedsRestart) {
403908
403710
  setShowIdeRestartPrompt(true);
403909
403711
  }
403910
403712
  }, [ideNeedsRestart]);
403911
- (0, import_react134.useEffect)(() => {
403713
+ (0, import_react133.useEffect)(() => {
403912
403714
  if (isInitialMount.current) {
403913
403715
  isInitialMount.current = false;
403914
403716
  return;
@@ -403920,12 +403722,12 @@ ${queuedText}` : queuedText;
403920
403722
  clearTimeout(handler);
403921
403723
  };
403922
403724
  }, [terminalWidth, refreshStatic]);
403923
- (0, import_react134.useEffect)(() => {
403725
+ (0, import_react133.useEffect)(() => {
403924
403726
  const unsubscribe = ideContextStore.subscribe(setIdeContextState);
403925
403727
  setIdeContextState(ideContextStore.get());
403926
403728
  return unsubscribe;
403927
403729
  }, []);
403928
- (0, import_react134.useEffect)(() => {
403730
+ (0, import_react133.useEffect)(() => {
403929
403731
  const openDebugConsole = /* @__PURE__ */ __name(() => {
403930
403732
  setShowErrorDetails(true);
403931
403733
  setConstrainHeight(false);
@@ -403944,10 +403746,10 @@ ${queuedText}` : queuedText;
403944
403746
  appEvents.off("log-error" /* LogError */, logErrorHandler);
403945
403747
  };
403946
403748
  }, [handleNewMessage]);
403947
- const handleEscapePromptChange = (0, import_react134.useCallback)((showPrompt) => {
403749
+ const handleEscapePromptChange = (0, import_react133.useCallback)((showPrompt) => {
403948
403750
  setShowEscapePrompt(showPrompt);
403949
403751
  }, []);
403950
- const handleIdePromptComplete = (0, import_react134.useCallback)(
403752
+ const handleIdePromptComplete = (0, import_react133.useCallback)(
403951
403753
  (result) => {
403952
403754
  if (result.userSelection === "yes") {
403953
403755
  handleSlashCommand2("/ide install");
@@ -403982,10 +403784,9 @@ ${queuedText}` : queuedText;
403982
403784
  closeSettingsDialog,
403983
403785
  isFolderTrustDialogOpen,
403984
403786
  showWelcomeBackDialog,
403985
- handleWelcomeBackClose,
403986
- quitConfirmationRequest
403787
+ handleWelcomeBackClose
403987
403788
  });
403988
- const handleExit = (0, import_react134.useCallback)(
403789
+ const handleExit = (0, import_react133.useCallback)(
403989
403790
  (pressedOnce, setPressedOnce, timerRef) => {
403990
403791
  if (pressedOnce) {
403991
403792
  if (timerRef.current) {
@@ -403994,10 +403795,6 @@ ${queuedText}` : queuedText;
403994
403795
  handleSlashCommand2("/quit");
403995
403796
  return;
403996
403797
  }
403997
- if (quitConfirmationRequest) {
403998
- handleSlashCommand2("/quit");
403999
- return;
404000
- }
404001
403798
  if (isAuthDialogOpen) {
404002
403799
  setPressedOnce(true);
404003
403800
  timerRef.current = setTimeout(() => {
@@ -404016,7 +403813,10 @@ ${queuedText}` : queuedText;
404016
403813
  buffer.setText("");
404017
403814
  return;
404018
403815
  }
404019
- handleSlashCommand2("/quit-confirm");
403816
+ setPressedOnce(true);
403817
+ timerRef.current = setTimeout(() => {
403818
+ setPressedOnce(false);
403819
+ }, CTRL_EXIT_PROMPT_DURATION_MS);
404020
403820
  },
404021
403821
  [
404022
403822
  isAuthDialogOpen,
@@ -404024,11 +403824,10 @@ ${queuedText}` : queuedText;
404024
403824
  closeAnyOpenDialog,
404025
403825
  streamingState,
404026
403826
  cancelOngoingRequest,
404027
- quitConfirmationRequest,
404028
403827
  buffer
404029
403828
  ]
404030
403829
  );
404031
- const handleGlobalKeypress = (0, import_react134.useCallback)(
403830
+ const handleGlobalKeypress = (0, import_react133.useCallback)(
404032
403831
  (key) => {
404033
403832
  if (settings.merged.general?.debugKeystrokeLogging) {
404034
403833
  console.log("[DEBUG] Keystroke:", JSON.stringify(key));
@@ -404101,7 +403900,7 @@ ${queuedText}` : queuedText;
404101
403900
  ]
404102
403901
  );
404103
403902
  useKeypress(handleGlobalKeypress, { isActive: true });
404104
- (0, import_react134.useEffect)(() => {
403903
+ (0, import_react133.useEffect)(() => {
404105
403904
  if (!settings.merged.ui?.showStatusInTitle || settings.merged.ui?.hideWindowTitle)
404106
403905
  return;
404107
403906
  let title;
@@ -404123,23 +403922,23 @@ ${queuedText}` : queuedText;
404123
403922
  settings.merged.ui?.hideWindowTitle,
404124
403923
  stdout
404125
403924
  ]);
404126
- const filteredConsoleMessages = (0, import_react134.useMemo)(() => {
403925
+ const filteredConsoleMessages = (0, import_react133.useMemo)(() => {
404127
403926
  if (config2.getDebugMode()) {
404128
403927
  return consoleMessages;
404129
403928
  }
404130
403929
  return consoleMessages.filter((msg) => msg.type !== "debug");
404131
403930
  }, [consoleMessages, config2]);
404132
- const errorCount = (0, import_react134.useMemo)(
403931
+ const errorCount = (0, import_react133.useMemo)(
404133
403932
  () => filteredConsoleMessages.filter((msg) => msg.type === "error").reduce((total, msg) => total + msg.count, 0),
404134
403933
  [filteredConsoleMessages]
404135
403934
  );
404136
403935
  const nightly = props.version.includes("nightly");
404137
- const dialogsVisible = showWelcomeBackDialog || showWorkspaceMigrationDialog || shouldShowIdePrompt || isFolderTrustDialogOpen || !!shellConfirmationRequest || !!confirmationRequest || confirmUpdateExtensionRequests.length > 0 || !!loopDetectionConfirmationRequest || !!quitConfirmationRequest || isThemeDialogOpen || isSettingsDialogOpen || isModelDialogOpen || isVisionSwitchDialogOpen || isPermissionsDialogOpen || isAuthDialogOpen || isAuthenticating && isQwenAuthenticating || isEditorDialogOpen || showIdeRestartPrompt || !!proQuotaRequest || isSubagentCreateDialogOpen || isAgentsManagerDialogOpen || isApprovalModeDialogOpen;
404138
- const pendingHistoryItems = (0, import_react134.useMemo)(
403936
+ const dialogsVisible = showWelcomeBackDialog || showWorkspaceMigrationDialog || shouldShowIdePrompt || isFolderTrustDialogOpen || !!shellConfirmationRequest || !!confirmationRequest || confirmUpdateExtensionRequests.length > 0 || !!loopDetectionConfirmationRequest || isThemeDialogOpen || isSettingsDialogOpen || isModelDialogOpen || isVisionSwitchDialogOpen || isPermissionsDialogOpen || isAuthDialogOpen || isAuthenticating && isQwenAuthenticating || isEditorDialogOpen || showIdeRestartPrompt || !!proQuotaRequest || isSubagentCreateDialogOpen || isAgentsManagerDialogOpen || isApprovalModeDialogOpen;
403937
+ const pendingHistoryItems = (0, import_react133.useMemo)(
404139
403938
  () => [...pendingSlashCommandHistoryItems, ...pendingGeminiHistoryItems],
404140
403939
  [pendingSlashCommandHistoryItems, pendingGeminiHistoryItems]
404141
403940
  );
404142
- const uiState = (0, import_react134.useMemo)(
403941
+ const uiState = (0, import_react133.useMemo)(
404143
403942
  () => ({
404144
403943
  history: historyManager.history,
404145
403944
  historyManager,
@@ -404173,7 +403972,6 @@ ${queuedText}` : queuedText;
404173
403972
  confirmationRequest,
404174
403973
  confirmUpdateExtensionRequests,
404175
403974
  loopDetectionConfirmationRequest,
404176
- quitConfirmationRequest,
404177
403975
  geminiMdFileCount,
404178
403976
  streamingState,
404179
403977
  initError,
@@ -404270,7 +404068,6 @@ ${queuedText}` : queuedText;
404270
404068
  confirmationRequest,
404271
404069
  confirmUpdateExtensionRequests,
404272
404070
  loopDetectionConfirmationRequest,
404273
- quitConfirmationRequest,
404274
404071
  geminiMdFileCount,
404275
404072
  streamingState,
404276
404073
  initError,
@@ -404338,7 +404135,7 @@ ${queuedText}` : queuedText;
404338
404135
  isAgentsManagerDialogOpen
404339
404136
  ]
404340
404137
  );
404341
- const uiActions = (0, import_react134.useMemo)(
404138
+ const uiActions = (0, import_react133.useMemo)(
404342
404139
  () => ({
404343
404140
  handleThemeSelect,
404344
404141
  handleThemeHighlight,
@@ -404413,31 +404210,31 @@ ${queuedText}` : queuedText;
404413
404210
  ]
404414
404211
  );
404415
404212
  if (pendingAuthType === "xhs-sso" /* XHS_SSO */ && isAuthenticating) {
404416
- return /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Box_default, { flexDirection: "column", alignItems: "center", justifyContent: "center", children: [
404417
- /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { color: "cyan", children: "\u6B63\u5728\u8FDB\u884C\u5C0F\u7EA2\u4E66 SSO \u8BA4\u8BC1..." }),
404418
- /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Text3, { color: "gray", dimColor: true, children: [
404213
+ return /* @__PURE__ */ (0, import_jsx_runtime106.jsxs)(Box_default, { flexDirection: "column", alignItems: "center", justifyContent: "center", children: [
404214
+ /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(Text3, { color: "cyan", children: "\u6B63\u5728\u8FDB\u884C\u5C0F\u7EA2\u4E66 SSO \u8BA4\u8BC1..." }),
404215
+ /* @__PURE__ */ (0, import_jsx_runtime106.jsxs)(Text3, { color: "gray", dimColor: true, children: [
404419
404216
  " ",
404420
404217
  "\u8BF7\u5728\u6D4F\u89C8\u5668\u4E2D\u5B8C\u6210\u8BA4\u8BC1"
404421
404218
  ] })
404422
404219
  ] });
404423
404220
  }
404424
- return /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(UIStateContext.Provider, { value: uiState, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(UIActionsContext.Provider, { value: uiActions, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(ConfigContext.Provider, { value: config2, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
404221
+ return /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(UIStateContext.Provider, { value: uiState, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(UIActionsContext.Provider, { value: uiActions, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(ConfigContext.Provider, { value: config2, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(
404425
404222
  AppContext2.Provider,
404426
404223
  {
404427
404224
  value: {
404428
404225
  version: props.version,
404429
404226
  startupWarnings: props.startupWarnings || []
404430
404227
  },
404431
- children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(ShellFocusContext.Provider, { value: isFocused, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(App2, {}) })
404228
+ children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(ShellFocusContext.Provider, { value: isFocused, children: /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(App2, {}) })
404432
404229
  }
404433
404230
  ) }) }) });
404434
404231
  }, "AppContainer");
404435
404232
 
404436
404233
  // packages/cli/src/ui/hooks/useKittyKeyboardProtocol.ts
404437
404234
  init_esbuild_shims();
404438
- var import_react135 = __toESM(require_react(), 1);
404235
+ var import_react134 = __toESM(require_react(), 1);
404439
404236
  function useKittyKeyboardProtocol() {
404440
- const [status] = (0, import_react135.useState)({
404237
+ const [status] = (0, import_react134.useState)({
404441
404238
  supported: isKittyProtocolSupported(),
404442
404239
  enabled: isKittyProtocolEnabled(),
404443
404240
  checking: false
@@ -405463,9 +405260,9 @@ __name(validateNonInteractiveAuth, "validateNonInteractiveAuth");
405463
405260
 
405464
405261
  // packages/cli/src/ui/components/ResumeSessionPicker.tsx
405465
405262
  init_esbuild_shims();
405466
- var import_react136 = __toESM(require_react(), 1);
405263
+ var import_react135 = __toESM(require_react(), 1);
405467
405264
  init_core4();
405468
- var import_jsx_runtime108 = __toESM(require_jsx_runtime(), 1);
405265
+ var import_jsx_runtime107 = __toESM(require_jsx_runtime(), 1);
405469
405266
  var PAGE_SIZE = 20;
405470
405267
  function truncateText(text, maxWidth) {
405471
405268
  if (text.length <= maxWidth) return text;
@@ -405480,20 +405277,20 @@ function SessionPicker({
405480
405277
  onCancel
405481
405278
  }) {
405482
405279
  const { exit } = use_app_default();
405483
- const [selectedIndex, setSelectedIndex] = (0, import_react136.useState)(0);
405484
- const [sessionState, setSessionState] = (0, import_react136.useState)({
405280
+ const [selectedIndex, setSelectedIndex] = (0, import_react135.useState)(0);
405281
+ const [sessionState, setSessionState] = (0, import_react135.useState)({
405485
405282
  sessions: [],
405486
405283
  hasMore: true,
405487
405284
  nextCursor: void 0
405488
405285
  });
405489
- const isLoadingMoreRef = (0, import_react136.useRef)(false);
405490
- const [filterByBranch, setFilterByBranch] = (0, import_react136.useState)(false);
405491
- const [isExiting, setIsExiting] = (0, import_react136.useState)(false);
405492
- const [terminalSize, setTerminalSize] = (0, import_react136.useState)({
405286
+ const isLoadingMoreRef = (0, import_react135.useRef)(false);
405287
+ const [filterByBranch, setFilterByBranch] = (0, import_react135.useState)(false);
405288
+ const [isExiting, setIsExiting] = (0, import_react135.useState)(false);
405289
+ const [terminalSize, setTerminalSize] = (0, import_react135.useState)({
405493
405290
  width: process.stdout.columns || 80,
405494
405291
  height: process.stdout.rows || 24
405495
405292
  });
405496
- (0, import_react136.useEffect)(() => {
405293
+ (0, import_react135.useEffect)(() => {
405497
405294
  const handleResize = /* @__PURE__ */ __name(() => {
405498
405295
  setTerminalSize({
405499
405296
  width: process.stdout.columns || 80,
@@ -405509,10 +405306,10 @@ function SessionPicker({
405509
405306
  (session) => session.gitBranch === currentBranch
405510
405307
  ) : sessionState.sessions;
405511
405308
  const hasSentinel = sessionState.hasMore;
405512
- (0, import_react136.useEffect)(() => {
405309
+ (0, import_react135.useEffect)(() => {
405513
405310
  setSelectedIndex(0);
405514
405311
  }, [filterByBranch]);
405515
- const loadMoreSessions = (0, import_react136.useCallback)(async () => {
405312
+ const loadMoreSessions = (0, import_react135.useCallback)(async () => {
405516
405313
  if (!sessionState.hasMore || isLoadingMoreRef.current) return;
405517
405314
  isLoadingMoreRef.current = true;
405518
405315
  try {
@@ -405550,7 +405347,7 @@ function SessionPicker({
405550
405347
  const showScrollUp = scrollOffset > 0;
405551
405348
  const showScrollDown = scrollOffset + maxVisibleItems < filteredSessions.length;
405552
405349
  const sentinelVisible = hasSentinel && scrollOffset + maxVisibleItems >= filteredSessions.length;
405553
- (0, import_react136.useEffect)(() => {
405350
+ (0, import_react135.useEffect)(() => {
405554
405351
  if (!sessionState.hasMore || isLoadingMoreRef.current) return;
405555
405352
  const shouldLoadMore = filteredSessions.length === 0 || sentinelVisible || isLoadingMoreRef.current;
405556
405353
  if (shouldLoadMore) {
@@ -405601,7 +405398,7 @@ function SessionPicker({
405601
405398
  return;
405602
405399
  }
405603
405400
  });
405604
- (0, import_react136.useEffect)(() => {
405401
+ (0, import_react135.useEffect)(() => {
405605
405402
  if (selectedIndex >= filteredSessions.length && filteredSessions.length > 0) {
405606
405403
  setSelectedIndex(filteredSessions.length - 1);
405607
405404
  }
@@ -405609,16 +405406,16 @@ function SessionPicker({
405609
405406
  const contentWidth = terminalSize.width - 4;
405610
405407
  const promptMaxWidth = contentWidth - 4;
405611
405408
  if (isExiting) {
405612
- return /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Box_default, {});
405409
+ return /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, {});
405613
405410
  }
405614
- return /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
405411
+ return /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
405615
405412
  Box_default,
405616
405413
  {
405617
405414
  flexDirection: "column",
405618
405415
  width: terminalSize.width,
405619
405416
  height: terminalSize.height - 1,
405620
405417
  overflow: "hidden",
405621
- children: /* @__PURE__ */ (0, import_jsx_runtime108.jsxs)(
405418
+ children: /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(
405622
405419
  Box_default,
405623
405420
  {
405624
405421
  flexDirection: "column",
@@ -405628,9 +405425,9 @@ function SessionPicker({
405628
405425
  height: terminalSize.height - 1,
405629
405426
  overflow: "hidden",
405630
405427
  children: [
405631
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Box_default, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Text3, { bold: true, color: theme.text.primary, children: "Resume Session" }) }),
405632
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Text3, { color: theme.border.default, children: "\u2500".repeat(terminalSize.width - 2) }) }),
405633
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Box_default, { flexDirection: "column", flexGrow: 1, paddingX: 1, overflow: "hidden", children: filteredSessions.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Box_default, { paddingY: 1, justifyContent: "center", children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Text3, { color: theme.text.secondary, children: filterByBranch ? `No sessions found for branch "${currentBranch}"` : "No sessions found" }) }) : visibleSessions.map((session, visibleIndex) => {
405428
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { bold: true, color: theme.text.primary, children: "Resume Session" }) }),
405429
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { color: theme.border.default, children: "\u2500".repeat(terminalSize.width - 2) }) }),
405430
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { flexDirection: "column", flexGrow: 1, paddingX: 1, overflow: "hidden", children: filteredSessions.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { paddingY: 1, justifyContent: "center", children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { color: theme.text.secondary, children: filterByBranch ? `No sessions found for branch "${currentBranch}"` : "No sessions found" }) }) : visibleSessions.map((session, visibleIndex) => {
405634
405431
  const actualIndex = scrollOffset + visibleIndex;
405635
405432
  const isSelected = actualIndex === selectedIndex;
405636
405433
  const isFirst = visibleIndex === 0;
@@ -405640,21 +405437,21 @@ function SessionPicker({
405640
405437
  const showUpIndicator = isFirst && showScrollUp;
405641
405438
  const showDownIndicator = isLast && showScrollDown;
405642
405439
  const prefix = isSelected ? "\u203A " : showUpIndicator ? "\u2191 " : showDownIndicator ? "\u2193 " : " ";
405643
- return /* @__PURE__ */ (0, import_jsx_runtime108.jsxs)(
405440
+ return /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(
405644
405441
  Box_default,
405645
405442
  {
405646
405443
  flexDirection: "column",
405647
405444
  marginBottom: isLast ? 0 : 1,
405648
405445
  children: [
405649
- /* @__PURE__ */ (0, import_jsx_runtime108.jsxs)(Box_default, { children: [
405650
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
405446
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Box_default, { children: [
405447
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
405651
405448
  Text3,
405652
405449
  {
405653
405450
  color: isSelected ? theme.text.accent : showUpIndicator || showDownIndicator ? theme.text.secondary : void 0,
405654
405451
  children: prefix
405655
405452
  }
405656
405453
  ),
405657
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
405454
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
405658
405455
  Text3,
405659
405456
  {
405660
405457
  bold: isSelected,
@@ -405666,9 +405463,9 @@ function SessionPicker({
405666
405463
  }
405667
405464
  )
405668
405465
  ] }),
405669
- /* @__PURE__ */ (0, import_jsx_runtime108.jsxs)(Box_default, { children: [
405670
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Text3, { children: " " }),
405671
- /* @__PURE__ */ (0, import_jsx_runtime108.jsxs)(Text3, { color: theme.text.secondary, children: [
405466
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Box_default, { children: [
405467
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { children: " " }),
405468
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Text3, { color: theme.text.secondary, children: [
405672
405469
  timeAgo,
405673
405470
  " \xB7 ",
405674
405471
  messageText,
@@ -405680,10 +405477,10 @@ function SessionPicker({
405680
405477
  session.sessionId
405681
405478
  );
405682
405479
  }) }),
405683
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Text3, { color: theme.border.default, children: "\u2500".repeat(terminalSize.width - 2) }) }),
405684
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(Box_default, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsxs)(Text3, { color: theme.text.secondary, children: [
405685
- currentBranch && /* @__PURE__ */ (0, import_jsx_runtime108.jsxs)(import_jsx_runtime108.Fragment, { children: [
405686
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
405480
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { children: /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Text3, { color: theme.border.default, children: "\u2500".repeat(terminalSize.width - 2) }) }),
405481
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(Box_default, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(Text3, { color: theme.text.secondary, children: [
405482
+ currentBranch && /* @__PURE__ */ (0, import_jsx_runtime107.jsxs)(import_jsx_runtime107.Fragment, { children: [
405483
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
405687
405484
  Text3,
405688
405485
  {
405689
405486
  bold: filterByBranch,
@@ -405722,7 +405519,7 @@ async function showResumeSessionPicker(cwd7 = process.cwd()) {
405722
405519
  return new Promise((resolve26) => {
405723
405520
  let selectedId;
405724
405521
  const { unmount, waitUntilExit } = render_default(
405725
- /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
405522
+ /* @__PURE__ */ (0, import_jsx_runtime107.jsx)(
405726
405523
  SessionPicker,
405727
405524
  {
405728
405525
  sessionService,
@@ -407852,7 +407649,7 @@ var GeminiAgent = class {
407852
407649
  name: APPROVAL_MODE_INFO[mode].name,
407853
407650
  description: APPROVAL_MODE_INFO[mode].description
407854
407651
  }));
407855
- const version3 = "0.1.3-alpha.3";
407652
+ const version3 = "0.1.3-alpha.5";
407856
407653
  return {
407857
407654
  protocolVersion: PROTOCOL_VERSION,
407858
407655
  agentInfo: {
@@ -408039,7 +407836,7 @@ var GeminiAgent = class {
408039
407836
  };
408040
407837
 
408041
407838
  // packages/cli/src/gemini.tsx
408042
- var import_jsx_runtime109 = __toESM(require_jsx_runtime(), 1);
407839
+ var import_jsx_runtime108 = __toESM(require_jsx_runtime(), 1);
408043
407840
  function validateDnsResolutionOrder(order) {
408044
407841
  const defaultValue = "ipv4first";
408045
407842
  if (order === void 0) {
@@ -408104,14 +407901,14 @@ async function startInteractiveUI(config2, settings, startupWarnings, workspaceR
408104
407901
  const AppWrapper = /* @__PURE__ */ __name(() => {
408105
407902
  const kittyProtocolStatus = useKittyKeyboardProtocol();
408106
407903
  const nodeMajorVersion = parseInt(process.versions.node.split(".")[0], 10);
408107
- return /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(SettingsContext.Provider, { value: settings, children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
407904
+ return /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(SettingsContext.Provider, { value: settings, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
408108
407905
  KeypressProvider,
408109
407906
  {
408110
407907
  kittyProtocolEnabled: kittyProtocolStatus.enabled,
408111
407908
  config: config2,
408112
407909
  debugKeystrokeLogging: settings.merged.general?.debugKeystrokeLogging,
408113
407910
  pasteWorkaround: process.platform === "win32" || nodeMajorVersion < 20,
408114
- children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(SessionStatsProvider, { sessionId: config2.getSessionId(), children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(VimModeProvider, { settings, children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(
407911
+ children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(SessionStatsProvider, { sessionId: config2.getSessionId(), children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(VimModeProvider, { settings, children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(
408115
407912
  AppContainer,
408116
407913
  {
408117
407914
  config: config2,
@@ -408125,7 +407922,7 @@ async function startInteractiveUI(config2, settings, startupWarnings, workspaceR
408125
407922
  ) });
408126
407923
  }, "AppWrapper");
408127
407924
  const instance = render_default(
408128
- process.env["DEBUG"] ? /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(import_react137.default.StrictMode, { children: /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(AppWrapper, {}) }) : /* @__PURE__ */ (0, import_jsx_runtime109.jsx)(AppWrapper, {}),
407925
+ process.env["DEBUG"] ? /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(import_react136.default.StrictMode, { children: /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(AppWrapper, {}) }) : /* @__PURE__ */ (0, import_jsx_runtime108.jsx)(AppWrapper, {}),
408129
407926
  {
408130
407927
  exitOnCtrlC: false,
408131
407928
  isScreenReaderEnabled: config2.getScreenReader()
@@ -408358,7 +408155,7 @@ ${input}`;
408358
408155
  }
408359
408156
  }
408360
408157
  const nonInteractiveConfig = await validateNonInteractiveAuth(
408361
- settings.merged.security?.auth?.selectedType || argv.authType,
408158
+ argv.authType || settings.merged.security?.auth?.selectedType,
408362
408159
  settings.merged.security?.auth?.useExternal,
408363
408160
  config2,
408364
408161
  settings