@google/gemini-cli 0.1.15 → 0.1.16-nightly.250805.99ba2f64

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/README.md +32 -0
  2. package/dist/google-gemini-cli-0.1.16.tgz +0 -0
  3. package/dist/package.json +2 -2
  4. package/dist/src/config/config.d.ts +3 -2
  5. package/dist/src/config/config.js +38 -17
  6. package/dist/src/config/config.js.map +1 -1
  7. package/dist/src/config/extension.d.ts +1 -0
  8. package/dist/src/config/extension.js +4 -0
  9. package/dist/src/config/extension.js.map +1 -1
  10. package/dist/src/config/settings.d.ts +13 -1
  11. package/dist/src/config/settings.js +84 -23
  12. package/dist/src/config/settings.js.map +1 -1
  13. package/dist/src/gemini.d.ts +2 -0
  14. package/dist/src/gemini.js +30 -3
  15. package/dist/src/gemini.js.map +1 -1
  16. package/dist/src/generated/git-commit.d.ts +1 -1
  17. package/dist/src/generated/git-commit.js +1 -1
  18. package/dist/src/nonInteractiveCli.js +15 -40
  19. package/dist/src/nonInteractiveCli.js.map +1 -1
  20. package/dist/src/services/BuiltinCommandLoader.js +8 -1
  21. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  22. package/dist/src/services/CommandService.d.ts +8 -4
  23. package/dist/src/services/CommandService.js +24 -8
  24. package/dist/src/services/CommandService.js.map +1 -1
  25. package/dist/src/services/FileCommandLoader.d.ts +15 -3
  26. package/dist/src/services/FileCommandLoader.js +64 -35
  27. package/dist/src/services/FileCommandLoader.js.map +1 -1
  28. package/dist/src/ui/App.js +32 -21
  29. package/dist/src/ui/App.js.map +1 -1
  30. package/dist/src/ui/commands/chatCommand.js +39 -1
  31. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  32. package/dist/src/ui/commands/directoryCommand.d.ts +8 -0
  33. package/dist/src/ui/commands/directoryCommand.js +116 -0
  34. package/dist/src/ui/commands/directoryCommand.js.map +1 -0
  35. package/dist/src/ui/commands/helpCommand.js +7 -6
  36. package/dist/src/ui/commands/helpCommand.js.map +1 -1
  37. package/dist/src/ui/commands/ideCommand.js +113 -105
  38. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  39. package/dist/src/ui/commands/initCommand.d.ts +7 -0
  40. package/dist/src/ui/commands/initCommand.js +76 -0
  41. package/dist/src/ui/commands/initCommand.js.map +1 -0
  42. package/dist/src/ui/commands/mcpCommand.js +15 -20
  43. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  44. package/dist/src/ui/commands/memoryCommand.js +2 -1
  45. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  46. package/dist/src/ui/commands/setupGithubCommand.d.ts +7 -0
  47. package/dist/src/ui/commands/setupGithubCommand.js +48 -0
  48. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -0
  49. package/dist/src/ui/commands/types.d.ts +2 -1
  50. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +2 -2
  51. package/dist/src/ui/components/ContextSummaryDisplay.js +8 -8
  52. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  53. package/dist/src/ui/components/DebugProfiler.d.ts +6 -0
  54. package/dist/src/ui/components/DebugProfiler.js +26 -0
  55. package/dist/src/ui/components/DebugProfiler.js.map +1 -0
  56. package/dist/src/ui/components/Footer.js +3 -2
  57. package/dist/src/ui/components/Footer.js.map +1 -1
  58. package/dist/src/ui/components/Help.js +2 -2
  59. package/dist/src/ui/components/Help.js.map +1 -1
  60. package/dist/src/ui/components/HistoryItemDisplay.d.ts +2 -0
  61. package/dist/src/ui/components/HistoryItemDisplay.js +2 -1
  62. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  63. package/dist/src/ui/components/IDEContextDetailDisplay.d.ts +4 -3
  64. package/dist/src/ui/components/IDEContextDetailDisplay.js +6 -13
  65. package/dist/src/ui/components/IDEContextDetailDisplay.js.map +1 -1
  66. package/dist/src/ui/components/InputPrompt.js +83 -7
  67. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  68. package/dist/src/ui/components/PrepareLabel.d.ts +15 -0
  69. package/dist/src/ui/components/PrepareLabel.js +16 -0
  70. package/dist/src/ui/components/PrepareLabel.js.map +1 -0
  71. package/dist/src/ui/components/SuggestionsDisplay.d.ts +1 -0
  72. package/dist/src/ui/components/SuggestionsDisplay.js +3 -3
  73. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  74. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +15 -4
  75. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  76. package/dist/src/ui/components/messages/UserMessage.js +4 -1
  77. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  78. package/dist/src/ui/components/shared/text-buffer.js +9 -14
  79. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  80. package/dist/src/ui/editors/editorSettingsManager.js +6 -13
  81. package/dist/src/ui/editors/editorSettingsManager.js.map +1 -1
  82. package/dist/src/ui/hooks/atCommandProcessor.js +67 -52
  83. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  84. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +1 -1
  85. package/dist/src/ui/hooks/slashCommandProcessor.js +19 -7
  86. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  87. package/dist/src/ui/hooks/useCommandCompletion.d.ts +24 -0
  88. package/dist/src/ui/hooks/useCommandCompletion.js +453 -0
  89. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -0
  90. package/dist/src/ui/hooks/useCompletion.d.ts +5 -5
  91. package/dist/src/ui/hooks/useCompletion.js +7 -407
  92. package/dist/src/ui/hooks/useCompletion.js.map +1 -1
  93. package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
  94. package/dist/src/ui/hooks/useGeminiStream.js +6 -5
  95. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  96. package/dist/src/ui/hooks/usePhraseCycler.js +1 -0
  97. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  98. package/dist/src/ui/hooks/useReactToolScheduler.js +0 -1
  99. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  100. package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +19 -0
  101. package/dist/src/ui/hooks/useReverseSearchCompletion.js +54 -0
  102. package/dist/src/ui/hooks/useReverseSearchCompletion.js.map +1 -0
  103. package/dist/src/ui/hooks/useShellHistory.d.ts +1 -0
  104. package/dist/src/ui/hooks/useShellHistory.js +30 -7
  105. package/dist/src/ui/hooks/useShellHistory.js.map +1 -1
  106. package/dist/src/ui/types.d.ts +10 -1
  107. package/dist/src/ui/types.js +1 -0
  108. package/dist/src/ui/types.js.map +1 -1
  109. package/dist/src/ui/utils/updateCheck.d.ts +7 -1
  110. package/dist/src/ui/utils/updateCheck.js +46 -8
  111. package/dist/src/ui/utils/updateCheck.js.map +1 -1
  112. package/dist/src/utils/gitUtils.d.ts +10 -0
  113. package/dist/src/utils/gitUtils.js +24 -0
  114. package/dist/src/utils/gitUtils.js.map +1 -0
  115. package/dist/src/utils/handleAutoUpdate.d.ts +11 -0
  116. package/dist/src/utils/handleAutoUpdate.js +101 -0
  117. package/dist/src/utils/handleAutoUpdate.js.map +1 -0
  118. package/dist/src/utils/installationInfo.d.ts +23 -0
  119. package/dist/src/utils/installationInfo.js +154 -0
  120. package/dist/src/utils/installationInfo.js.map +1 -0
  121. package/dist/src/utils/sandbox-macos-permissive-closed.sb +6 -0
  122. package/dist/src/utils/sandbox-macos-permissive-open.sb +6 -0
  123. package/dist/src/utils/sandbox-macos-permissive-proxied.sb +6 -0
  124. package/dist/src/utils/sandbox-macos-restrictive-closed.sb +6 -0
  125. package/dist/src/utils/sandbox-macos-restrictive-open.sb +6 -0
  126. package/dist/src/utils/sandbox-macos-restrictive-proxied.sb +6 -0
  127. package/dist/src/utils/sandbox.d.ts +2 -2
  128. package/dist/src/utils/sandbox.js +35 -11
  129. package/dist/src/utils/sandbox.js.map +1 -1
  130. package/dist/src/utils/spawnWrapper.d.ts +7 -0
  131. package/dist/src/utils/spawnWrapper.js +8 -0
  132. package/dist/src/utils/spawnWrapper.js.map +1 -0
  133. package/dist/src/utils/updateEventEmitter.d.ts +11 -0
  134. package/dist/src/utils/updateEventEmitter.js +12 -0
  135. package/dist/src/utils/updateEventEmitter.js.map +1 -0
  136. package/dist/src/validateNonInterActiveAuth.d.ts +1 -1
  137. package/dist/src/validateNonInterActiveAuth.js +7 -5
  138. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  139. package/dist/tsconfig.tsbuildinfo +1 -1
  140. package/package.json +3 -3
  141. package/dist/google-gemini-cli-0.1.13.tgz +0 -0
