@google/gemini-cli 0.18.0-nightly.20251118.7cc5234b9 → 0.18.0-preview.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1 -0
  3. package/dist/package.json +4 -4
  4. package/dist/src/commands/extensions/disable.test.js +19 -13
  5. package/dist/src/commands/extensions/disable.test.js.map +1 -1
  6. package/dist/src/commands/extensions/enable.test.js +16 -9
  7. package/dist/src/commands/extensions/enable.test.js.map +1 -1
  8. package/dist/src/commands/extensions/link.test.js +18 -11
  9. package/dist/src/commands/extensions/link.test.js.map +1 -1
  10. package/dist/src/commands/extensions/list.test.js +20 -13
  11. package/dist/src/commands/extensions/list.test.js.map +1 -1
  12. package/dist/src/commands/extensions/uninstall.test.js +26 -18
  13. package/dist/src/commands/extensions/uninstall.test.js.map +1 -1
  14. package/dist/src/commands/extensions/update.test.js +20 -13
  15. package/dist/src/commands/extensions/update.test.js.map +1 -1
  16. package/dist/src/commands/mcp/add.test.js +8 -3
  17. package/dist/src/commands/mcp/add.test.js.map +1 -1
  18. package/dist/src/commands/mcp/list.test.js +1 -6
  19. package/dist/src/commands/mcp/list.test.js.map +1 -1
  20. package/dist/src/commands/mcp/remove.test.js +23 -12
  21. package/dist/src/commands/mcp/remove.test.js.map +1 -1
  22. package/dist/src/config/config.d.ts +2 -1
  23. package/dist/src/config/config.js +38 -14
  24. package/dist/src/config/config.js.map +1 -1
  25. package/dist/src/config/config.test.js +64 -10
  26. package/dist/src/config/config.test.js.map +1 -1
  27. package/dist/src/config/extension.test.js +131 -125
  28. package/dist/src/config/extension.test.js.map +1 -1
  29. package/dist/src/config/settingsSchema.d.ts +2 -2
  30. package/dist/src/config/settingsSchema.js +3 -3
  31. package/dist/src/config/settingsSchema.js.map +1 -1
  32. package/dist/src/config/settingsSchema.test.js +1 -1
  33. package/dist/src/config/settingsSchema.test.js.map +1 -1
  34. package/dist/src/gemini.js +65 -7
  35. package/dist/src/gemini.js.map +1 -1
  36. package/dist/src/gemini.test.js +55 -15
  37. package/dist/src/gemini.test.js.map +1 -1
  38. package/dist/src/generated/git-commit.d.ts +2 -2
  39. package/dist/src/generated/git-commit.js +2 -2
  40. package/dist/src/generated/git-commit.js.map +1 -1
  41. package/dist/src/nonInteractiveCli.js +4 -1
  42. package/dist/src/nonInteractiveCli.js.map +1 -1
  43. package/dist/src/nonInteractiveCli.test.js +2 -2
  44. package/dist/src/nonInteractiveCli.test.js.map +1 -1
  45. package/dist/src/services/CommandService.test.js +3 -2
  46. package/dist/src/services/CommandService.test.js.map +1 -1
  47. package/dist/src/services/McpPromptLoader.js +5 -3
  48. package/dist/src/services/McpPromptLoader.js.map +1 -1
  49. package/dist/src/services/McpPromptLoader.test.js +29 -1
  50. package/dist/src/services/McpPromptLoader.test.js.map +1 -1
  51. package/dist/src/test-utils/render.d.ts +26 -2
  52. package/dist/src/test-utils/render.js +76 -3
  53. package/dist/src/test-utils/render.js.map +1 -1
  54. package/dist/src/ui/AppContainer.js +57 -32
  55. package/dist/src/ui/AppContainer.js.map +1 -1
  56. package/dist/src/ui/AppContainer.test.js +169 -102
  57. package/dist/src/ui/AppContainer.test.js.map +1 -1
  58. package/dist/src/ui/auth/AuthDialog.test.js +2 -2
  59. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
  60. package/dist/src/ui/commands/aboutCommand.js +8 -1
  61. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  62. package/dist/src/ui/commands/aboutCommand.test.js +4 -0
  63. package/dist/src/ui/commands/aboutCommand.test.js.map +1 -1
  64. package/dist/src/ui/commands/clearCommand.js +12 -0
  65. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  66. package/dist/src/ui/commands/clearCommand.test.js +5 -0
  67. package/dist/src/ui/commands/clearCommand.test.js.map +1 -1
  68. package/dist/src/ui/commands/memoryCommand.js +1 -0
  69. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  70. package/dist/src/ui/commands/memoryCommand.test.js +3 -0
  71. package/dist/src/ui/commands/memoryCommand.test.js.map +1 -1
  72. package/dist/src/ui/commands/setupGithubCommand.d.ts +1 -0
  73. package/dist/src/ui/commands/setupGithubCommand.js +82 -45
  74. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  75. package/dist/src/ui/commands/setupGithubCommand.test.js +35 -5
  76. package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -1
  77. package/dist/src/ui/components/AboutBox.d.ts +1 -0
  78. package/dist/src/ui/components/AboutBox.js +1 -1
  79. package/dist/src/ui/components/AboutBox.js.map +1 -1
  80. package/dist/src/ui/components/AppHeader.js +3 -8
  81. package/dist/src/ui/components/AppHeader.js.map +1 -1
  82. package/dist/src/ui/components/Banner.d.ts +4 -2
  83. package/dist/src/ui/components/Banner.js +18 -4
  84. package/dist/src/ui/components/Banner.js.map +1 -1
  85. package/dist/src/ui/components/DebugProfiler.d.ts +1 -0
  86. package/dist/src/ui/components/DebugProfiler.js +23 -34
  87. package/dist/src/ui/components/DebugProfiler.js.map +1 -1
  88. package/dist/src/ui/components/DebugProfiler.test.js +1 -0
  89. package/dist/src/ui/components/DebugProfiler.test.js.map +1 -1
  90. package/dist/src/ui/components/DialogManager.js +1 -1
  91. package/dist/src/ui/components/DialogManager.js.map +1 -1
  92. package/dist/src/ui/components/GradientRegression.test.js +22 -1
  93. package/dist/src/ui/components/GradientRegression.test.js.map +1 -1
  94. package/dist/src/ui/components/Header.test.js +27 -2
  95. package/dist/src/ui/components/Header.test.js.map +1 -1
  96. package/dist/src/ui/components/HistoryItemDisplay.js +1 -1
  97. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  98. package/dist/src/ui/components/InputPrompt.js +16 -24
  99. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  100. package/dist/src/ui/components/InputPrompt.test.js +84 -24
  101. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  102. package/dist/src/ui/components/ModelDialog.js +2 -2
  103. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  104. package/dist/src/ui/components/SettingsDialog.d.ts +3 -1
  105. package/dist/src/ui/components/SettingsDialog.js +4 -1
  106. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  107. package/dist/src/ui/components/ThemedGradient.js +2 -1
  108. package/dist/src/ui/components/ThemedGradient.js.map +1 -1
  109. package/dist/src/ui/components/messages/ShellToolMessage.d.ts +14 -0
  110. package/dist/src/ui/components/messages/ShellToolMessage.js +76 -0
  111. package/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -0
  112. package/dist/src/ui/components/messages/ShellToolMessage.test.d.ts +6 -0
  113. package/dist/src/ui/components/messages/ShellToolMessage.test.js +123 -0
  114. package/dist/src/ui/components/messages/ShellToolMessage.test.js.map +1 -0
  115. package/dist/src/ui/components/messages/ToolGroupMessage.js +19 -1
  116. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  117. package/dist/src/ui/components/messages/ToolMessage.d.ts +3 -6
  118. package/dist/src/ui/components/messages/ToolMessage.js +5 -121
  119. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  120. package/dist/src/ui/components/messages/ToolMessage.test.js +13 -5
  121. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  122. package/dist/src/ui/components/messages/ToolResultDisplay.d.ts +13 -0
  123. package/dist/src/ui/components/messages/ToolResultDisplay.js +54 -0
  124. package/dist/src/ui/components/messages/ToolResultDisplay.js.map +1 -0
  125. package/dist/src/ui/components/messages/ToolShared.d.ts +23 -0
  126. package/dist/src/ui/components/messages/ToolShared.js +40 -0
  127. package/dist/src/ui/components/messages/ToolShared.js.map +1 -0
  128. package/dist/src/ui/components/shared/text-buffer.js +4 -1
  129. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  130. package/dist/src/ui/contexts/KeypressContext.js +21 -11
  131. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  132. package/dist/src/ui/contexts/KeypressContext.test.js +29 -10
  133. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  134. package/dist/src/ui/contexts/UIActionsContext.d.ts +1 -0
  135. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  136. package/dist/src/ui/hooks/shellCommandProcessor.js +8 -4
  137. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  138. package/dist/src/ui/hooks/shellCommandProcessor.test.js +4 -3
  139. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -1
  140. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +1 -1
  141. package/dist/src/ui/hooks/slashCommandProcessor.js +5 -3
  142. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  143. package/dist/src/ui/hooks/useBracketedPaste.js +3 -2
  144. package/dist/src/ui/hooks/useBracketedPaste.js.map +1 -1
  145. package/dist/src/ui/hooks/useCommandCompletion.test.js +5 -5
  146. package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -1
  147. package/dist/src/ui/hooks/useConsoleMessages.d.ts +0 -1
  148. package/dist/src/ui/hooks/useConsoleMessages.js +26 -1
  149. package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -1
  150. package/dist/src/ui/hooks/useConsoleMessages.test.js +37 -5
  151. package/dist/src/ui/hooks/useConsoleMessages.test.js.map +1 -1
  152. package/dist/src/ui/hooks/useEditorSettings.d.ts +2 -2
  153. package/dist/src/ui/hooks/useEditorSettings.js.map +1 -1
  154. package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -1
  155. package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
  156. package/dist/src/ui/hooks/useGeminiStream.js +48 -10
  157. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  158. package/dist/src/ui/hooks/useGeminiStream.test.js +20 -21
  159. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  160. package/dist/src/ui/hooks/useHistoryManager.d.ts +5 -2
  161. package/dist/src/ui/hooks/useHistoryManager.js +39 -3
  162. package/dist/src/ui/hooks/useHistoryManager.js.map +1 -1
  163. package/dist/src/ui/hooks/useIncludeDirsTrust.js +0 -1
  164. package/dist/src/ui/hooks/useIncludeDirsTrust.js.map +1 -1
  165. package/dist/src/ui/hooks/useInputHistoryStore.test.js +4 -1
  166. package/dist/src/ui/hooks/useInputHistoryStore.test.js.map +1 -1
  167. package/dist/src/ui/hooks/useKittyKeyboardProtocol.d.ts +0 -1
  168. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +1 -2
  169. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +1 -1
  170. package/dist/src/ui/hooks/useMouseClick.d.ts +12 -0
  171. package/dist/src/ui/hooks/useMouseClick.js +28 -0
  172. package/dist/src/ui/hooks/useMouseClick.js.map +1 -0
  173. package/dist/src/ui/hooks/useMouseClick.test.d.ts +6 -0
  174. package/dist/src/ui/hooks/useMouseClick.test.js +59 -0
  175. package/dist/src/ui/hooks/useMouseClick.test.js.map +1 -0
  176. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +1 -1
  177. package/dist/src/ui/hooks/useReactToolScheduler.js +1 -8
  178. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  179. package/dist/src/ui/hooks/useReactToolScheduler.test.js +1 -8
  180. package/dist/src/ui/hooks/useReactToolScheduler.test.js.map +1 -1
  181. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +18 -12
  182. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +1 -1
  183. package/dist/src/ui/hooks/useSessionBrowser.js +13 -4
  184. package/dist/src/ui/hooks/useSessionBrowser.js.map +1 -1
  185. package/dist/src/ui/hooks/useSessionBrowser.test.js +37 -0
  186. package/dist/src/ui/hooks/useSessionBrowser.test.js.map +1 -1
  187. package/dist/src/ui/hooks/useSessionResume.js +1 -1
  188. package/dist/src/ui/hooks/useSessionResume.js.map +1 -1
  189. package/dist/src/ui/hooks/useSessionResume.test.js +4 -4
  190. package/dist/src/ui/hooks/useSessionResume.test.js.map +1 -1
  191. package/dist/src/ui/hooks/useThemeCommand.d.ts +2 -2
  192. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
  193. package/dist/src/ui/hooks/useToolScheduler.test.js +2 -2
  194. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  195. package/dist/src/ui/themes/theme-manager.test.js +2 -1
  196. package/dist/src/ui/themes/theme-manager.test.js.map +1 -1
  197. package/dist/src/ui/types.d.ts +2 -0
  198. package/dist/src/ui/types.js.map +1 -1
  199. package/dist/src/ui/utils/ConsolePatcher.js +6 -9
  200. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  201. package/dist/src/ui/utils/kittyProtocolDetector.d.ts +6 -2
  202. package/dist/src/ui/utils/kittyProtocolDetector.js +48 -43
  203. package/dist/src/ui/utils/kittyProtocolDetector.js.map +1 -1
  204. package/dist/src/ui/utils/mouse.js +3 -3
  205. package/dist/src/ui/utils/mouse.js.map +1 -1
  206. package/dist/src/utils/cleanup.d.ts +2 -0
  207. package/dist/src/utils/cleanup.js +16 -0
  208. package/dist/src/utils/cleanup.js.map +1 -1
  209. package/dist/src/utils/errors.js +10 -0
  210. package/dist/src/utils/errors.js.map +1 -1
  211. package/dist/src/utils/events.d.ts +0 -2
  212. package/dist/src/utils/events.js +0 -1
  213. package/dist/src/utils/events.js.map +1 -1
  214. package/dist/src/utils/installationInfo.test.js +8 -9
  215. package/dist/src/utils/installationInfo.test.js.map +1 -1
  216. package/dist/src/utils/sessionCleanup.test.js +4 -2
  217. package/dist/src/utils/sessionCleanup.test.js.map +1 -1
  218. package/dist/src/utils/sessionUtils.d.ts +5 -0
  219. package/dist/src/utils/sessionUtils.js +6 -1
  220. package/dist/src/utils/sessionUtils.js.map +1 -1
  221. package/dist/src/utils/sessions.test.d.ts +6 -0
  222. package/dist/src/utils/sessions.test.js +516 -0
  223. package/dist/src/utils/sessions.test.js.map +1 -0
  224. package/dist/src/utils/stdio.d.ts +32 -0
  225. package/dist/src/utils/stdio.js +85 -0
  226. package/dist/src/utils/stdio.js.map +1 -0
  227. package/dist/src/utils/stdio.test.d.ts +6 -0
  228. package/dist/src/utils/stdio.test.js +47 -0
  229. package/dist/src/utils/stdio.test.js.map +1 -0
  230. package/dist/src/validateNonInterActiveAuth.js +2 -0
  231. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  232. package/dist/src/validateNonInterActiveAuth.test.js +10 -6
  233. package/dist/src/validateNonInterActiveAuth.test.js.map +1 -1
  234. package/dist/src/zed-integration/schema.d.ts +30 -30
  235. package/dist/src/zed-integration/zedIntegration.d.ts +0 -7
  236. package/dist/src/zed-integration/zedIntegration.js +9 -21
  237. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  238. package/dist/tsconfig.tsbuildinfo +1 -1
  239. package/package.json +5 -5
  240. package/dist/google-gemini-cli-0.18.0-nightly.20251118.86828bb56.tgz +0 -0