@@ -1,21 +1,21 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { Text } from 'ink';
3
3
  import { Colors } from '../colors.js';
4
- export const ContextSummaryDisplay = ({ geminiMdFileCount, contextFileNames, mcpServers, blockedMcpServers, showToolDescriptions, openFiles, }) => {
4
+ export const ContextSummaryDisplay = ({ geminiMdFileCount, contextFileNames, mcpServers, blockedMcpServers, showToolDescriptions, ideContext, }) => {
5
5
  const mcpServerCount = Object.keys(mcpServers || {}).length;
6
6
  const blockedMcpServerCount = blockedMcpServers?.length || 0;
7
+ const openFileCount = ideContext?.workspaceState?.openFiles?.length ?? 0;
7
8
  if (geminiMdFileCount === 0 &&
8
9
  mcpServerCount === 0 &&
9
10
  blockedMcpServerCount === 0 &&
10
- (openFiles?.recentOpenFiles?.length ?? 0) === 0) {
11
+ openFileCount === 0) {
11
12
  return _jsx(Text, { children: " " }); // Render an empty space to reserve height
12
13
  }
13
- const recentFilesText = (() => {
14
- const count = openFiles?.recentOpenFiles?.length ?? 0;
15
- if (count === 0) {
14
+ const openFilesText = (() => {
15
+ if (openFileCount === 0) {
16
16
  return '';
17
17
  }
18
- return `${count} recent file${count > 1 ? 's' : ''} (ctrl+e to view)`;
18
+ return `${openFileCount} open file${openFileCount > 1 ? 's' : ''} (ctrl+e to view)`;
19
19
  })();
20
20
  const geminiMdText = (() => {
21
21
  if (geminiMdFileCount === 0) {
@@ -44,8 +44,8 @@ export const ContextSummaryDisplay = ({ geminiMdFileCount, contextFileNames, mcp
44
44
  })();
45
45
  let summaryText = 'Using: ';
46
46
  const summaryParts = [];
47
- if (recentFilesText) {
48
- summaryParts.push(recentFilesText);
47
+ if (openFilesText) {
48
+ summaryParts.push(openFilesText);
49
49
  }
50
50
  if (geminiMdText) {
51
51
  summaryParts.push(geminiMdText);
@@ -1 +1 @@
1
- {"version":3,"file":"ContextSummaryDisplay.js","sourceRoot":"","sources":["../../../../src/ui/components/ContextSummaryDisplay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContextSummaryDisplay.js","sourceRoot":"","sources":["../../../../src/ui/components/ContextSummaryDisplay.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export declare const DebugProfiler: () => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,26 @@
1
+ import { jsxs as _jsxs } from "react/jsx-runtime";
2
+ /**
3
+ * @license
4
+ * Copyright 2025 Google LLC
5
+ * SPDX-License-Identifier: Apache-2.0
6
+ */
7
+ import { Text, useInput } from 'ink';
8
+ import { useEffect, useRef, useState } from 'react';
9
+ import { Colors } from '../colors.js';
10
+ export const DebugProfiler = () => {
11
+ const numRenders = useRef(0);
12
+ const [showNumRenders, setShowNumRenders] = useState(false);
13
+ useEffect(() => {
14
+ numRenders.current++;
15
+ });
16
+ useInput((input, key) => {
17
+ if (key.ctrl && input === 'b') {
18
+ setShowNumRenders((prev) => !prev);
19
+ }
20
+ });
21
+ if (!showNumRenders) {
22
+ return null;
23
+ }
24
+ return (_jsxs(Text, { color: Colors.AccentYellow, children: ["Renders: ", numRenders.current, " "] }));
25
+ };
26
+ //# sourceMappingURL=DebugProfiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DebugProfiler.js","sourceRoot":"","sources":["../../../../src/ui/components/DebugProfiler.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAC9B,iBAAiB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,YAAY,0BAAY,UAAU,CAAC,OAAO,SAAS,CACxE,CAAC;AACJ,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Box, Text } from 'ink';
3
3
  import { Colors } from '../colors.js';
4
4
  import { shortenPath, tildeifyPath, tokenLimit } from '@google/gemini-cli-core';
@@ -6,9 +6,10 @@ import { ConsoleSummaryDisplay } from './ConsoleSummaryDisplay.js';
6
6
  import process from 'node:process';
7
7
  import Gradient from 'ink-gradient';
8
8
  import { MemoryUsageDisplay } from './MemoryUsageDisplay.js';
9
+ import { DebugProfiler } from './DebugProfiler.js';
9
10
  export const Footer = ({ model, targetDir, branchName, debugMode, debugMessage, corgiMode, errorCount, showErrorDetails, showMemoryUsage, promptTokenCount, nightly, vimMode, }) => {
10
11
  const limit = tokenLimit(model);
11
12
  const percentage = promptTokenCount / limit;
12
- return (_jsxs(Box, { justifyContent: "space-between", width: "100%", children: [_jsxs(Box, { children: [vimMode && _jsxs(Text, { color: Colors.Gray, children: ["[", vimMode, "] "] }), nightly ? (_jsx(Gradient, { colors: Colors.GradientColors, children: _jsxs(Text, { children: [shortenPath(tildeifyPath(targetDir), 70), branchName && _jsxs(Text, { children: [" (", branchName, "*)"] })] }) })) : (_jsxs(Text, { color: Colors.LightBlue, children: [shortenPath(tildeifyPath(targetDir), 70), branchName && _jsxs(Text, { color: Colors.Gray, children: [" (", branchName, "*)"] })] })), debugMode && (_jsx(Text, { color: Colors.AccentRed, children: ' ' + (debugMessage || '--debug') }))] }), _jsx(Box, { flexGrow: 1, alignItems: "center", justifyContent: "center", display: "flex", children: process.env.SANDBOX && process.env.SANDBOX !== 'sandbox-exec' ? (_jsx(Text, { color: "green", children: process.env.SANDBOX.replace(/^gemini-(?:cli-)?/, '') })) : process.env.SANDBOX === 'sandbox-exec' ? (_jsxs(Text, { color: Colors.AccentYellow, children: ["macOS Seatbelt", ' ', _jsxs(Text, { color: Colors.Gray, children: ["(", process.env.SEATBELT_PROFILE, ")"] })] })) : (_jsxs(Text, { color: Colors.AccentRed, children: ["no sandbox ", _jsx(Text, { color: Colors.Gray, children: "(see /docs)" })] })) }), _jsxs(Box, { alignItems: "center", children: [_jsxs(Text, { color: Colors.AccentBlue, children: [' ', model, ' ', _jsxs(Text, { color: Colors.Gray, children: ["(", ((1 - percentage) * 100).toFixed(0), "% context left)"] })] }), corgiMode && (_jsxs(Text, { children: [_jsx(Text, { color: Colors.Gray, children: "| " }), _jsx(Text, { color: Colors.AccentRed, children: "\u25BC" }), _jsx(Text, { color: Colors.Foreground, children: "(\u00B4" }), _jsx(Text, { color: Colors.AccentRed, children: "\u1D25" }), _jsx(Text, { color: Colors.Foreground, children: "`)" }), _jsx(Text, { color: Colors.AccentRed, children: "\u25BC " })] })), !showErrorDetails && errorCount > 0 && (_jsxs(Box, { children: [_jsx(Text, { color: Colors.Gray, children: "| " }), _jsx(ConsoleSummaryDisplay, { errorCount: errorCount })] })), showMemoryUsage && _jsx(MemoryUsageDisplay, {})] })] }));
13
+ return (_jsxs(Box, { justifyContent: "space-between", width: "100%", children: [_jsxs(Box, { children: [debugMode && _jsx(DebugProfiler, {}), vimMode && _jsxs(Text, { color: Colors.Gray, children: ["[", vimMode, "] "] }), nightly ? (_jsx(Gradient, { colors: Colors.GradientColors, children: _jsxs(Text, { children: [shortenPath(tildeifyPath(targetDir), 70), branchName && _jsxs(Text, { children: [" (", branchName, "*)"] })] }) })) : (_jsxs(Text, { color: Colors.LightBlue, children: [shortenPath(tildeifyPath(targetDir), 70), branchName && _jsxs(Text, { color: Colors.Gray, children: [" (", branchName, "*)"] })] })), debugMode && (_jsx(Text, { color: Colors.AccentRed, children: ' ' + (debugMessage || '--debug') }))] }), _jsx(Box, { flexGrow: 1, alignItems: "center", justifyContent: "center", display: "flex", children: process.env.SANDBOX && process.env.SANDBOX !== 'sandbox-exec' ? (_jsx(Text, { color: "green", children: process.env.SANDBOX.replace(/^gemini-(?:cli-)?/, '') })) : process.env.SANDBOX === 'sandbox-exec' ? (_jsxs(Text, { color: Colors.AccentYellow, children: ["macOS Seatbelt", ' ', _jsxs(Text, { color: Colors.Gray, children: ["(", process.env.SEATBELT_PROFILE, ")"] })] })) : (_jsxs(Text, { color: Colors.AccentRed, children: ["no sandbox ", _jsx(Text, { color: Colors.Gray, children: "(see /docs)" })] })) }), _jsxs(Box, { alignItems: "center", children: [_jsxs(Text, { color: Colors.AccentBlue, children: [' ', model, ' ', _jsxs(Text, { color: Colors.Gray, children: ["(", ((1 - percentage) * 100).toFixed(0), "% context left)"] })] }), corgiMode && (_jsxs(Text, { children: [_jsx(Text, { color: Colors.Gray, children: "| " }), _jsx(Text, { color: Colors.AccentRed, children: "\u25BC" }), _jsx(Text, { color: Colors.Foreground, children: "(\u00B4" }), _jsx(Text, { color: Colors.AccentRed, children: "\u1D25" }), _jsx(Text, { color: Colors.Foreground, children: "`)" }), _jsx(Text, { color: Colors.AccentRed, children: "\u25BC " })] })), !showErrorDetails && errorCount > 0 && (_jsxs(Box, { children: [_jsx(Text, { color: Colors.Gray, children: "| " }), _jsx(ConsoleSummaryDisplay, { errorCount: errorCount })] })), showMemoryUsage && _jsx(MemoryUsageDisplay, {})] })] }));
13
14
  };
14
15
  //# sourceMappingURL=Footer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.js","sourceRoot":"","sources":["../../../../src/ui/components/Footer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Footer.js","sourceRoot":"","sources":["../../../../src/ui/components/Footer.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { Colors } from '../colors.js';
4
4
  export const Help = ({ commands }) => (_jsxs(Box, { flexDirection: "column", marginBottom: 1, borderColor: Colors.Gray, borderStyle: "round", padding: 1, children: [_jsx(Text, { bold: true, color: Colors.Foreground, children: "Basics:" }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Add context" }), ": Use", ' ', _jsx(Text, { bold: true, color: Colors.AccentPurple, children: "@" }), ' ', "to specify files for context (e.g.,", ' ', _jsx(Text, { bold: true, color: Colors.AccentPurple, children: "@src/myFile.ts" }), ") to target specific files or folders."] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Shell mode" }), ": Execute shell commands via", ' ', _jsx(Text, { bold: true, color: Colors.AccentPurple, children: "!" }), ' ', "(e.g.,", ' ', _jsx(Text, { bold: true, color: Colors.AccentPurple, children: "!npm run start" }), ") or use natural language (e.g.", ' ', _jsx(Text, { bold: true, color: Colors.AccentPurple, children: "start server" }), ")."] }), _jsx(Box, { height: 1 }), _jsx(Text, { bold: true, color: Colors.Foreground, children: "Commands:" }), commands
5
5
  .filter((command) => command.description)
6
6
  .map((command) => (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: Colors.Foreground, children: [_jsxs(Text, { bold: true, color: Colors.AccentPurple, children: [' ', "/", command.name] }), command.description && ' - ' + command.description] }), command.subCommands &&
7
- command.subCommands.map((subCommand) => (_jsxs(Text, { color: Colors.Foreground, children: [_jsxs(Text, { bold: true, color: Colors.AccentPurple, children: [' ', subCommand.name] }), subCommand.description && ' - ' + subCommand.description] }, subCommand.name)))] }, command.name))), _jsxs(Text, { color: Colors.Foreground, children: [_jsxs(Text, { bold: true, color: Colors.AccentPurple, children: [' ', "!", ' '] }), "- shell command"] }), _jsx(Box, { height: 1 }), _jsx(Text, { bold: true, color: Colors.Foreground, children: "Keyboard Shortcuts:" }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Enter" }), ' ', "- Send message"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: process.platform === 'win32' ? 'Ctrl+Enter' : 'Ctrl+J' }), ' ', process.platform === 'linux'
7
+ command.subCommands.map((subCommand) => (_jsxs(Text, { color: Colors.Foreground, children: [_jsxs(Text, { bold: true, color: Colors.AccentPurple, children: [' ', subCommand.name] }), subCommand.description && ' - ' + subCommand.description] }, subCommand.name)))] }, command.name))), _jsxs(Text, { color: Colors.Foreground, children: [_jsxs(Text, { bold: true, color: Colors.AccentPurple, children: [' ', "!", ' '] }), "- shell command"] }), _jsx(Box, { height: 1 }), _jsx(Text, { bold: true, color: Colors.Foreground, children: "Keyboard Shortcuts:" }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Alt+Left/Right" }), ' ', "- Jump through words in the input"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Ctrl+C" }), ' ', "- Quit application"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: process.platform === 'win32' ? 'Ctrl+Enter' : 'Ctrl+J' }), ' ', process.platform === 'linux'
8
8
  ? '- New line (Alt+Enter works for certain linux distros)'
9
- : '- New line'] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Up/Down" }), ' ', "- Cycle through your prompt history"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Alt+Left/Right" }), ' ', "- Jump through words in the input"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Shift+Tab" }), ' ', "- Toggle auto-accepting edits"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Ctrl+Y" }), ' ', "- Toggle YOLO mode"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Esc" }), ' ', "- Cancel operation"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Ctrl+C" }), ' ', "- Quit application"] })] }));
9
+ : '- New line'] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Ctrl+L" }), ' ', "- Clear the screen"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: process.platform === 'darwin' ? 'Ctrl+X / Meta+Enter' : 'Ctrl+X' }), ' ', "- Open input in external editor"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Ctrl+Y" }), ' ', "- Toggle YOLO mode"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Enter" }), ' ', "- Send message"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Esc" }), ' ', "- Cancel operation"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Shift+Tab" }), ' ', "- Toggle auto-accepting edits"] }), _jsxs(Text, { color: Colors.Foreground, children: [_jsx(Text, { bold: true, color: Colors.AccentPurple, children: "Up/Down" }), ' ', "- Cycle through your prompt history"] }), _jsx(Box, { height: 1 }), _jsxs(Text, { color: Colors.Foreground, children: ["For a full list of shortcuts, see", ' ', _jsx(Text, { bold: true, color: Colors.AccentPurple, children: "docs/keyboard-shortcuts.md" })] })] }));
10
10
  //# sourceMappingURL=Help.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Help.js","sourceRoot":"","sources":["../../../../src/ui/components/Help.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Help.js","sourceRoot":"","sources":["../../../../src/ui/components/Help.tsx"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@
6
6
  import React from 'react';
7
7
  import type { HistoryItem } from '../types.js';
8
8
  import { Config } from '@google/gemini-cli-core';
9
+ import { SlashCommand } from '../commands/types.js';
9
10
  interface HistoryItemDisplayProps {
10
11
  item: HistoryItem;
11
12
  availableTerminalHeight?: number;
@@ -13,6 +14,7 @@ interface HistoryItemDisplayProps {
13
14
  isPending: boolean;
14
15
  config?: Config;
15
16
  isFocused?: boolean;
17
+ commands?: readonly SlashCommand[];
16
18
  }
17
19
  export declare const HistoryItemDisplay: React.FC<HistoryItemDisplayProps>;
18
20
  export {};
@@ -13,5 +13,6 @@ import { StatsDisplay } from './StatsDisplay.js';
13
13
  import { ModelStatsDisplay } from './ModelStatsDisplay.js';
14
14
  import { ToolStatsDisplay } from './ToolStatsDisplay.js';
15
15
  import { SessionSummaryDisplay } from './SessionSummaryDisplay.js';
16
- export const HistoryItemDisplay = ({ item, availableTerminalHeight, terminalWidth, isPending, config, isFocused = true, }) => (_jsxs(Box, { flexDirection: "column", children: [item.type === 'user' && _jsx(UserMessage, { text: item.text }), item.type === 'user_shell' && _jsx(UserShellMessage, { text: item.text }), item.type === 'gemini' && (_jsx(GeminiMessage, { text: item.text, isPending: isPending, availableTerminalHeight: availableTerminalHeight, terminalWidth: terminalWidth })), item.type === 'gemini_content' && (_jsx(GeminiMessageContent, { text: item.text, isPending: isPending, availableTerminalHeight: availableTerminalHeight, terminalWidth: terminalWidth })), item.type === 'info' && _jsx(InfoMessage, { text: item.text }), item.type === 'error' && _jsx(ErrorMessage, { text: item.text }), item.type === 'about' && (_jsx(AboutBox, { cliVersion: item.cliVersion, osVersion: item.osVersion, sandboxEnv: item.sandboxEnv, modelVersion: item.modelVersion, selectedAuthType: item.selectedAuthType, gcpProject: item.gcpProject })), item.type === 'stats' && _jsx(StatsDisplay, { duration: item.duration }), item.type === 'model_stats' && _jsx(ModelStatsDisplay, {}), item.type === 'tool_stats' && _jsx(ToolStatsDisplay, {}), item.type === 'quit' && _jsx(SessionSummaryDisplay, { duration: item.duration }), item.type === 'tool_group' && (_jsx(ToolGroupMessage, { toolCalls: item.tools, groupId: item.id, availableTerminalHeight: availableTerminalHeight, terminalWidth: terminalWidth, config: config, isFocused: isFocused })), item.type === 'compression' && (_jsx(CompressionMessage, { compression: item.compression }))] }, item.id));
16
+ import { Help } from './Help.js';
17
+ export const HistoryItemDisplay = ({ item, availableTerminalHeight, terminalWidth, isPending, config, commands, isFocused = true, }) => (_jsxs(Box, { flexDirection: "column", children: [item.type === 'user' && _jsx(UserMessage, { text: item.text }), item.type === 'user_shell' && _jsx(UserShellMessage, { text: item.text }), item.type === 'gemini' && (_jsx(GeminiMessage, { text: item.text, isPending: isPending, availableTerminalHeight: availableTerminalHeight, terminalWidth: terminalWidth })), item.type === 'gemini_content' && (_jsx(GeminiMessageContent, { text: item.text, isPending: isPending, availableTerminalHeight: availableTerminalHeight, terminalWidth: terminalWidth })), item.type === 'info' && _jsx(InfoMessage, { text: item.text }), item.type === 'error' && _jsx(ErrorMessage, { text: item.text }), item.type === 'about' && (_jsx(AboutBox, { cliVersion: item.cliVersion, osVersion: item.osVersion, sandboxEnv: item.sandboxEnv, modelVersion: item.modelVersion, selectedAuthType: item.selectedAuthType, gcpProject: item.gcpProject })), item.type === 'help' && commands && _jsx(Help, { commands: commands }), item.type === 'stats' && _jsx(StatsDisplay, { duration: item.duration }), item.type === 'model_stats' && _jsx(ModelStatsDisplay, {}), item.type === 'tool_stats' && _jsx(ToolStatsDisplay, {}), item.type === 'quit' && _jsx(SessionSummaryDisplay, { duration: item.duration }), item.type === 'tool_group' && (_jsx(ToolGroupMessage, { toolCalls: item.tools, groupId: item.id, availableTerminalHeight: availableTerminalHeight, terminalWidth: terminalWidth, config: config, isFocused: isFocused })), item.type === 'compression' && (_jsx(CompressionMessage, { compression: item.compression }))] }, item.id));
17
18
  //# sourceMappingURL=HistoryItemDisplay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HistoryItemDisplay.js","sourceRoot":"","sources":["../../../../src/ui/components/HistoryItemDisplay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HistoryItemDisplay.js","sourceRoot":"","sources":["../../../../src/ui/components/HistoryItemDisplay.tsx"],"names":[],"mappings":"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"}
@@ -3,9 +3,10 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { type OpenFiles } from '@google/gemini-cli-core';
6
+ import { type IdeContext } from '@google/gemini-cli-core';
7
7
  interface IDEContextDetailDisplayProps {
8
- openFiles: OpenFiles | undefined;
8
+ ideContext: IdeContext | undefined;
9
+ detectedIdeDisplay: string | undefined;
9
10
  }
10
- export declare function IDEContextDetailDisplay({ openFiles, }: IDEContextDetailDisplayProps): import("react/jsx-runtime").JSX.Element | null;
11
+ export declare function IDEContextDetailDisplay({ ideContext, detectedIdeDisplay, }: IDEContextDetailDisplayProps): import("react/jsx-runtime").JSX.Element | null;
11
12
  export {};
@@ -1,19 +1,12 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * @license
4
- * Copyright 2025 Google LLC
5
- * SPDX-License-Identifier: Apache-2.0
6
- */
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
7
2
  import { Box, Text } from 'ink';
8
- import { Colors } from '../colors.js';
9
3
  import path from 'node:path';
10
- export function IDEContextDetailDisplay({ openFiles, }) {
11
- if (!openFiles ||
12
- !openFiles.recentOpenFiles ||
13
- openFiles.recentOpenFiles.length === 0) {
4
+ import { Colors } from '../colors.js';
5
+ export function IDEContextDetailDisplay({ ideContext, detectedIdeDisplay, }) {
6
+ const openFiles = ideContext?.workspaceState?.openFiles;
7
+ if (!openFiles || openFiles.length === 0) {
14
8
  return null;
15
9
  }
16
- const recentFiles = openFiles.recentOpenFiles || [];
17
- return (_jsxs(Box, { flexDirection: "column", marginTop: 1, borderStyle: "round", borderColor: Colors.AccentCyan, paddingX: 1, children: [_jsx(Text, { color: Colors.AccentCyan, bold: true, children: "IDE Context (ctrl+e to toggle)" }), recentFiles.length > 0 && (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { bold: true, children: "Recent files:" }), recentFiles.map((file) => (_jsxs(Text, { children: ["- ", path.basename(file.filePath), file.filePath === openFiles.activeFile ? ' (active)' : ''] }, file.filePath)))] }))] }));
10
+ return (_jsxs(Box, { flexDirection: "column", marginTop: 1, borderStyle: "round", borderColor: Colors.AccentCyan, paddingX: 1, children: [_jsxs(Text, { color: Colors.AccentCyan, bold: true, children: [detectedIdeDisplay ? detectedIdeDisplay : 'IDE', " Context (ctrl+e to toggle)"] }), openFiles.length > 0 && (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { bold: true, children: "Open files:" }), openFiles.map((file) => (_jsxs(Text, { children: ["- ", path.basename(file.path), file.isActive ? ' (active)' : ''] }, file.path)))] }))] }));
18
11
  }