@@ -18,6 +18,14 @@ export const GITHUB_WORKFLOW_PATHS = [
18
18
  'issue-triage/gemini-scheduled-triage.yml',
19
19
  'pr-review/gemini-review.yml',
20
20
  ];
21
+ export const GITHUB_COMMANDS_PATHS = [
22
+ 'gemini-assistant/gemini-invoke.toml',
23
+ 'issue-triage/gemini-scheduled-triage.toml',
24
+ 'issue-triage/gemini-triage.toml',
25
+ 'pr-review/gemini-review.toml',
26
+ ];
27
+ const REPO_DOWNLOAD_URL = 'https://raw.githubusercontent.com/google-github-actions/run-gemini-cli';
28
+ const SOURCE_DIR = 'examples/workflows';
21
29
  // Generate OS-specific commands to open the GitHub pages needed for setup.
22
30
  function getOpenUrlsCommands(readmeUrl) {
23
31
  // Determine the OS-specific command to open URLs, ex: 'open', 'xdg-open', etc
@@ -68,12 +76,71 @@ export async function updateGitignore(gitRepoRoot) {
68
76
  // Continue without failing the whole command
69
77
  }
70
78
  }
79
+ async function downloadFiles({ paths, releaseTag, targetDir, proxy, abortController, }) {
80
+ const downloads = [];
81
+ for (const fileBasename of paths) {
82
+ downloads.push((async () => {
83
+ const endpoint = `${REPO_DOWNLOAD_URL}/refs/tags/${releaseTag}/${SOURCE_DIR}/${fileBasename}`;
84
+ const response = await fetch(endpoint, {
85
+ method: 'GET',
86
+ dispatcher: proxy ? new ProxyAgent(proxy) : undefined,
87
+ signal: AbortSignal.any([
88
+ AbortSignal.timeout(30_000),
89
+ abortController.signal,
90
+ ]),
91
+ });
92
+ if (!response.ok) {
93
+ throw new Error(`Invalid response code downloading ${endpoint}: ${response.status} - ${response.statusText}`);
94
+ }
95
+ const body = response.body;
96
+ if (!body) {
97
+ throw new Error(`Empty body while downloading ${endpoint}: ${response.status} - ${response.statusText}`);
98
+ }
99
+ const destination = path.resolve(targetDir, path.basename(fileBasename));
100
+ const fileStream = fs.createWriteStream(destination, {
101
+ mode: 0o644, // -rw-r--r--, user(rw), group(r), other(r)
102
+ flags: 'w', // write and overwrite
103
+ flush: true,
104
+ });
105
+ await body.pipeTo(Writable.toWeb(fileStream));
106
+ })());
107
+ }
108
+ await Promise.all(downloads).finally(() => {
109
+ abortController.abort();
110
+ });
111
+ }
112
+ async function createDirectory(dirPath) {
113
+ try {
114
+ await fs.promises.mkdir(dirPath, { recursive: true });
115
+ }
116
+ catch (_error) {
117
+ debugLogger.debug(`Failed to create ${dirPath} directory:`, _error);
118
+ throw new Error(`Unable to create ${dirPath} directory. Do you have file permissions in the current directory?`);
119
+ }
120
+ }
121
+ async function downloadSetupFiles({ configs, releaseTag, proxy, }) {
122
+ try {
123
+ await Promise.all(configs.map(({ paths, targetDir }) => {
124
+ const abortController = new AbortController();
125
+ return downloadFiles({
126
+ paths,
127
+ releaseTag,
128
+ targetDir,
129
+ proxy,
130
+ abortController,
131
+ });
132
+ }));
133
+ }
134
+ catch (error) {
135
+ debugLogger.debug('Failed to download required setup files: ', error);
136
+ throw error;
137
+ }
138
+ }
71
139
  export const setupGithubCommand = {
72
140
  name: 'setup-github',
73
141
  description: 'Set up GitHub Actions',
74
142
  kind: CommandKind.BUILT_IN,
75
143
  action: async (context) => {
76
- const abortController = new AbortController();
77
144
  if (!isGitHubRepository()) {
78
145
  throw new Error('Unable to determine the GitHub repository. /setup-github must be run from a git repository.');
79
146
  }
@@ -90,56 +157,26 @@ export const setupGithubCommand = {
90
157
  const proxy = context?.services?.config?.getProxy();
91
158
  const releaseTag = await getLatestGitHubRelease(proxy);
92
159
  const readmeUrl = `https://github.com/google-github-actions/run-gemini-cli/blob/${releaseTag}/README.md#quick-start`;
93
- // Create the .github/workflows directory to download the files into
94
- const githubWorkflowsDir = path.join(gitRepoRoot, '.github', 'workflows');
95
- try {
96
- await fs.promises.mkdir(githubWorkflowsDir, { recursive: true });
97
- }
98
- catch (_error) {
99
- debugLogger.debug(`Failed to create ${githubWorkflowsDir} directory:`, _error);
100
- throw new Error(`Unable to create ${githubWorkflowsDir} directory. Do you have file permissions in the current directory?`);
101
- }
102
- // Download each workflow in parallel - there aren't enough files to warrant
103
- // a full workerpool model here.
104
- const downloads = [];
105
- for (const workflow of GITHUB_WORKFLOW_PATHS) {
106
- downloads.push((async () => {
107
- const endpoint = `https://raw.githubusercontent.com/google-github-actions/run-gemini-cli/refs/tags/${releaseTag}/examples/workflows/${workflow}`;
108
- const response = await fetch(endpoint, {
109
- method: 'GET',
110
- dispatcher: proxy ? new ProxyAgent(proxy) : undefined,
111
- signal: AbortSignal.any([
112
- AbortSignal.timeout(30_000),
113
- abortController.signal,
114
- ]),
115
- });
116
- if (!response.ok) {
117
- throw new Error(`Invalid response code downloading ${endpoint}: ${response.status} - ${response.statusText}`);
118
- }
119
- const body = response.body;
120
- if (!body) {
121
- throw new Error(`Empty body while downloading ${endpoint}: ${response.status} - ${response.statusText}`);
122
- }
123
- const destination = path.resolve(githubWorkflowsDir, path.basename(workflow));
124
- const fileStream = fs.createWriteStream(destination, {
125
- mode: 0o644, // -rw-r--r--, user(rw), group(r), other(r)
126
- flags: 'w', // write and overwrite
127
- flush: true,
128
- });
129
- await body.pipeTo(Writable.toWeb(fileStream));
130
- })());
131
- }
132
- // Wait for all downloads to complete
133
- await Promise.all(downloads).finally(() => {
134
- // Stop existing downloads
135
- abortController.abort();
160
+ // Create workflows directory
161
+ const workflowsDir = path.join(gitRepoRoot, '.github', 'workflows');
162
+ await createDirectory(workflowsDir);
163
+ // Create commands directory
164
+ const commandsDir = path.join(gitRepoRoot, '.github', 'commands');
165
+ await createDirectory(commandsDir);
166
+ await downloadSetupFiles({
167
+ configs: [
168
+ { paths: GITHUB_WORKFLOW_PATHS, targetDir: workflowsDir },
169
+ { paths: GITHUB_COMMANDS_PATHS, targetDir: commandsDir },
170
+ ],
171
+ releaseTag,
172
+ proxy,
136
173
  });
137
174
  // Add entries to .gitignore file
138
175
  await updateGitignore(gitRepoRoot);
139
176
  // Print out a message
140
177
  const commands = [];
141
178
  commands.push('set -eEuo pipefail');
142
- commands.push(`echo "Successfully downloaded ${GITHUB_WORKFLOW_PATHS.length} workflows and updated .gitignore. Follow the steps in ${readmeUrl} (skipping the /setup-github step) to complete setup."`);
179
+ commands.push(`echo "Successfully downloaded ${GITHUB_WORKFLOW_PATHS.length} workflows , ${GITHUB_COMMANDS_PATHS.length} commands and updated .gitignore. Follow the steps in ${readmeUrl} (skipping the /setup-github step) to complete setup."`);
143
180
  commands.push(...getOpenUrlsCommands(readmeUrl));
144
181
  const command = `(${commands.join(' && ')})`;
145
182
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"setupGithubCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setupGithubCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,9 @@ import path from 'node:path';
8
8
  import fs from 'node:fs/promises';
9
9
  import { vi, describe, expect, it, afterEach, beforeEach } from 'vitest';
10
10
  import * as gitUtils from '../../utils/gitUtils.js';
11
- import { setupGithubCommand, updateGitignore, GITHUB_WORKFLOW_PATHS, } from './setupGithubCommand.js';
11
+ import { setupGithubCommand, updateGitignore, GITHUB_WORKFLOW_PATHS, GITHUB_COMMANDS_PATHS, } from './setupGithubCommand.js';
12
12
  import * as commandUtils from '../utils/commandUtils.js';
13
+ import { debugLogger } from '@google/gemini-cli-core';
13
14
  vi.mock('child_process');
14
15
  // Mock fetch globally
15
16
  global.fetch = vi.fn();
@@ -39,9 +40,15 @@ describe('setupGithubCommand', async () => {
39
40
  const fakeRepoRoot = scratchDir;
40
41
  const fakeReleaseVersion = 'v1.2.3';
41
42
  const workflows = GITHUB_WORKFLOW_PATHS.map((p) => path.basename(p));
42
- for (const workflow of workflows) {
43
- vi.mocked(global.fetch).mockReturnValueOnce(Promise.resolve(new Response(workflow)));
44
- }
43
+ const commands = GITHUB_COMMANDS_PATHS.map((p) => path.basename(p));
44
+ vi.mocked(global.fetch).mockImplementation(async (url) => {
45
+ const filename = path.basename(url.toString());
46
+ return new Response(filename, {
47
+ status: 200,
48
+ statusText: 'OK',
49
+ headers: { 'Content-Type': 'text/plain' },
50
+ });
51
+ });
45
52
  vi.mocked(gitUtils.isGitHubRepository).mockReturnValueOnce(true);
46
53
  vi.mocked(gitUtils.getGitRepoRoot).mockReturnValueOnce(fakeRepoRoot);
47
54
  vi.mocked(gitUtils.getLatestGitHubRelease).mockResolvedValueOnce(fakeReleaseVersion);
@@ -64,6 +71,11 @@ describe('setupGithubCommand', async () => {
64
71
  const contents = await fs.readFile(workflowFile, 'utf8');
65
72
  expect(contents).toContain(workflow);
66
73
  }
74
+ for (const command of commands) {
75
+ const commandFile = path.join(scratchDir, '.github', 'commands', command);
76
+ const contents = await fs.readFile(commandFile, 'utf8');
77
+ expect(contents).toContain(command);
78
+ }
67
79
  // Verify that .gitignore was created with the expected entries
68
80
  const gitignorePath = path.join(scratchDir, '.gitignore');
69
81
  const gitignoreExists = await fs
@@ -77,6 +89,22 @@ describe('setupGithubCommand', async () => {
77
89
  expect(gitignoreContent).toContain('gha-creds-*.json');
78
90
  }
79
91
  });
92
+ it('throws an error when download fails', async () => {
93
+ const fakeRepoRoot = scratchDir;
94
+ const fakeReleaseVersion = 'v1.2.3';
95
+ vi.mocked(global.fetch).mockResolvedValue(new Response('Not Found', {
96
+ status: 404,
97
+ statusText: 'Not Found',
98
+ }));
99
+ vi.mocked(gitUtils.isGitHubRepository).mockReturnValueOnce(true);
100
+ vi.mocked(gitUtils.getGitRepoRoot).mockReturnValueOnce(fakeRepoRoot);
101
+ vi.mocked(gitUtils.getLatestGitHubRelease).mockResolvedValueOnce(fakeReleaseVersion);
102
+ vi.mocked(gitUtils.getGitHubRepoInfo).mockReturnValue({
103
+ owner: 'fake',
104
+ repo: 'repo',
105
+ });
106
+ await expect(setupGithubCommand.action?.({}, '')).rejects.toThrow(/Invalid response code downloading.*404 - Not Found/);
107
+ });
80
108
  });
81
109
  describe('updateGitignore', () => {
82
110
  let scratchDir = '';
@@ -153,7 +181,9 @@ describe('updateGitignore', () => {
153
181
  await expect(updateGitignore(nonExistentDir)).resolves.toBeUndefined();
154
182
  });
155
183
  it('handles permission errors gracefully', async () => {
156
- const consoleSpy = vi.spyOn(console, 'debug').mockImplementation(() => { });
184
+ const consoleSpy = vi
185
+ .spyOn(debugLogger, 'debug')
186
+ .mockImplementation(() => { });
157
187
  const fsModule = await import('node:fs');
158
188
  const writeFileSpy = vi
159
189
  .spyOn(fsModule.promises, 'writeFile')
@@ -1 +1 @@
1
- {"version":3,"file":"setupGithubCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setupGithubCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.test.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ interface AboutBoxProps {
12
12
  selectedAuthType: string;
13
13
  gcpProject: string;
14
14
  ideClient: string;
15
+ userEmail?: string;
15
16
  }
16
17
  export declare const AboutBox: React.FC<AboutBoxProps>;
17
18
  export {};
@@ -2,5 +2,5 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Box, Text } from 'ink';
3
3
  import { theme } from '../semantic-colors.js';
4
4
  import { GIT_COMMIT_INFO } from '../../generated/git-commit.js';
5
- export const AboutBox = ({ cliVersion, osVersion, sandboxEnv, modelVersion, selectedAuthType, gcpProject, ideClient, }) => (_jsxs(Box, { borderStyle: "round", borderColor: theme.border.default, flexDirection: "column", padding: 1, marginY: 1, width: "100%", children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { bold: true, color: theme.text.accent, children: "About Gemini CLI" }) }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "CLI Version" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: cliVersion }) })] }), GIT_COMMIT_INFO && !['N/A'].includes(GIT_COMMIT_INFO) && (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Git Commit" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: GIT_COMMIT_INFO }) })] })), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Model" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: modelVersion }) })] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Sandbox" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: sandboxEnv }) })] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "OS" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: osVersion }) })] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Auth Method" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: selectedAuthType.startsWith('oauth') ? 'OAuth' : selectedAuthType }) })] }), gcpProject && (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "GCP Project" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: gcpProject }) })] })), ideClient && (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "IDE Client" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: ideClient }) })] }))] }));
5
+ export const AboutBox = ({ cliVersion, osVersion, sandboxEnv, modelVersion, selectedAuthType, gcpProject, ideClient, userEmail, }) => (_jsxs(Box, { borderStyle: "round", borderColor: theme.border.default, flexDirection: "column", padding: 1, marginY: 1, width: "100%", children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { bold: true, color: theme.text.accent, children: "About Gemini CLI" }) }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "CLI Version" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: cliVersion }) })] }), GIT_COMMIT_INFO && !['N/A'].includes(GIT_COMMIT_INFO) && (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Git Commit" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: GIT_COMMIT_INFO }) })] })), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Model" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: modelVersion }) })] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Sandbox" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: sandboxEnv }) })] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "OS" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: osVersion }) })] }), _jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "Auth Method" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: selectedAuthType.startsWith('oauth') ? 'OAuth' : selectedAuthType }) })] }), userEmail && (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "User Email" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: userEmail }) })] })), gcpProject && (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "GCP Project" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: gcpProject }) })] })), ideClient && (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: "IDE Client" }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: ideClient }) })] }))] }));
6
6
  //# sourceMappingURL=AboutBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AboutBox.js","sourceRoot":"","sources":["../../../../src/ui/components/AboutBox.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AboutBox.js","sourceRoot":"","sources":["../../../../src/ui/components/AboutBox.tsx"],"names":[],"mappings":"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"}