19
12
  //# sourceMappingURL=IDEContextDetailDisplay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IDEContextDetailDisplay.js","sourceRoot":"","sources":["../../../../src/ui/components/IDEContextDetailDisplay.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,MAAM,UAAU,uBAAuB,CAAC,EACtC,SAAS,GACoB;IAC7B,IACE,CAAC,SAAS;QACV,CAAC,SAAS,CAAC,eAAe;QAC1B,SAAS,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EACtC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,WAAW,GAAG,SAAS,CAAC,eAAe,IAAI,EAAE,CAAC;IAEpD,OAAO,CACL,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,SAAS,EAAE,CAAC,EACZ,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,MAAM,CAAC,UAAU,EAC9B,QAAQ,EAAE,CAAC,aAEX,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,qDAE7B,EACN,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CACzB,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,KAAC,IAAI,IAAC,IAAI,oCAAqB,EAC9B,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACzB,MAAC,IAAI,qBACA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC9B,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAFjD,IAAI,CAAC,QAAQ,CAGjB,CACR,CAAC,IACE,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"IDEContextDetailDisplay.js","sourceRoot":"","sources":["../../../../src/ui/components/IDEContextDetailDisplay.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAOtC,MAAM,UAAU,uBAAuB,CAAC,EACtC,UAAU,EACV,kBAAkB,GACW;IAC7B,MAAM,SAAS,GAAG,UAAU,EAAE,cAAc,EAAE,SAAS,CAAC;IACxD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,SAAS,EAAE,CAAC,EACZ,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,MAAM,CAAC,UAAU,EAC9B,QAAQ,EAAE,CAAC,aAEX,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,mBACjC,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,mCAE3C,EACN,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CACvB,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,KAAC,IAAI,IAAC,IAAI,kCAAmB,EAC5B,SAAS,CAAC,GAAG,CAAC,CAAC,IAAU,EAAE,EAAE,CAAC,CAC7B,MAAC,IAAI,qBACA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAC1B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAFxB,IAAI,CAAC,IAAI,CAGb,CACR,CAAC,IACE,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -9,19 +9,36 @@ import { Box, Text } from 'ink';
9
9
  import { Colors } from '../colors.js';
10
10
  import { SuggestionsDisplay } from './SuggestionsDisplay.js';
11
11
  import { useInputHistory } from '../hooks/useInputHistory.js';
12
+ import { logicalPosToOffset } from './shared/text-buffer.js';
12
13
  import { cpSlice, cpLen } from '../utils/textUtils.js';
13
14
  import chalk from 'chalk';
14
15
  import stringWidth from 'string-width';
15
16
  import { useShellHistory } from '../hooks/useShellHistory.js';
16
- import { useCompletion } from '../hooks/useCompletion.js';
17
+ import { useReverseSearchCompletion } from '../hooks/useReverseSearchCompletion.js';
18
+ import { useCommandCompletion } from '../hooks/useCommandCompletion.js';
17
19
  import { useKeypress } from '../hooks/useKeypress.js';
18
20
  import { clipboardHasImage, saveClipboardImage, cleanupOldClipboardImages, } from '../utils/clipboardUtils.js';
19
21
  import * as path from 'path';
20
22
  export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, config, slashCommands, commandContext, placeholder = ' Type your message or @path/to/file', focus = true, inputWidth, suggestionsWidth, shellModeActive, setShellModeActive, vimHandleInput, }) => {
21
23
  const [justNavigatedHistory, setJustNavigatedHistory] = useState(false);
22
- const completion = useCompletion(buffer, config.getTargetDir(), slashCommands, commandContext, config);
23
- const resetCompletionState = completion.resetCompletionState;
24
+ const [dirs, setDirs] = useState(config.getWorkspaceContext().getDirectories());
25
+ const dirsChanged = config.getWorkspaceContext().getDirectories();
26
+ useEffect(() => {
27
+ if (dirs.length !== dirsChanged.length) {
28
+ setDirs(dirsChanged);
29
+ }
30
+ }, [dirs.length, dirsChanged]);
31
+ const [reverseSearchActive, setReverseSearchActive] = useState(false);
32
+ const [textBeforeReverseSearch, setTextBeforeReverseSearch] = useState('');
33
+ const [cursorPosition, setCursorPosition] = useState([
34
+ 0, 0,
35
+ ]);
24
36
  const shellHistory = useShellHistory(config.getProjectRoot());
37
+ const historyData = shellHistory.history;
38
+ const completion = useCommandCompletion(buffer, dirs, config.getTargetDir(), slashCommands, commandContext, reverseSearchActive, config);
39
+ const reverseSearchCompletion = useReverseSearchCompletion(buffer, historyData, reverseSearchActive);
40
+ const resetCompletionState = completion.resetCompletionState;
41
+ const resetReverseSearchCompletionState = reverseSearchCompletion.resetCompletionState;
25
42
  const handleSubmitAndClear = useCallback((submittedValue) => {
26
43
  if (shellModeActive) {
27
44
  shellHistory.addCommandToHistory(submittedValue);
@@ -31,7 +48,15 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
31
48
  buffer.setText('');
32
49
  onSubmit(submittedValue);
33
50
  resetCompletionState();
34
- }, [onSubmit, buffer, resetCompletionState, shellModeActive, shellHistory]);
51
+ resetReverseSearchCompletionState();
52
+ }, [
53
+ onSubmit,
54
+ buffer,
55
+ resetCompletionState,
56
+ shellModeActive,
57
+ shellHistory,
58
+ resetReverseSearchCompletionState,
59
+ ]);
35
60
  const customSetTextAndResetCompletionSignal = useCallback((newText) => {
36
61
  buffer.setText(newText);
37
62
  setJustNavigatedHistory(true);
@@ -48,6 +73,7 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
48
73
  useEffect(() => {
49
74
  if (justNavigatedHistory) {
50
75
  resetCompletionState();
76
+ resetReverseSearchCompletionState();
51
77
  setJustNavigatedHistory(false);
52
78
  }
53
79
  }, [
@@ -55,6 +81,7 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
55
81
  buffer.text,
56
82
  resetCompletionState,
57
83
  setJustNavigatedHistory,
84
+ resetReverseSearchCompletionState,
58
85
  ]);
59
86
  // Handle clipboard image pasting with Ctrl+V
60
87
  const handleClipboardImage = useCallback(async () => {
@@ -113,6 +140,14 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
113
140
  return;
114
141
  }
115
142
  if (key.name === 'escape') {
143
+ if (reverseSearchActive) {
144
+ setReverseSearchActive(false);
145
+ reverseSearchCompletion.resetCompletionState();
146
+ buffer.setText(textBeforeReverseSearch);
147
+ const offset = logicalPosToOffset(buffer.lines, cursorPosition[0], cursorPosition[1]);
148
+ buffer.moveToOffset(offset);
149
+ return;
150
+ }
116
151
  if (shellModeActive) {
117
152
  setShellModeActive(false);
118
153
  return;
@@ -122,10 +157,48 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
122
157
  return;
123
158
  }
124
159
  }
160
+ if (shellModeActive && key.ctrl && key.name === 'r') {
161
+ setReverseSearchActive(true);
162
+ setTextBeforeReverseSearch(buffer.text);
163
+ setCursorPosition(buffer.cursor);
164
+ return;
165
+ }
125
166
  if (key.ctrl && key.name === 'l') {
126
167
  onClearScreen();
127
168
  return;
128
169
  }
170
+ if (reverseSearchActive) {
171
+ const { activeSuggestionIndex, navigateUp, navigateDown, showSuggestions, suggestions, } = reverseSearchCompletion;
172
+ if (showSuggestions) {
173
+ if (key.name === 'up') {
174
+ navigateUp();
175
+ return;
176
+ }
177
+ if (key.name === 'down') {
178
+ navigateDown();
179
+ return;
180
+ }
181
+ if (key.name === 'tab') {
182
+ reverseSearchCompletion.handleAutocomplete(activeSuggestionIndex);
183
+ reverseSearchCompletion.resetCompletionState();
184
+ setReverseSearchActive(false);
185
+ return;
186
+ }
187
+ }
188
+ if (key.name === 'return' && !key.ctrl) {
189
+ const textToSubmit = showSuggestions && activeSuggestionIndex > -1
190
+ ? suggestions[activeSuggestionIndex].value
191
+ : buffer.text;
192
+ handleSubmitAndClear(textToSubmit);
193
+ reverseSearchCompletion.resetCompletionState();
194
+ setReverseSearchActive(false);
195
+ return;
196
+ }
197
+ // Prevent up/down from falling through to regular history navigation
198
+ if (key.name === 'up' || key.name === 'down') {
199
+ return;
200
+ }
201
+ }
129
202
  // If the command is a perfect match, pressing enter should execute it.
130
203
  if (completion.isPerfectMatch && key.name === 'return') {
131
204
  handleSubmitAndClear(buffer.text);
@@ -178,7 +251,6 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
178
251
  }
179
252
  }
180
253
  else {
181
- // Shell History Navigation
182
254
  if (key.name === 'up') {
183
255
  const prevCommand = shellHistory.getPreviousCommand();
184
256
  if (prevCommand !== null)
@@ -263,15 +335,19 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
263
335
  inputHistory,
264
336
  handleSubmitAndClear,
265
337
  shellHistory,
338
+ reverseSearchCompletion,
266
339
  handleClipboardImage,
267
340
  resetCompletionState,
268
341
  vimHandleInput,
342
+ reverseSearchActive,
343
+ textBeforeReverseSearch,
344
+ cursorPosition,
269
345
  ]);
270
346
  useKeypress(handleInput, { isActive: true });
271
347
  const linesToRender = buffer.viewportVisualLines;
272
348
  const [cursorVisualRowAbsolute, cursorVisualColAbsolute] = buffer.visualCursor;
273
349
  const scrollVisualRow = buffer.visualScrollRow;
274
- return (_jsxs(_Fragment, { children: [_jsxs(Box, { borderStyle: "round", borderColor: shellModeActive ? Colors.AccentYellow : Colors.AccentBlue, paddingX: 1, children: [_jsx(Text, { color: shellModeActive ? Colors.AccentYellow : Colors.AccentPurple, children: shellModeActive ? '! ' : '> ' }), _jsx(Box, { flexGrow: 1, flexDirection: "column", children: buffer.text.length === 0 && placeholder ? (focus ? (_jsxs(Text, { children: [chalk.inverse(placeholder.slice(0, 1)), _jsx(Text, { color: Colors.Gray, children: placeholder.slice(1) })] })) : (_jsx(Text, { color: Colors.Gray, children: placeholder }))) : (linesToRender.map((lineText, visualIdxInRenderedSet) => {
350
+ return (_jsxs(_Fragment, { children: [_jsxs(Box, { borderStyle: "round", borderColor: shellModeActive ? Colors.AccentYellow : Colors.AccentBlue, paddingX: 1, children: [_jsx(Text, { color: shellModeActive ? Colors.AccentYellow : Colors.AccentPurple, children: shellModeActive ? (reverseSearchActive ? (_jsx(Text, { color: Colors.AccentCyan, children: "(r:) " })) : ('! ')) : ('> ') }), _jsx(Box, { flexGrow: 1, flexDirection: "column", children: buffer.text.length === 0 && placeholder ? (focus ? (_jsxs(Text, { children: [chalk.inverse(placeholder.slice(0, 1)), _jsx(Text, { color: Colors.Gray, children: placeholder.slice(1) })] })) : (_jsx(Text, { color: Colors.Gray, children: placeholder }))) : (linesToRender.map((lineText, visualIdxInRenderedSet) => {
275
351
  const cursorVisualRow = cursorVisualRowAbsolute - scrollVisualRow;
276
352
  let display = cpSlice(lineText, 0, inputWidth);
277
353
  const currentVisualWidth = stringWidth(display);
@@ -296,6 +372,6 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
296
372
  }
297
373
  }
298
374
  return (_jsx(Text, { children: display }, `line-${visualIdxInRenderedSet}`));
299
- })) })] }), completion.showSuggestions && (_jsx(Box, { children: _jsx(SuggestionsDisplay, { suggestions: completion.suggestions, activeIndex: completion.activeSuggestionIndex, isLoading: completion.isLoadingSuggestions, width: suggestionsWidth, scrollOffset: completion.visibleStartIndex, userInput: buffer.text }) }))] }));
375
+ })) })] }), completion.showSuggestions && (_jsx(Box, { children: _jsx(SuggestionsDisplay, { suggestions: completion.suggestions, activeIndex: completion.activeSuggestionIndex, isLoading: completion.isLoadingSuggestions, width: suggestionsWidth, scrollOffset: completion.visibleStartIndex, userInput: buffer.text }) })), reverseSearchActive && (_jsx(Box, { children: _jsx(SuggestionsDisplay, { suggestions: reverseSearchCompletion.suggestions, activeIndex: reverseSearchCompletion.activeSuggestionIndex, isLoading: reverseSearchCompletion.isLoadingSuggestions, width: suggestionsWidth, scrollOffset: reverseSearchCompletion.visibleStartIndex, userInput: buffer.text }) }))] }));
300
376
  };