@@ -10,11 +10,9 @@ import { Tips } from './Tips.js';
10
10
  import { useSettings } from '../contexts/SettingsContext.js';
11
11
  import { useConfig } from '../contexts/ConfigContext.js';
12
12
  import { useUIState } from '../contexts/UIStateContext.js';
13
- import { Banner } from './Banner.js';
14
- import { theme } from '../semantic-colors.js';
15
- import { Colors } from '../colors.js';
16
13
  import { persistentState } from '../../utils/persistentState.js';
17
- import { useState, useEffect, useRef } from 'react';
14
+ import { useEffect, useRef, useState } from 'react';
15
+ import { Banner } from './Banner.js';
18
16
  export const AppHeader = ({ version }) => {
19
17
  const settings = useSettings();
20
18
  const config = useConfig();
@@ -25,9 +23,6 @@ export const AppHeader = ({ version }) => {
25
23
  !config.getPreviewFeatures() &&
26
24
  defaultBannerShownCount < 5;
27
25
  const bannerText = showDefaultBanner ? defaultText : warningText;
28
- const unescapedBannerText = bannerText.replace(/\\n/g, '\n');
29
- const defaultColor = Colors.AccentBlue;
30
- const fontColor = warningText === '' ? defaultColor : theme.status.warning;
31
26
  const hasIncrementedRef = useRef(false);
32
27
  useEffect(() => {
33
28
  if (showDefaultBanner && defaultText && !hasIncrementedRef.current) {
@@ -36,6 +31,6 @@ export const AppHeader = ({ version }) => {
36
31
  persistentState.set('defaultBannerShownCount', current + 1);
37
32
  }
38
33
  }, [showDefaultBanner, defaultText]);
39
- return (_jsxs(Box, { flexDirection: "column", children: [!(settings.merged.ui?.hideBanner || config.getScreenReader()) && (_jsxs(_Fragment, { children: [_jsx(Header, { version: version, nightly: nightly }), bannerVisible && unescapedBannerText && (_jsx(Banner, { width: mainAreaWidth, bannerText: unescapedBannerText, color: fontColor }))] })), !(settings.merged.ui?.hideTips || config.getScreenReader()) && (_jsx(Tips, { config: config }))] }));
34
+ return (_jsxs(Box, { flexDirection: "column", children: [!(settings.merged.ui?.hideBanner || config.getScreenReader()) && (_jsxs(_Fragment, { children: [_jsx(Header, { version: version, nightly: nightly }), bannerVisible && bannerText && (_jsx(Banner, { width: mainAreaWidth, bannerText: bannerText, isWarning: warningText !== '' }))] })), !(settings.merged.ui?.hideTips || config.getScreenReader()) && (_jsx(Tips, { config: config }))] }));
40
35
  };
41
36
  //# sourceMappingURL=AppHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppHeader.js","sourceRoot":"","sources":["../../../../src/ui/components/AppHeader.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AppHeader.js","sourceRoot":"","sources":["../../../../src/ui/components/AppHeader.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAMrC,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,OAAO,EAAkB,EAAE,EAAE;IACvD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,CAAC;IAE3E,MAAM,CAAC,uBAAuB,CAAC,GAAG,QAAQ,CACxC,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAC1D,CAAC;IAEF,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC;IAEhD,MAAM,iBAAiB,GACrB,WAAW,KAAK,EAAE;QAClB,CAAC,MAAM,CAAC,kBAAkB,EAAE;QAC5B,uBAAuB,GAAG,CAAC,CAAC;IAE9B,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;IAEjE,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,iBAAiB,IAAI,WAAW,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;YACnE,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC;YACjC,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;YACpE,eAAe,CAAC,GAAG,CAAC,yBAAyB,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,EAAE,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC,CAAC;IAErC,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAChE,8BACE,KAAC,MAAM,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAI,EAC7C,aAAa,IAAI,UAAU,IAAI,CAC9B,KAAC,MAAM,IACL,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,WAAW,KAAK,EAAE,GAC7B,CACH,IACA,CACJ,EACA,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAC9D,KAAC,IAAI,IAAC,MAAM,EAAE,MAAM,GAAI,CACzB,IACG,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -3,10 +3,12 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import type { ReactNode } from 'react';
7
+ export declare function getFormattedBannerContent(rawText: string, isWarning: boolean, subsequentLineColor: string): ReactNode;
6
8
  interface BannerProps {
7
9
  bannerText: string;
8
- color: string;
10
+ isWarning: boolean;
9
11
  width: number;
10
12
  }
11
- export declare const Banner: ({ bannerText, color, width }: BannerProps) => import("react/jsx-runtime").JSX.Element;
13
+ export declare const Banner: ({ bannerText, isWarning, width }: BannerProps) => import("react/jsx-runtime").JSX.Element;
12
14
  export {};
@@ -5,10 +5,24 @@ import { jsx as _jsx } from "react/jsx-runtime";
5
5
  * SPDX-License-Identifier: Apache-2.0
6
6
  */
7
7
  import { Box, Text } from 'ink';
8
- import Gradient from 'ink-gradient';
8
+ import { ThemedGradient } from './ThemedGradient.js';
9
9
  import { theme } from '../semantic-colors.js';
10
- export const Banner = ({ bannerText, color, width }) => {
11
- const gradient = theme.ui.gradient;
12
- return (_jsx(Box, { flexDirection: "column", borderStyle: "round", borderColor: color, width: width, paddingLeft: 1, paddingRight: 1, children: _jsx(Gradient, { colors: gradient, children: _jsx(Text, { children: bannerText }) }) }));
10
+ export function getFormattedBannerContent(rawText, isWarning, subsequentLineColor) {
11
+ if (isWarning) {
12
+ return (_jsx(Text, { color: theme.status.warning, children: rawText.replace(/\\n/g, '\n') }));
13
+ }
14
+ const text = rawText.replace(/\\n/g, '\n');
15
+ const lines = text.split('\n');
16
+ return lines.map((line, index) => {
17
+ if (index === 0) {
18
+ return (_jsx(ThemedGradient, { children: _jsx(Text, { children: line }) }, index));
19
+ }
20
+ return (_jsx(Text, { color: subsequentLineColor, children: line }, index));
21
+ });
22
+ }
23
+ export const Banner = ({ bannerText, isWarning, width }) => {
24
+ const subsequentLineColor = theme.text.primary;
25
+ const formattedBannerContent = getFormattedBannerContent(bannerText, isWarning, subsequentLineColor);
26
+ return (_jsx(Box, { flexDirection: "column", borderStyle: "round", borderColor: isWarning ? theme.status.warning : theme.border.default, width: width, paddingLeft: 1, paddingRight: 1, children: formattedBannerContent }));
13
27
  };
14
28
  //# sourceMappingURL=Banner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Banner.js","sourceRoot":"","sources":["../../../../src/ui/components/Banner.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,QAAQ,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAQ9C,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAe,EAAE,EAAE;IAClE,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC;IACnC,OAAO,CACL,KAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,KAAK,EAClB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,CAAC,EACd,YAAY,EAAE,CAAC,YAEf,KAAC,QAAQ,IAAC,MAAM,EAAE,QAAQ,YACxB,KAAC,IAAI,cAAE,UAAU,GAAQ,GAChB,GACP,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Banner.js","sourceRoot":"","sources":["../../../../src/ui/components/Banner.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAG9C,MAAM,UAAU,yBAAyB,CACvC,OAAe,EACf,SAAkB,EAClB,mBAA2B;IAE3B,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,YAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,GAAQ,CAC1E,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE/B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC/B,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,OAAO,CACL,KAAC,cAAc,cACb,KAAC,IAAI,cAAE,IAAI,GAAQ,IADA,KAAK,CAET,CAClB,CAAC;QACJ,CAAC;QAED,OAAO,CACL,KAAC,IAAI,IAAa,KAAK,EAAE,mBAAmB,YACzC,IAAI,IADI,KAAK,CAET,CACR,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAQD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAe,EAAE,EAAE;IACtE,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;IAE/C,MAAM,sBAAsB,GAAG,yBAAyB,CACtD,UAAU,EACV,SAAS,EACT,mBAAmB,CACpB,CAAC;IAEF,OAAO,CACL,KAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EACpE,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,CAAC,EACd,YAAY,EAAE,CAAC,YAEd,sBAAsB,GACnB,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -7,6 +7,7 @@ import { FixedDeque } from 'mnemonist';
7
7
  export declare const ACTION_TIMESTAMP_CAPACITY = 2048;
8
8
  export declare const FRAME_TIMESTAMP_CAPACITY = 2048;
9
9
  export declare const profiler: {
10
+ profilersActive: number;
10
11
  numFrames: number;
11
12
  totalIdleFrames: number;
12
13
  totalFlickerFrames: number;
@@ -11,6 +11,7 @@ import { theme } from '../semantic-colors.js';
11
11
  import { useUIState } from '../contexts/UIStateContext.js';
12
12
  import { debugState } from '../debug.js';
13
13
  import { appEvents, AppEvent } from '../../utils/events.js';
14
+ import { debugLogger } from '@google/gemini-cli-core';
14
15
  // Frames that render at least this far before or after an action are considered
15
16
  // idle frames.
16
17
  const MIN_TIME_FROM_ACTION_TO_BE_IDLE = 500;
@@ -18,6 +19,7 @@ export const ACTION_TIMESTAMP_CAPACITY = 2048;
18
19
  export const FRAME_TIMESTAMP_CAPACITY = 2048;
19
20
  // Exported for testing purposes.
20
21
  export const profiler = {
22
+ profilersActive: 0,
21
23
  numFrames: 0,
22
24
  totalIdleFrames: 0,
23
25
  totalFlickerFrames: 0,
@@ -38,26 +40,26 @@ export const profiler = {
38
40
  }
39
41
  },
40
42
  reportFrameRendered() {
43
+ if (this.profilersActive === 0) {
44
+ return;
45
+ }
41
46
  const now = Date.now();
42
- // Simple frame detection logic (a write after at least 16ms is a new frame)
43
- if (now - this.lastFrameStartTime > 16) {
44
- this.lastFrameStartTime = now;
45
- this.numFrames++;
46
- if (debugState.debugNumAnimatedComponents === 0) {
47
- if (this.possiblyIdleFrameTimestamps.size >= FRAME_TIMESTAMP_CAPACITY) {
48
- this.possiblyIdleFrameTimestamps.shift();
49
- }
50
- this.possiblyIdleFrameTimestamps.push(now);
47
+ this.lastFrameStartTime = now;
48
+ this.numFrames++;
49
+ if (debugState.debugNumAnimatedComponents === 0) {
50
+ if (this.possiblyIdleFrameTimestamps.size >= FRAME_TIMESTAMP_CAPACITY) {
51
+ this.possiblyIdleFrameTimestamps.shift();
51
52
  }
52
- else {
53
- // If a spinner is present, consider this an action that both prevents
54
- // this frame from being idle and also should prevent a follow on frame
55
- // from being considered idle.
56
- if (this.actionTimestamps.size >= ACTION_TIMESTAMP_CAPACITY) {
57
- this.actionTimestamps.shift();
58
- }
59
- this.actionTimestamps.push(now);
53
+ this.possiblyIdleFrameTimestamps.push(now);
54
+ }
55
+ else {
56
+ // If a spinner is present, consider this an action that both prevents
57
+ // this frame from being idle and also should prevent a follow on frame
58
+ // from being considered idle.
59
+ if (this.actionTimestamps.size >= ACTION_TIMESTAMP_CAPACITY) {
60
+ this.actionTimestamps.shift();
60
61
  }
62
+ this.actionTimestamps.push(now);
61
63
  }
62
64
  },
63
65
  checkForIdleFrames() {
@@ -88,7 +90,7 @@ export const profiler = {
88
90
  this.openedDebugConsole = true;
89
91
  appEvents.emit(AppEvent.OpenDebugConsole);
90
92
  }
91
- appEvents.emit(AppEvent.LogError, `${idleInPastSecond} frames rendered while the app was ` +
93
+ debugLogger.error(`${idleInPastSecond} frames rendered while the app was ` +
92
94
  `idle in the past second. This likely indicates severe infinite loop ` +
93
95
  `React state management bugs.`);
94
96
  }
@@ -104,7 +106,7 @@ export const profiler = {
104
106
  this.reportAction();
105
107
  if (!this.hasLoggedFirstFlicker) {
106
108
  this.hasLoggedFirstFlicker = true;
107
- appEvents.emit(AppEvent.LogError, 'A flicker frame was detected. This will cause UI instability. Type `/profile` for more info.');
109
+ debugLogger.error('A flicker frame was detected. This will cause UI instability. Type `/profile` for more info.');
108
110
  }
109
111
  };
110
112
  appEvents.on(AppEvent.Flicker, flickerHandler);
@@ -118,6 +120,7 @@ export const DebugProfiler = () => {
118
120
  const [forceRefresh, setForceRefresh] = useState(0);
119
121
  // Effect for listening to stdin for keypresses and stdout for resize events.
120
122
  useEffect(() => {
123
+ profiler.profilersActive++;
121
124
  const stdin = process.stdin;
122
125
  const stdout = process.stdout;
123
126
  const handler = () => {
@@ -128,21 +131,7 @@ export const DebugProfiler = () => {
128
131
  return () => {
129
132
  stdin.off('data', handler);
130
133
  stdout.off('resize', handler);
131
- };
132
- }, []);
133
- // Effect for patching stdout to count frames and detect idle ones
134
- useEffect(() => {
135
- const originalWrite = process.stdout.write;
136
- const boundOriginalWrite = originalWrite.bind(process.stdout);
137
- process.stdout.write = (chunk, encodingOrCb, cb) => {
138
- profiler.reportFrameRendered();
139
- if (typeof encodingOrCb === 'function') {
140
- return boundOriginalWrite(chunk, encodingOrCb);
141
- }
142
- return boundOriginalWrite(chunk, encodingOrCb, cb);
143
- };
144
- return () => {
145
- process.stdout.write = originalWrite;
134
+ profiler.profilersActive--;
146
135
  };
147
136
  }, []);
148
137
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"DebugProfiler.js","sourceRoot":"","sources":["../../../../src/ui/components/DebugProfiler.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DebugProfiler.js","sourceRoot":"","sources":["../../../../src/ui/components/DebugProfiler.tsx"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import { debugState } from '../debug.js';
11
11
  describe('DebugProfiler', () => {
12
12
  beforeEach(() => {
13
13
  vi.useFakeTimers();
14
+ profiler.profilersActive = 1;
14
15
  profiler.numFrames = 0;
15
16
  profiler.totalIdleFrames = 0;
16
17
  profiler.lastFrameStartTime = 0;