301
377
  //# sourceMappingURL=InputPrompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InputPrompt.js","sourceRoot":"","sources":["../../../../src/ui/components/InputPrompt.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputPrompt.js","sourceRoot":"","sources":["../../../../src/ui/components/InputPrompt.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import React from 'react';
7
+ interface PrepareLabelProps {
8
+ label: string;
9
+ matchedIndex?: number;
10
+ userInput: string;
11
+ textColor: string;
12
+ highlightColor?: string;
13
+ }
14
+ export declare const PrepareLabel: React.FC<PrepareLabelProps>;
15
+ export {};
@@ -0,0 +1,16 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Text } from 'ink';
3
+ import { Colors } from '../colors.js';
4
+ export const PrepareLabel = ({ label, matchedIndex, userInput, textColor, highlightColor = Colors.AccentYellow, }) => {
5
+ if (matchedIndex === undefined ||
6
+ matchedIndex < 0 ||
7
+ matchedIndex >= label.length ||
8
+ userInput.length === 0) {
9
+ return _jsx(Text, { color: textColor, children: label });
10
+ }
11
+ const start = label.slice(0, matchedIndex);
12
+ const match = label.slice(matchedIndex, matchedIndex + userInput.length);
13
+ const end = label.slice(matchedIndex + userInput.length);
14
+ return (_jsxs(Text, { children: [_jsx(Text, { color: textColor, children: start }), _jsx(Text, { color: "black", bold: true, backgroundColor: highlightColor, children: match }), _jsx(Text, { color: textColor, children: end })] }));
15
+ };
16
+ //# sourceMappingURL=PrepareLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrepareLabel.js","sourceRoot":"","sources":["../../../../src/ui/components/PrepareLabel.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAUtC,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EACxD,KAAK,EACL,YAAY,EACZ,SAAS,EACT,SAAS,EACT,cAAc,GAAG,MAAM,CAAC,YAAY,GACrC,EAAE,EAAE;IACH,IACE,YAAY,KAAK,SAAS;QAC1B,YAAY,GAAG,CAAC;QAChB,YAAY,IAAI,KAAK,CAAC,MAAM;QAC5B,SAAS,CAAC,MAAM,KAAK,CAAC,EACtB,CAAC;QACD,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,KAAK,GAAQ,CAAC;IAChD,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACzE,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAEzD,OAAO,CACL,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,KAAK,GAAQ,EACtC,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,QAAC,eAAe,EAAE,cAAc,YACrD,KAAK,GACD,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,GAAG,GAAQ,IAC/B,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -7,6 +7,7 @@ export interface Suggestion {
7
7
  label: string;
8
8
  value: string;
9
9
  description?: string;
10
+ matchedIndex?: number;
10
11
  }
11
12
  interface SuggestionsDisplayProps {
12
13
  suggestions: Suggestion[];
@@ -6,6 +6,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  */
7
7
  import { Box, Text } from 'ink';
8
8
  import { Colors } from '../colors.js';
9
+ import { PrepareLabel } from './PrepareLabel.js';
9
10
  export const MAX_SUGGESTIONS_TO_SHOW = 8;
10
11
  export function SuggestionsDisplay({ suggestions, activeIndex, isLoading, width, scrollOffset, userInput, }) {
11
12
  if (isLoading) {
@@ -22,11 +23,10 @@ export function SuggestionsDisplay({ suggestions, activeIndex, isLoading, width,
22
23
  const originalIndex = startIndex + index;
23
24
  const isActive = originalIndex === activeIndex;
24
25
  const textColor = isActive ? Colors.AccentPurple : Colors.Gray;
26
+ const labelElement = (_jsx(PrepareLabel, { label: suggestion.label, matchedIndex: suggestion.matchedIndex, userInput: userInput, textColor: textColor }));
25
27
  return (_jsx(Box, { width: width, children: _jsxs(Box, { flexDirection: "row", children: [userInput.startsWith('/') ? (
26
28
  // only use box model for (/) command mode
27
- _jsx(Box, { width: 20, flexShrink: 0, children: _jsx(Text, { color: textColor, children: suggestion.label }) })) : (
28
- // use regular text for other modes (@ context)
29
- _jsx(Text, { color: textColor, children: suggestion.label })), suggestion.description ? (_jsx(Box, { flexGrow: 1, children: _jsx(Text, { color: textColor, wrap: "wrap", children: suggestion.description }) })) : null] }) }, `${suggestion}-${originalIndex}`));
29
+ _jsx(Box, { width: 20, flexShrink: 0, children: labelElement })) : (labelElement), suggestion.description ? (_jsx(Box, { flexGrow: 1, children: _jsx(Text, { color: textColor, wrap: "wrap", children: suggestion.description }) })) : null] }) }, `${suggestion.value}-${originalIndex}`));
30
30
  }), endIndex < suggestions.length && _jsx(Text, { color: "gray", children: "\u25BC" }), suggestions.length > MAX_SUGGESTIONS_TO_SHOW && (_jsxs(Text, { color: "gray", children: ["(", activeIndex + 1, "/", suggestions.length, ")"] }))] }));
31
31
  }
32
32
  //# sourceMappingURL=SuggestionsDisplay.js.map