@google/gemini-cli-core 0.36.0 → 0.37.0-preview.1

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 (480) hide show
  1. package/dist/docs/CONTRIBUTING.md +10 -7
  2. package/dist/docs/assets/theme-tokyonight-dark.png +0 -0
  3. package/dist/docs/changelogs/index.md +24 -0
  4. package/dist/docs/changelogs/latest.md +366 -459
  5. package/dist/docs/changelogs/preview.md +362 -356
  6. package/dist/docs/cli/acp-mode.md +126 -0
  7. package/dist/docs/cli/cli-reference.md +1 -1
  8. package/dist/docs/cli/notifications.md +5 -5
  9. package/dist/docs/cli/plan-mode.md +22 -11
  10. package/dist/docs/cli/sandbox.md +1 -1
  11. package/dist/docs/cli/settings.md +14 -13
  12. package/dist/docs/cli/themes.md +5 -0
  13. package/dist/docs/core/index.md +2 -2
  14. package/dist/docs/core/subagents.md +134 -23
  15. package/dist/docs/get-started/gemini-3.md +1 -1
  16. package/dist/docs/get-started/index.md +127 -1
  17. package/dist/docs/ide-integration/index.md +99 -24
  18. package/dist/docs/index.md +0 -2
  19. package/dist/docs/redirects.json +1 -0
  20. package/dist/docs/reference/commands.md +1 -3
  21. package/dist/docs/reference/configuration.md +182 -91
  22. package/dist/docs/reference/keyboard-shortcuts.md +14 -6
  23. package/dist/docs/reference/policy-engine.md +36 -31
  24. package/dist/docs/reference/tools.md +56 -23
  25. package/dist/docs/resources/quota-and-pricing.md +23 -9
  26. package/dist/docs/sidebar.json +11 -4
  27. package/dist/docs/tools/planning.md +6 -4
  28. package/dist/google-gemini-cli-core-0.37.0-preview.0.tgz +0 -0
  29. package/dist/src/agents/agentLoader.d.ts +12 -12
  30. package/dist/src/agents/agentLoader.js +1 -0
  31. package/dist/src/agents/agentLoader.js.map +1 -1
  32. package/dist/src/agents/browser/automationOverlay.js +2 -10
  33. package/dist/src/agents/browser/automationOverlay.js.map +1 -1
  34. package/dist/src/agents/browser/browserAgentDefinition.js +10 -3
  35. package/dist/src/agents/browser/browserAgentDefinition.js.map +1 -1
  36. package/dist/src/agents/browser/browserAgentFactory.d.ts +4 -4
  37. package/dist/src/agents/browser/browserAgentFactory.js +15 -29
  38. package/dist/src/agents/browser/browserAgentFactory.js.map +1 -1
  39. package/dist/src/agents/browser/browserAgentFactory.test.js +41 -24
  40. package/dist/src/agents/browser/browserAgentFactory.test.js.map +1 -1
  41. package/dist/src/agents/browser/browserAgentInvocation.d.ts +1 -0
  42. package/dist/src/agents/browser/browserAgentInvocation.js +60 -27
  43. package/dist/src/agents/browser/browserAgentInvocation.js.map +1 -1
  44. package/dist/src/agents/browser/browserAgentInvocation.test.js +59 -5
  45. package/dist/src/agents/browser/browserAgentInvocation.test.js.map +1 -1
  46. package/dist/src/agents/browser/browserManager.d.ts +51 -8
  47. package/dist/src/agents/browser/browserManager.js +242 -70
  48. package/dist/src/agents/browser/browserManager.js.map +1 -1
  49. package/dist/src/agents/browser/browserManager.test.js +384 -17
  50. package/dist/src/agents/browser/browserManager.test.js.map +1 -1
  51. package/dist/src/agents/browser/inputBlocker.d.ts +4 -4
  52. package/dist/src/agents/browser/inputBlocker.js +8 -18
  53. package/dist/src/agents/browser/inputBlocker.js.map +1 -1
  54. package/dist/src/agents/browser/inputBlocker.test.js +31 -3
  55. package/dist/src/agents/browser/inputBlocker.test.js.map +1 -1
  56. package/dist/src/agents/browser/mcpToolWrapper.d.ts +1 -1
  57. package/dist/src/agents/browser/mcpToolWrapper.js +9 -6
  58. package/dist/src/agents/browser/mcpToolWrapper.js.map +1 -1
  59. package/dist/src/agents/browser/mcpToolWrapper.test.js +2 -2
  60. package/dist/src/agents/browser/mcpToolWrapper.test.js.map +1 -1
  61. package/dist/src/agents/browser/snapshotSuperseder.d.ts +31 -0
  62. package/dist/src/agents/browser/snapshotSuperseder.js +101 -0
  63. package/dist/src/agents/browser/snapshotSuperseder.js.map +1 -0
  64. package/dist/src/agents/browser/snapshotSuperseder.test.js +158 -0
  65. package/dist/src/agents/browser/snapshotSuperseder.test.js.map +1 -0
  66. package/dist/src/agents/local-executor.d.ts +4 -0
  67. package/dist/src/agents/local-executor.js +46 -19
  68. package/dist/src/agents/local-executor.js.map +1 -1
  69. package/dist/src/agents/local-executor.test.js +118 -18
  70. package/dist/src/agents/local-executor.test.js.map +1 -1
  71. package/dist/src/agents/local-invocation.d.ts +1 -0
  72. package/dist/src/agents/local-invocation.js +19 -9
  73. package/dist/src/agents/local-invocation.js.map +1 -1
  74. package/dist/src/agents/local-invocation.test.js +24 -0
  75. package/dist/src/agents/local-invocation.test.js.map +1 -1
  76. package/dist/src/agents/registry.js +16 -1
  77. package/dist/src/agents/registry.js.map +1 -1
  78. package/dist/src/agents/registry.test.js +67 -0
  79. package/dist/src/agents/registry.test.js.map +1 -1
  80. package/dist/src/agents/types.d.ts +9 -0
  81. package/dist/src/agents/types.js.map +1 -1
  82. package/dist/src/code_assist/oauth2.js +8 -3
  83. package/dist/src/code_assist/oauth2.js.map +1 -1
  84. package/dist/src/code_assist/oauth2.test.js +57 -0
  85. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  86. package/dist/src/code_assist/setup.js +5 -2
  87. package/dist/src/code_assist/setup.js.map +1 -1
  88. package/dist/src/code_assist/setup.test.js +27 -1
  89. package/dist/src/code_assist/setup.test.js.map +1 -1
  90. package/dist/src/code_assist/types.d.ts +80 -80
  91. package/dist/src/config/agent-loop-context.d.ts +2 -0
  92. package/dist/src/config/config.d.ts +81 -16
  93. package/dist/src/config/config.js +146 -50
  94. package/dist/src/config/config.js.map +1 -1
  95. package/dist/src/config/config.test.js +89 -2
  96. package/dist/src/config/config.test.js.map +1 -1
  97. package/dist/src/config/defaultModelConfigs.js +9 -0
  98. package/dist/src/config/defaultModelConfigs.js.map +1 -1
  99. package/dist/src/config/memory.d.ts +1 -0
  100. package/dist/src/config/memory.js +6 -0
  101. package/dist/src/config/memory.js.map +1 -1
  102. package/dist/src/config/storage.d.ts +1 -0
  103. package/dist/src/config/storage.js +4 -0
  104. package/dist/src/config/storage.js.map +1 -1
  105. package/dist/src/config/storage.test.js +5 -0
  106. package/dist/src/config/storage.test.js.map +1 -1
  107. package/dist/src/config/topicState.d.ts +21 -0
  108. package/dist/src/config/topicState.js +41 -0
  109. package/dist/src/config/topicState.js.map +1 -0
  110. package/dist/src/confirmation-bus/types.d.ts +11 -2
  111. package/dist/src/confirmation-bus/types.js +2 -0
  112. package/dist/src/confirmation-bus/types.js.map +1 -1
  113. package/dist/src/context/agentHistoryProvider.d.ts +45 -0
  114. package/dist/src/context/agentHistoryProvider.js +298 -0
  115. package/dist/src/context/agentHistoryProvider.js.map +1 -0
  116. package/dist/src/context/agentHistoryProvider.test.d.ts +6 -0
  117. package/dist/src/context/agentHistoryProvider.test.js +394 -0
  118. package/dist/src/context/agentHistoryProvider.test.js.map +1 -0
  119. package/dist/src/context/chatCompressionService.js.map +1 -0
  120. package/dist/src/context/chatCompressionService.test.js.map +1 -0
  121. package/dist/src/{services → context}/contextManager.d.ts +2 -0
  122. package/dist/src/{services → context}/contextManager.js +18 -9
  123. package/dist/src/context/contextManager.js.map +1 -0
  124. package/dist/src/{services → context}/contextManager.test.js +21 -6
  125. package/dist/src/context/contextManager.test.js.map +1 -0
  126. package/dist/src/context/toolDistillationService.d.ts +38 -0
  127. package/dist/src/context/toolDistillationService.js +170 -0
  128. package/dist/src/context/toolDistillationService.js.map +1 -0
  129. package/dist/src/context/toolDistillationService.test.d.ts +6 -0
  130. package/dist/src/context/toolDistillationService.test.js +83 -0
  131. package/dist/src/context/toolDistillationService.test.js.map +1 -0
  132. package/dist/src/{services → context}/toolOutputMaskingService.d.ts +2 -2
  133. package/dist/src/{services → context}/toolOutputMaskingService.js +7 -7
  134. package/dist/src/context/toolOutputMaskingService.js.map +1 -0
  135. package/dist/src/context/toolOutputMaskingService.test.d.ts +6 -0
  136. package/dist/src/{services → context}/toolOutputMaskingService.test.js +4 -5
  137. package/dist/src/context/toolOutputMaskingService.test.js.map +1 -0
  138. package/dist/src/context/truncation.d.ts +26 -0
  139. package/dist/src/context/truncation.js +102 -0
  140. package/dist/src/context/truncation.js.map +1 -0
  141. package/dist/src/core/client.d.ts +3 -1
  142. package/dist/src/core/client.js +23 -13
  143. package/dist/src/core/client.js.map +1 -1
  144. package/dist/src/core/client.test.js +29 -34
  145. package/dist/src/core/client.test.js.map +1 -1
  146. package/dist/src/core/contentGenerator.d.ts +0 -1
  147. package/dist/src/core/contentGenerator.js +2 -28
  148. package/dist/src/core/contentGenerator.js.map +1 -1
  149. package/dist/src/core/contentGenerator.test.js +1 -101
  150. package/dist/src/core/contentGenerator.test.js.map +1 -1
  151. package/dist/src/core/geminiChat.js +4 -5
  152. package/dist/src/core/geminiChat.js.map +1 -1
  153. package/dist/src/core/geminiChat.test.js +71 -18
  154. package/dist/src/core/geminiChat.test.js.map +1 -1
  155. package/dist/src/core/prompts-substitution.test.js +5 -0
  156. package/dist/src/core/prompts-substitution.test.js.map +1 -1
  157. package/dist/src/core/prompts.test.js +3 -0
  158. package/dist/src/core/prompts.test.js.map +1 -1
  159. package/dist/src/generated/git-commit.d.ts +2 -2
  160. package/dist/src/generated/git-commit.js +2 -2
  161. package/dist/src/generated/git-commit.js.map +1 -1
  162. package/dist/src/index.d.ts +7 -3
  163. package/dist/src/index.js +9 -5
  164. package/dist/src/index.js.map +1 -1
  165. package/dist/src/policy/config.d.ts +1 -1
  166. package/dist/src/policy/config.js +61 -24
  167. package/dist/src/policy/config.js.map +1 -1
  168. package/dist/src/policy/persistence.test.js +42 -0
  169. package/dist/src/policy/persistence.test.js.map +1 -1
  170. package/dist/src/policy/policies/discovered.toml +7 -0
  171. package/dist/src/policy/policies/non-interactive.toml +7 -0
  172. package/dist/src/policy/policies/plan.toml +25 -0
  173. package/dist/src/policy/policies/read-only.toml +6 -0
  174. package/dist/src/policy/policies/sandbox-default.toml +3 -2
  175. package/dist/src/policy/policies/write.toml +21 -0
  176. package/dist/src/policy/policies/yolo.toml +1 -1
  177. package/dist/src/policy/policy-engine.d.ts +2 -4
  178. package/dist/src/policy/policy-engine.js +24 -37
  179. package/dist/src/policy/policy-engine.js.map +1 -1
  180. package/dist/src/policy/policy-engine.test.js +107 -29
  181. package/dist/src/policy/policy-engine.test.js.map +1 -1
  182. package/dist/src/policy/topic-policy.test.d.ts +6 -0
  183. package/dist/src/policy/topic-policy.test.js +48 -0
  184. package/dist/src/policy/topic-policy.test.js.map +1 -0
  185. package/dist/src/policy/types.d.ts +9 -6
  186. package/dist/src/policy/types.js +11 -0
  187. package/dist/src/policy/types.js.map +1 -1
  188. package/dist/src/prompts/promptProvider.js +20 -4
  189. package/dist/src/prompts/promptProvider.js.map +1 -1
  190. package/dist/src/prompts/promptProvider.test.js +84 -1
  191. package/dist/src/prompts/promptProvider.test.js.map +1 -1
  192. package/dist/src/prompts/snippets-memory-manager.test.js +1 -1
  193. package/dist/src/prompts/snippets-memory-manager.test.js.map +1 -1
  194. package/dist/src/prompts/snippets.d.ts +3 -4
  195. package/dist/src/prompts/snippets.js +33 -51
  196. package/dist/src/prompts/snippets.js.map +1 -1
  197. package/dist/src/prompts/snippets.legacy.d.ts +6 -4
  198. package/dist/src/prompts/snippets.legacy.js +32 -7
  199. package/dist/src/prompts/snippets.legacy.js.map +1 -1
  200. package/dist/src/sandbox/linux/LinuxSandboxManager.d.ts +11 -1
  201. package/dist/src/sandbox/linux/LinuxSandboxManager.js +261 -27
  202. package/dist/src/sandbox/linux/LinuxSandboxManager.js.map +1 -1
  203. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js +430 -125
  204. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js.map +1 -1
  205. package/dist/src/sandbox/macos/MacOsSandboxManager.d.ts +7 -22
  206. package/dist/src/sandbox/macos/MacOsSandboxManager.js +58 -57
  207. package/dist/src/sandbox/macos/MacOsSandboxManager.js.map +1 -1
  208. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js +148 -103
  209. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js.map +1 -1
  210. package/dist/src/sandbox/macos/baseProfile.d.ts +1 -1
  211. package/dist/src/sandbox/macos/baseProfile.js +0 -6
  212. package/dist/src/sandbox/macos/baseProfile.js.map +1 -1
  213. package/dist/src/sandbox/macos/seatbeltArgsBuilder.d.ts +10 -10
  214. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js +80 -92
  215. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js.map +1 -1
  216. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js +135 -99
  217. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js.map +1 -1
  218. package/dist/src/sandbox/{macos → utils}/commandSafety.d.ts +11 -0
  219. package/dist/src/sandbox/{macos → utils}/commandSafety.js +47 -14
  220. package/dist/src/sandbox/utils/commandSafety.js.map +1 -0
  221. package/dist/src/sandbox/utils/commandUtils.d.ts +9 -0
  222. package/dist/src/sandbox/utils/commandUtils.js +57 -0
  223. package/dist/src/sandbox/utils/commandUtils.js.map +1 -0
  224. package/dist/src/sandbox/utils/fsUtils.d.ts +11 -0
  225. package/dist/src/sandbox/utils/fsUtils.js +82 -0
  226. package/dist/src/sandbox/utils/fsUtils.js.map +1 -0
  227. package/dist/src/sandbox/utils/sandboxDenialUtils.d.ts +12 -0
  228. package/dist/src/sandbox/utils/sandboxDenialUtils.js +68 -0
  229. package/dist/src/sandbox/utils/sandboxDenialUtils.js.map +1 -0
  230. package/dist/src/sandbox/utils/sandboxDenialUtils.test.d.ts +6 -0
  231. package/dist/src/sandbox/utils/sandboxDenialUtils.test.js +37 -0
  232. package/dist/src/sandbox/utils/sandboxDenialUtils.test.js.map +1 -0
  233. package/dist/src/sandbox/utils/sandboxReadWriteUtils.d.ts +5 -0
  234. package/dist/src/sandbox/utils/sandboxReadWriteUtils.js +60 -0
  235. package/dist/src/sandbox/utils/sandboxReadWriteUtils.js.map +1 -0
  236. package/dist/src/sandbox/windows/GeminiSandbox.cs +257 -216
  237. package/dist/src/sandbox/windows/WindowsSandboxManager.d.ts +12 -2
  238. package/dist/src/sandbox/windows/WindowsSandboxManager.js +250 -38
  239. package/dist/src/sandbox/windows/WindowsSandboxManager.js.map +1 -1
  240. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js +326 -9
  241. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js.map +1 -1
  242. package/dist/src/sandbox/windows/commandSafety.d.ts +19 -0
  243. package/dist/src/sandbox/windows/commandSafety.js +128 -0
  244. package/dist/src/sandbox/windows/commandSafety.js.map +1 -0
  245. package/dist/src/sandbox/windows/commandSafety.test.d.ts +6 -0
  246. package/dist/src/sandbox/windows/commandSafety.test.js +42 -0
  247. package/dist/src/sandbox/windows/commandSafety.test.js.map +1 -0
  248. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.d.ts +12 -0
  249. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js +68 -0
  250. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js.map +1 -0
  251. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.d.ts +6 -0
  252. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js +68 -0
  253. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js.map +1 -0
  254. package/dist/src/scheduler/policy.js +20 -5
  255. package/dist/src/scheduler/policy.js.map +1 -1
  256. package/dist/src/scheduler/policy.test.js +80 -0
  257. package/dist/src/scheduler/policy.test.js.map +1 -1
  258. package/dist/src/scheduler/scheduler.js +12 -2
  259. package/dist/src/scheduler/scheduler.js.map +1 -1
  260. package/dist/src/scheduler/scheduler.test.js +52 -0
  261. package/dist/src/scheduler/scheduler.test.js.map +1 -1
  262. package/dist/src/scheduler/scheduler_hooks.test.js +1 -0
  263. package/dist/src/scheduler/scheduler_hooks.test.js.map +1 -1
  264. package/dist/src/scheduler/state-manager.js +1 -1
  265. package/dist/src/scheduler/state-manager.js.map +1 -1
  266. package/dist/src/scheduler/state-manager.test.js +10 -0
  267. package/dist/src/scheduler/state-manager.test.js.map +1 -1
  268. package/dist/src/scheduler/tool-executor.js +7 -2
  269. package/dist/src/scheduler/tool-executor.js.map +1 -1
  270. package/dist/src/scheduler/tool-executor.test.js +38 -0
  271. package/dist/src/scheduler/tool-executor.test.js.map +1 -1
  272. package/dist/src/scheduler/types.d.ts +4 -2
  273. package/dist/src/services/chatRecordingService.d.ts +1 -13
  274. package/dist/src/services/chatRecordingService.js +45 -46
  275. package/dist/src/services/chatRecordingService.js.map +1 -1
  276. package/dist/src/services/chatRecordingService.test.js +79 -10
  277. package/dist/src/services/chatRecordingService.test.js.map +1 -1
  278. package/dist/src/services/executionLifecycleService.d.ts +43 -6
  279. package/dist/src/services/executionLifecycleService.js +49 -12
  280. package/dist/src/services/executionLifecycleService.js.map +1 -1
  281. package/dist/src/services/executionLifecycleService.test.js +157 -3
  282. package/dist/src/services/executionLifecycleService.test.js.map +1 -1
  283. package/dist/src/services/fileDiscoveryService.d.ts +17 -2
  284. package/dist/src/services/fileDiscoveryService.js +84 -20
  285. package/dist/src/services/fileDiscoveryService.js.map +1 -1
  286. package/dist/src/services/fileDiscoveryService.test.js +67 -1
  287. package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
  288. package/dist/src/services/modelConfigService.d.ts +11 -0
  289. package/dist/src/services/modelConfigService.js +67 -0
  290. package/dist/src/services/modelConfigService.js.map +1 -1
  291. package/dist/src/services/modelConfigService.test.js +30 -0
  292. package/dist/src/services/modelConfigService.test.js.map +1 -1
  293. package/dist/src/services/sandboxManager.d.ts +90 -8
  294. package/dist/src/services/sandboxManager.integration.test.js +438 -0
  295. package/dist/src/services/sandboxManager.integration.test.js.map +1 -0
  296. package/dist/src/services/sandboxManager.js +156 -13
  297. package/dist/src/services/sandboxManager.js.map +1 -1
  298. package/dist/src/services/sandboxManager.test.js +373 -117
  299. package/dist/src/services/sandboxManager.test.js.map +1 -1
  300. package/dist/src/services/sandboxManagerFactory.d.ts +2 -3
  301. package/dist/src/services/sandboxManagerFactory.js +10 -17
  302. package/dist/src/services/sandboxManagerFactory.js.map +1 -1
  303. package/dist/src/services/sandboxedFileSystemService.d.ts +1 -0
  304. package/dist/src/services/sandboxedFileSystemService.js +32 -3
  305. package/dist/src/services/sandboxedFileSystemService.js.map +1 -1
  306. package/dist/src/services/sandboxedFileSystemService.test.js +83 -12
  307. package/dist/src/services/sandboxedFileSystemService.test.js.map +1 -1
  308. package/dist/src/services/shellExecutionService.d.ts +2 -0
  309. package/dist/src/services/shellExecutionService.js +45 -16
  310. package/dist/src/services/shellExecutionService.js.map +1 -1
  311. package/dist/src/services/shellExecutionService.test.js +5 -4
  312. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  313. package/dist/src/services/test-data/resolved-aliases-retry.golden.json +4 -0
  314. package/dist/src/services/test-data/resolved-aliases.golden.json +4 -0
  315. package/dist/src/services/types.d.ts +14 -0
  316. package/dist/src/services/types.js +7 -0
  317. package/dist/src/services/types.js.map +1 -0
  318. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +6 -0
  319. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  320. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +5 -1
  321. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  322. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +2 -1
  323. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +3 -1
  324. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  325. package/dist/src/telemetry/loggers.js +1 -1
  326. package/dist/src/telemetry/loggers.js.map +1 -1
  327. package/dist/src/telemetry/loggers.test.js +8 -3
  328. package/dist/src/telemetry/loggers.test.js.map +1 -1
  329. package/dist/src/telemetry/metrics.d.ts +10 -1
  330. package/dist/src/telemetry/metrics.js +19 -4
  331. package/dist/src/telemetry/metrics.js.map +1 -1
  332. package/dist/src/telemetry/metrics.test.js +44 -0
  333. package/dist/src/telemetry/metrics.test.js.map +1 -1
  334. package/dist/src/telemetry/types.d.ts +3 -3
  335. package/dist/src/telemetry/types.js +9 -4
  336. package/dist/src/telemetry/types.js.map +1 -1
  337. package/dist/src/test-utils/mock-message-bus.d.ts +1 -1
  338. package/dist/src/test-utils/mock-message-bus.js +1 -1
  339. package/dist/src/test-utils/mock-message-bus.js.map +1 -1
  340. package/dist/src/tools/definitions/base-declarations.d.ts +6 -0
  341. package/dist/src/tools/definitions/base-declarations.js +7 -0
  342. package/dist/src/tools/definitions/base-declarations.js.map +1 -1
  343. package/dist/src/tools/definitions/coreTools.d.ts +2 -1
  344. package/dist/src/tools/definitions/coreTools.js +9 -3
  345. package/dist/src/tools/definitions/coreTools.js.map +1 -1
  346. package/dist/src/tools/definitions/dynamic-declaration-helpers.d.ts +4 -0
  347. package/dist/src/tools/definitions/dynamic-declaration-helpers.js +29 -2
  348. package/dist/src/tools/definitions/dynamic-declaration-helpers.js.map +1 -1
  349. package/dist/src/tools/definitions/model-family-sets/default-legacy.js +11 -6
  350. package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
  351. package/dist/src/tools/definitions/model-family-sets/gemini-3.js +10 -4
  352. package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
  353. package/dist/src/tools/definitions/trackerTools.js +3 -3
  354. package/dist/src/tools/definitions/trackerTools.js.map +1 -1
  355. package/dist/src/tools/definitions/types.d.ts +1 -0
  356. package/dist/src/tools/enter-plan-mode.js +15 -0
  357. package/dist/src/tools/enter-plan-mode.js.map +1 -1
  358. package/dist/src/tools/enter-plan-mode.test.js +25 -0
  359. package/dist/src/tools/enter-plan-mode.test.js.map +1 -1
  360. package/dist/src/tools/grep-utils.d.ts +2 -1
  361. package/dist/src/tools/grep-utils.js +22 -3
  362. package/dist/src/tools/grep-utils.js.map +1 -1
  363. package/dist/src/tools/grep.js +16 -3
  364. package/dist/src/tools/grep.js.map +1 -1
  365. package/dist/src/tools/grep.test.js +34 -6
  366. package/dist/src/tools/grep.test.js.map +1 -1
  367. package/dist/src/tools/ls.js +6 -4
  368. package/dist/src/tools/ls.js.map +1 -1
  369. package/dist/src/tools/ls.test.js +22 -7
  370. package/dist/src/tools/ls.test.js.map +1 -1
  371. package/dist/src/tools/mcp-client-manager.js +6 -3
  372. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  373. package/dist/src/tools/mcp-client-manager.test.js +35 -0
  374. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  375. package/dist/src/tools/memoryTool.d.ts +9 -2
  376. package/dist/src/tools/memoryTool.js +39 -15
  377. package/dist/src/tools/memoryTool.js.map +1 -1
  378. package/dist/src/tools/memoryTool.test.js +61 -2
  379. package/dist/src/tools/memoryTool.test.js.map +1 -1
  380. package/dist/src/tools/read-many-files.js +12 -4
  381. package/dist/src/tools/read-many-files.js.map +1 -1
  382. package/dist/src/tools/read-many-files.test.js +17 -17
  383. package/dist/src/tools/read-many-files.test.js.map +1 -1
  384. package/dist/src/tools/ripGrep.js +14 -1
  385. package/dist/src/tools/ripGrep.js.map +1 -1
  386. package/dist/src/tools/ripGrep.test.js +9 -9
  387. package/dist/src/tools/ripGrep.test.js.map +1 -1
  388. package/dist/src/tools/shell.d.ts +10 -0
  389. package/dist/src/tools/shell.js +97 -124
  390. package/dist/src/tools/shell.js.map +1 -1
  391. package/dist/src/tools/shell.test.js +22 -3
  392. package/dist/src/tools/shell.test.js.map +1 -1
  393. package/dist/src/tools/tool-names.d.ts +4 -4
  394. package/dist/src/tools/tool-names.js +5 -3
  395. package/dist/src/tools/tool-names.js.map +1 -1
  396. package/dist/src/tools/tool-registry.js +11 -1
  397. package/dist/src/tools/tool-registry.js.map +1 -1
  398. package/dist/src/tools/tool-registry.test.js +43 -1
  399. package/dist/src/tools/tool-registry.test.js.map +1 -1
  400. package/dist/src/tools/tools.d.ts +12 -1
  401. package/dist/src/tools/tools.js +15 -0
  402. package/dist/src/tools/tools.js.map +1 -1
  403. package/dist/src/tools/tools.test.js +42 -1
  404. package/dist/src/tools/tools.test.js.map +1 -1
  405. package/dist/src/tools/topicTool.d.ts +29 -0
  406. package/dist/src/tools/topicTool.js +72 -0
  407. package/dist/src/tools/topicTool.js.map +1 -0
  408. package/dist/src/tools/topicTool.test.d.ts +6 -0
  409. package/dist/src/tools/topicTool.test.js +105 -0
  410. package/dist/src/tools/topicTool.test.js.map +1 -0
  411. package/dist/src/tools/web-fetch.js +38 -20
  412. package/dist/src/tools/web-fetch.js.map +1 -1
  413. package/dist/src/tools/web-fetch.test.js +28 -0
  414. package/dist/src/tools/web-fetch.test.js.map +1 -1
  415. package/dist/src/utils/checkpointUtils.d.ts +4 -4
  416. package/dist/src/utils/errors.d.ts +3 -0
  417. package/dist/src/utils/errors.js +28 -6
  418. package/dist/src/utils/errors.js.map +1 -1
  419. package/dist/src/utils/errors.test.js +23 -0
  420. package/dist/src/utils/errors.test.js.map +1 -1
  421. package/dist/src/utils/getFolderStructure.js +1 -1
  422. package/dist/src/utils/getFolderStructure.js.map +1 -1
  423. package/dist/src/utils/gitIgnoreParser.d.ts +2 -2
  424. package/dist/src/utils/gitIgnoreParser.js +28 -50
  425. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  426. package/dist/src/utils/gitIgnoreParser.test.js +51 -185
  427. package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
  428. package/dist/src/utils/ignoreFileParser.d.ts +2 -2
  429. package/dist/src/utils/ignoreFileParser.js +6 -17
  430. package/dist/src/utils/ignoreFileParser.js.map +1 -1
  431. package/dist/src/utils/ignoreFileParser.test.js +40 -132
  432. package/dist/src/utils/ignoreFileParser.test.js.map +1 -1
  433. package/dist/src/utils/ignorePathUtils.d.ts +11 -0
  434. package/dist/src/utils/ignorePathUtils.js +39 -0
  435. package/dist/src/utils/ignorePathUtils.js.map +1 -0
  436. package/dist/src/utils/ignorePathUtils.test.d.ts +6 -0
  437. package/dist/src/utils/ignorePathUtils.test.js +70 -0
  438. package/dist/src/utils/ignorePathUtils.test.js.map +1 -0
  439. package/dist/src/utils/memoryDiscovery.d.ts +6 -4
  440. package/dist/src/utils/memoryDiscovery.js +66 -41
  441. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  442. package/dist/src/utils/memoryDiscovery.test.js +40 -0
  443. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  444. package/dist/src/utils/memoryImportProcessor.d.ts +1 -1
  445. package/dist/src/utils/memoryImportProcessor.js +24 -15
  446. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  447. package/dist/src/utils/sessionOperations.d.ts +19 -0
  448. package/dist/src/utils/sessionOperations.js +101 -0
  449. package/dist/src/utils/sessionOperations.js.map +1 -0
  450. package/dist/src/utils/sessionOperations.test.d.ts +6 -0
  451. package/dist/src/utils/sessionOperations.test.js +92 -0
  452. package/dist/src/utils/sessionOperations.test.js.map +1 -0
  453. package/dist/src/utils/shell-utils.d.ts +15 -0
  454. package/dist/src/utils/shell-utils.js +43 -2
  455. package/dist/src/utils/shell-utils.js.map +1 -1
  456. package/dist/src/utils/textUtils.d.ts +8 -0
  457. package/dist/src/utils/textUtils.js +16 -0
  458. package/dist/src/utils/textUtils.js.map +1 -1
  459. package/dist/src/utils/tokenCalculation.d.ts +2 -0
  460. package/dist/src/utils/tokenCalculation.js +2 -2
  461. package/dist/src/utils/tokenCalculation.js.map +1 -1
  462. package/dist/tsconfig.tsbuildinfo +1 -1
  463. package/package.json +1 -1
  464. package/dist/docs/get-started/examples.md +0 -141
  465. package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js +0 -164
  466. package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js.map +0 -1
  467. package/dist/src/sandbox/macos/commandSafety.js.map +0 -1
  468. package/dist/src/services/chatCompressionService.js.map +0 -1
  469. package/dist/src/services/chatCompressionService.test.js.map +0 -1
  470. package/dist/src/services/contextManager.js.map +0 -1
  471. package/dist/src/services/contextManager.test.js.map +0 -1
  472. package/dist/src/services/toolOutputMaskingService.js.map +0 -1
  473. package/dist/src/services/toolOutputMaskingService.test.js.map +0 -1
  474. /package/dist/src/{services/toolOutputMaskingService.test.d.ts → agents/browser/snapshotSuperseder.test.d.ts} +0 -0
  475. /package/dist/src/{services → context}/chatCompressionService.d.ts +0 -0
  476. /package/dist/src/{services → context}/chatCompressionService.js +0 -0
  477. /package/dist/src/{services → context}/chatCompressionService.test.d.ts +0 -0
  478. /package/dist/src/{services → context}/chatCompressionService.test.js +0 -0
  479. /package/dist/src/{services → context}/contextManager.test.d.ts +0 -0
  480. /package/dist/src/{sandbox/macos/MacOsSandboxManager.integration.test.d.ts → services/sandboxManager.integration.test.d.ts} +0 -0
@@ -63,29 +63,62 @@ details.
63
63
 
64
64
  ## Available tools
65
65
 
66
- The following table lists all available tools, categorized by their primary
67
- function.
68
-
69
- | Category | Tool | Kind | Description |
70
- | :---------- | :----------------------------------------------- | :------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
71
- | Execution | [`run_shell_command`](../tools/shell.md) | `Execute` | Executes arbitrary shell commands. Supports interactive sessions and background processes. Requires manual confirmation.<br><br>**Parameters:** `command`, `description`, `dir_path`, `is_background` |
72
- | File System | [`glob`](../tools/file-system.md) | `Search` | Finds files matching specific glob patterns across the workspace.<br><br>**Parameters:** `pattern`, `dir_path`, `case_sensitive`, `respect_git_ignore`, `respect_gemini_ignore` |
73
- | File System | [`grep_search`](../tools/file-system.md) | `Search` | Searches for a regular expression pattern within file contents. Legacy alias: `search_file_content`.<br><br>**Parameters:** `pattern`, `dir_path`, `include`, `exclude_pattern`, `names_only`, `max_matches_per_file`, `total_max_matches` |
74
- | File System | [`list_directory`](../tools/file-system.md) | `Read` | Lists the names of files and subdirectories within a specified path.<br><br>**Parameters:** `dir_path`, `ignore`, `file_filtering_options` |
75
- | File System | [`read_file`](../tools/file-system.md) | `Read` | Reads the content of a specific file. Supports text, images, audio, and PDF.<br><br>**Parameters:** `file_path`, `start_line`, `end_line` |
76
- | File System | [`read_many_files`](../tools/file-system.md) | `Read` | Reads and concatenates content from multiple files. Often triggered by the `@` symbol in your prompt.<br><br>**Parameters:** `include`, `exclude`, `recursive`, `useDefaultExcludes`, `file_filtering_options` |
77
- | File System | [`replace`](../tools/file-system.md) | `Edit` | Performs precise text replacement within a file. Requires manual confirmation.<br><br>**Parameters:** `file_path`, `instruction`, `old_string`, `new_string`, `allow_multiple` |
78
- | File System | [`write_file`](../tools/file-system.md) | `Edit` | Creates or overwrites a file with new content. Requires manual confirmation.<br><br>**Parameters:** `file_path`, `content` |
79
- | Interaction | [`ask_user`](../tools/ask-user.md) | `Communicate` | Requests clarification or missing information via an interactive dialog.<br><br>**Parameters:** `questions` |
80
- | Interaction | [`write_todos`](../tools/todos.md) | `Other` | Maintains an internal list of subtasks. The model uses this to track its own progress and display it to you.<br><br>**Parameters:** `todos` |
81
- | Memory | [`activate_skill`](../tools/activate-skill.md) | `Other` | Loads specialized procedural expertise for specific tasks from the `.gemini/skills` directory.<br><br>**Parameters:** `name` |
82
- | Memory | [`get_internal_docs`](../tools/internal-docs.md) | `Think` | Accesses Gemini CLI's own documentation to provide more accurate answers about its capabilities.<br><br>**Parameters:** `path` |
83
- | Memory | [`save_memory`](../tools/memory.md) | `Think` | Persists specific facts and project details to your `GEMINI.md` file to retain context.<br><br>**Parameters:** `fact` |
84
- | Planning | [`enter_plan_mode`](../tools/planning.md) | `Plan` | Switches the CLI to a safe, read-only "Plan Mode" for researching complex changes.<br><br>**Parameters:** `reason` |
85
- | Planning | [`exit_plan_mode`](../tools/planning.md) | `Plan` | Finalizes a plan, presents it for review, and requests approval to start implementation.<br><br>**Parameters:** `plan` |
86
- | System | `complete_task` | `Other` | Finalizes a subagent's mission and returns the result to the parent agent. This tool is not available to the user.<br><br>**Parameters:** `result` |
87
- | Web | [`google_web_search`](../tools/web-search.md) | `Search` | Performs a Google Search to find up-to-date information.<br><br>**Parameters:** `query` |
88
- | Web | [`web_fetch`](../tools/web-fetch.md) | `Fetch` | Retrieves and processes content from specific URLs. **Warning:** This tool can access local and private network addresses (e.g., localhost), which may pose a security risk if used with untrusted prompts.<br><br>**Parameters:** `prompt` |
66
+ The following sections list all available tools, categorized by their primary
67
+ function. For detailed parameter information, see the linked documentation for
68
+ each tool.
69
+
70
+ ### Execution
71
+
72
+ | Tool | Kind | Description |
73
+ | :--------------------------------------- | :-------- | :----------------------------------------------------------------------------------------------------------------------- |
74
+ | [`run_shell_command`](../tools/shell.md) | `Execute` | Executes arbitrary shell commands. Supports interactive sessions and background processes. Requires manual confirmation. |
75
+
76
+ ### File System
77
+
78
+ | Tool | Kind | Description |
79
+ | :------------------------------------------- | :------- | :---------------------------------------------------------------------------------------------------- |
80
+ | [`glob`](../tools/file-system.md) | `Search` | Finds files matching specific glob patterns across the workspace. |
81
+ | [`grep_search`](../tools/file-system.md) | `Search` | Searches for a regular expression pattern within file contents. Legacy alias: `search_file_content`. |
82
+ | [`list_directory`](../tools/file-system.md) | `Read` | Lists the names of files and subdirectories within a specified path. |
83
+ | [`read_file`](../tools/file-system.md) | `Read` | Reads the content of a specific file. Supports text, images, audio, and PDF. |
84
+ | [`read_many_files`](../tools/file-system.md) | `Read` | Reads and concatenates content from multiple files. Often triggered by the `@` symbol in your prompt. |
85
+ | [`replace`](../tools/file-system.md) | `Edit` | Performs precise text replacement within a file. Requires manual confirmation. |
86
+ | [`write_file`](../tools/file-system.md) | `Edit` | Creates or overwrites a file with new content. Requires manual confirmation. |
87
+
88
+ ### Interaction
89
+
90
+ | Tool | Kind | Description |
91
+ | :--------------------------------- | :------------ | :------------------------------------------------------------------------------------- |
92
+ | [`ask_user`](../tools/ask-user.md) | `Communicate` | Requests clarification or missing information via an interactive dialog. |
93
+ | [`write_todos`](../tools/todos.md) | `Other` | Maintains an internal list of subtasks. The model uses this to track its own progress. |
94
+
95
+ ### Memory
96
+
97
+ | Tool | Kind | Description |
98
+ | :----------------------------------------------- | :------ | :----------------------------------------------------------------------------------- |
99
+ | [`activate_skill`](../tools/activate-skill.md) | `Other` | Loads specialized procedural expertise from the `.gemini/skills` directory. |
100
+ | [`get_internal_docs`](../tools/internal-docs.md) | `Think` | Accesses Gemini CLI's own documentation for accurate answers about its capabilities. |
101
+ | [`save_memory`](../tools/memory.md) | `Think` | Persists specific facts and project details to your `GEMINI.md` file. |
102
+
103
+ ### Planning
104
+
105
+ | Tool | Kind | Description |
106
+ | :---------------------------------------- | :----- | :--------------------------------------------------------------------------------------- |
107
+ | [`enter_plan_mode`](../tools/planning.md) | `Plan` | Switches the CLI to a safe, read-only "Plan Mode" for researching complex changes. |
108
+ | [`exit_plan_mode`](../tools/planning.md) | `Plan` | Finalizes a plan, presents it for review, and requests approval to start implementation. |
109
+
110
+ ### System
111
+
112
+ | Tool | Kind | Description |
113
+ | :-------------- | :------ | :----------------------------------------------------------------------------------------------------------------- |
114
+ | `complete_task` | `Other` | Finalizes a subagent's mission and returns the result to the parent agent. This tool is not available to the user. |
115
+
116
+ ### Web
117
+
118
+ | Tool | Kind | Description |
119
+ | :-------------------------------------------- | :------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
120
+ | [`google_web_search`](../tools/web-search.md) | `Search` | Performs a Google Search to find up-to-date information. |
121
+ | [`web_fetch`](../tools/web-fetch.md) | `Fetch` | Retrieves and processes content from specific URLs. **Warning:** This tool can access local and private network addresses (e.g., localhost), which may pose a security risk if used with untrusted prompts. |
89
122
 
90
123
  ## Under the hood
91
124
 
@@ -12,6 +12,21 @@ quota for your needs, see the [Plans page](https://geminicli.com/plans/).
12
12
  This article outlines the specific quotas and pricing applicable to Gemini CLI
13
13
  when using different authentication methods.
14
14
 
15
+ The following table summarizes the available quotas and their respective limits:
16
+
17
+ | Authentication method | Tier / Subscription | Maximum requests per user per day |
18
+ | :-------------------- | :------------------------------ | :-------------------------------- |
19
+ | **Google account** | Gemini Code Assist (Individual) | 1,000 requests |
20
+ | | Google AI Pro | 1,500 requests |
21
+ | | Google AI Ultra | 2,000 requests |
22
+ | **Gemini API key** | Free tier (Unpaid) | 250 requests |
23
+ | | Pay-as-you-go (Paid) | Varies |
24
+ | **Vertex AI** | Express mode (Free) | Varies |
25
+ | | Pay-as-you-go (Paid) | Varies |
26
+ | **Google Workspace** | Code Assist Standard | 1,500 requests |
27
+ | | Code Assist Enterprise | 2,000 requests |
28
+ | | Workspace AI Ultra | 2,000 requests |
29
+
15
30
  Generally, there are three categories to choose from:
16
31
 
17
32
  - Free Usage: Ideal for experimentation and light use.
@@ -20,6 +35,9 @@ Generally, there are three categories to choose from:
20
35
  - Pay-As-You-Go: The most flexible option for professional use, long-running
21
36
  tasks, or when you need full control over your usage.
22
37
 
38
+ Requests are limited per user per minute and are subject to the availability of
39
+ the service in times of high demand.
40
+
23
41
  ## Free usage
24
42
 
25
43
  Access to Gemini CLI begins with a generous free tier, perfect for
@@ -33,8 +51,7 @@ authorization type.
33
51
  For users who authenticate by using their Google account to access Gemini Code
34
52
  Assist for individuals. This includes:
35
53
 
36
- - 1000 model requests / user / day
37
- - 60 model requests / user / minute
54
+ - 1000 maximum model requests / user / day
38
55
  - Model requests will be made across the Gemini model family as determined by
39
56
  Gemini CLI.
40
57
 
@@ -46,8 +63,7 @@ Learn more at
46
63
  If you are using a Gemini API key, you can also benefit from a free tier. This
47
64
  includes:
48
65
 
49
- - 250 model requests / user / day
50
- - 10 model requests / user / minute
66
+ - 250 maximum model requests / user / day
51
67
  - Model requests to Flash model only.
52
68
 
53
69
  Learn more at
@@ -59,7 +75,7 @@ Vertex AI offers an Express Mode without the need to enable billing. This
59
75
  includes:
60
76
 
61
77
  - 90 days before you need to enable billing.
62
- - Quotas and models are variable and specific to your account.
78
+ - Quotas and models are specific to your account and their limits vary.
63
79
 
64
80
  Learn more at
65
81
  [Vertex AI Express Mode Limits](https://cloud.google.com/vertex-ai/generative-ai/docs/start/express-mode/overview#quotas).
@@ -112,11 +128,9 @@ Standard/Plus and AI Expanded, are not supported._
112
128
 
113
129
  This includes the following request limits:
114
130
  - Gemini Code Assist Standard edition:
115
- - 1500 model requests / user / day
116
- - 120 model requests / user / minute
131
+ - 1500 maximum model requests / user / day
117
132
  - Gemini Code Assist Enterprise edition:
118
- - 2000 model requests / user / day
119
- - 120 model requests / user / minute
133
+ - 2000 maximum model requests / user / day
120
134
  - Model requests will be made across the Gemini model family as determined by
121
135
  Gemini CLI.
122
136
 
@@ -12,7 +12,6 @@
12
12
  "label": "Authentication",
13
13
  "slug": "docs/get-started/authentication"
14
14
  },
15
- { "label": "Examples", "slug": "docs/get-started/examples" },
16
15
  { "label": "CLI cheatsheet", "slug": "docs/cli/cli-reference" },
17
16
  {
18
17
  "label": "Gemini 3 on Gemini CLI",
@@ -112,7 +111,17 @@
112
111
  { "label": "Reference", "slug": "docs/hooks/reference" }
113
112
  ]
114
113
  },
115
- { "label": "IDE integration", "slug": "docs/ide-integration" },
114
+ {
115
+ "label": "IDE integration",
116
+ "collapsed": true,
117
+ "items": [
118
+ { "label": "Overview", "slug": "docs/ide-integration" },
119
+ {
120
+ "label": "Developer guide: ACP mode",
121
+ "slug": "docs/cli/acp-mode"
122
+ }
123
+ ]
124
+ },
116
125
  { "label": "MCP servers", "slug": "docs/tools/mcp-server" },
117
126
  { "label": "Model routing", "slug": "docs/cli/model-routing" },
118
127
  { "label": "Model selection", "slug": "docs/cli/model" },
@@ -129,12 +138,10 @@
129
138
  { "label": "Plan mode", "slug": "docs/cli/plan-mode" },
130
139
  {
131
140
  "label": "Subagents",
132
- "badge": "🔬",
133
141
  "slug": "docs/core/subagents"
134
142
  },
135
143
  {
136
144
  "label": "Remote subagents",
137
- "badge": "🔬",
138
145
  "slug": "docs/core/remote-agents"
139
146
  },
140
147
  { "label": "Rewind", "slug": "docs/cli/rewind" },
@@ -32,7 +32,9 @@ and planning.
32
32
  ## 2. `exit_plan_mode` (ExitPlanMode)
33
33
 
34
34
  `exit_plan_mode` signals that the planning phase is complete. It presents the
35
- finalized plan to the user and requests approval to start the implementation.
35
+ finalized plan to the user and requests formal approval to start the
36
+ implementation. The agent MUST reach an informal agreement with the user in the
37
+ chat regarding the proposed strategy BEFORE calling this tool.
36
38
 
37
39
  - **Tool name:** `exit_plan_mode`
38
40
  - **Display name:** Exit Plan Mode
@@ -44,7 +46,7 @@ finalized plan to the user and requests approval to start the implementation.
44
46
  - **Behavior:**
45
47
  - Validates that the `plan_path` is within the allowed directory and that the
46
48
  file exists and has content.
47
- - Presents the plan to the user for review.
49
+ - Presents the plan to the user for formal review.
48
50
  - If the user approves the plan:
49
51
  - Switches the CLI's approval mode to the user's chosen approval mode (
50
52
  `DEFAULT` or `AUTO_EDIT`).
@@ -56,5 +58,5 @@ finalized plan to the user and requests approval to start the implementation.
56
58
  - On approval: A message indicating the plan was approved and the new approval
57
59
  mode.
58
60
  - On rejection: A message containing the user's feedback.
59
- - **Confirmation:** Yes. Shows the finalized plan and asks for user approval to
60
- proceed with implementation.
61
+ - **Confirmation:** Yes. Shows the finalized plan and asks for user formal
62
+ approval to proceed with implementation.
@@ -41,30 +41,30 @@ declare const localAgentSchema: z.ZodObject<{
41
41
  include_tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
42
42
  exclude_tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
43
43
  }, "strip", z.ZodTypeAny, {
44
- args?: string[] | undefined;
45
- env?: Record<string, string> | undefined;
46
- cwd?: string | undefined;
47
44
  type?: "http" | "sse" | undefined;
48
45
  command?: string | undefined;
46
+ args?: string[] | undefined;
49
47
  headers?: Record<string, string> | undefined;
50
48
  url?: string | undefined;
51
49
  description?: string | undefined;
52
50
  timeout?: number | undefined;
51
+ env?: Record<string, string> | undefined;
52
+ cwd?: string | undefined;
53
53
  trust?: boolean | undefined;
54
54
  http_url?: string | undefined;
55
55
  tcp?: string | undefined;
56
56
  include_tools?: string[] | undefined;
57
57
  exclude_tools?: string[] | undefined;
58
58
  }, {
59
- args?: string[] | undefined;
60
- env?: Record<string, string> | undefined;
61
- cwd?: string | undefined;
62
59
  type?: "http" | "sse" | undefined;
63
60
  command?: string | undefined;
61
+ args?: string[] | undefined;
64
62
  headers?: Record<string, string> | undefined;
65
63
  url?: string | undefined;
66
64
  description?: string | undefined;
67
65
  timeout?: number | undefined;
66
+ env?: Record<string, string> | undefined;
67
+ cwd?: string | undefined;
68
68
  trust?: boolean | undefined;
69
69
  http_url?: string | undefined;
70
70
  tcp?: string | undefined;
@@ -83,15 +83,15 @@ declare const localAgentSchema: z.ZodObject<{
83
83
  tools?: string[] | undefined;
84
84
  temperature?: number | undefined;
85
85
  mcp_servers?: Record<string, {
86
- args?: string[] | undefined;
87
- env?: Record<string, string> | undefined;
88
- cwd?: string | undefined;
89
86
  type?: "http" | "sse" | undefined;
90
87
  command?: string | undefined;
88
+ args?: string[] | undefined;
91
89
  headers?: Record<string, string> | undefined;
92
90
  url?: string | undefined;
93
91
  description?: string | undefined;
94
92
  timeout?: number | undefined;
93
+ env?: Record<string, string> | undefined;
94
+ cwd?: string | undefined;
95
95
  trust?: boolean | undefined;
96
96
  http_url?: string | undefined;
97
97
  tcp?: string | undefined;
@@ -109,15 +109,15 @@ declare const localAgentSchema: z.ZodObject<{
109
109
  kind?: "local" | undefined;
110
110
  temperature?: number | undefined;
111
111
  mcp_servers?: Record<string, {
112
- args?: string[] | undefined;
113
- env?: Record<string, string> | undefined;
114
- cwd?: string | undefined;
115
112
  type?: "http" | "sse" | undefined;
116
113
  command?: string | undefined;
114
+ args?: string[] | undefined;
117
115
  headers?: Record<string, string> | undefined;
118
116
  url?: string | undefined;
119
117
  description?: string | undefined;
120
118
  timeout?: number | undefined;
119
+ env?: Record<string, string> | undefined;
120
+ cwd?: string | undefined;
121
121
  trust?: boolean | undefined;
122
122
  http_url?: string | undefined;
123
123
  tcp?: string | undefined;
@@ -206,6 +206,7 @@ function guessIntendedKind(rawInput) {
206
206
  function formatZodError(error, context, rawInput) {
207
207
  const intendedKind = rawInput ? guessIntendedKind(rawInput) : undefined;
208
208
  const formatIssues = (issues, unionPrefix) => issues.flatMap((i) => {
209
+ // Handle union errors specifically to give better context
209
210
  if (i.code === z.ZodIssueCode.invalid_union) {
210
211
  return i.unionErrors.flatMap((unionError, index) => {
211
212
  const label = unionPrefix
@@ -1 +1 @@
1
- {"version":3,"file":"agentLoader.js","sourceRoot":"","sources":["../../../src/agents/agentLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentLoader.js","sourceRoot":"","sources":["../../../src/agents/agentLoader.ts"],"names":[],"mappings":"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"}
@@ -66,14 +66,10 @@ function buildRemovalScript() {
66
66
  */
67
67
  export async function injectAutomationOverlay(browserManager, signal) {
68
68
  try {
69
- debugLogger.log('Injecting automation overlay...');
70
- const result = await browserManager.callTool('evaluate_script', { function: buildInjectionScript() }, signal);
69
+ const result = await browserManager.callTool('evaluate_script', { function: buildInjectionScript() }, signal, true);
71
70
  if (result.isError) {
72
71
  debugLogger.warn('Failed to inject automation overlay:', result);
73
72
  }
74
- else {
75
- debugLogger.log('Automation overlay injected successfully');
76
- }
77
73
  }
78
74
  catch (error) {
79
75
  debugLogger.warn('Error injecting automation overlay:', error);
@@ -84,14 +80,10 @@ export async function injectAutomationOverlay(browserManager, signal) {
84
80
  */
85
81
  export async function removeAutomationOverlay(browserManager, signal) {
86
82
  try {
87
- debugLogger.log('Removing automation overlay...');
88
- const result = await browserManager.callTool('evaluate_script', { function: buildRemovalScript() }, signal);
83
+ const result = await browserManager.callTool('evaluate_script', { function: buildRemovalScript() }, signal, true);
89
84
  if (result.isError) {
90
85
  debugLogger.warn('Failed to remove automation overlay:', result);
91
86
  }
92
- else {
93
- debugLogger.log('Automation overlay removed successfully');
94
- }
95
87
  }
96
88
  catch (error) {
97
89
  debugLogger.warn('Error removing automation overlay:', error);
@@ -1 +1 @@
1
- {"version":3,"file":"automationOverlay.js","sourceRoot":"","sources":["../../../../src/agents/browser/automationOverlay.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgBH,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,MAAM,kBAAkB,GAAG,6BAA6B,CAAC;AAEzD;;;;;;;GAOG;AACH,SAAS,oBAAoB;IAC3B,OAAO;kBACS,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkChC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB;IACzB,OAAO;0CACiC,kBAAkB;;;IAGxD,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,cAA8B,EAC9B,MAAoB;IAEpB,IAAI,CAAC;QACH,WAAW,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAEnD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAC1C,iBAAiB,EACjB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,EAAE,EACpC,MAAM,CACP,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,WAAW,CAAC,IAAI,CAAC,sCAAsC,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,IAAI,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,cAA8B,EAC9B,MAAoB;IAEpB,IAAI,CAAC;QACH,WAAW,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAC1C,iBAAiB,EACjB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,EAClC,MAAM,CACP,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,WAAW,CAAC,IAAI,CAAC,sCAAsC,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,IAAI,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"automationOverlay.js","sourceRoot":"","sources":["../../../../src/agents/browser/automationOverlay.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgBH,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,MAAM,kBAAkB,GAAG,6BAA6B,CAAC;AAEzD;;;;;;;GAOG;AACH,SAAS,oBAAoB;IAC3B,OAAO;kBACS,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkChC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB;IACzB,OAAO;0CACiC,kBAAkB;;;IAGxD,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,cAA8B,EAC9B,MAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAC1C,iBAAiB,EACjB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,EAAE,EACpC,MAAM,EACN,IAAI,CACL,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,WAAW,CAAC,IAAI,CAAC,sCAAsC,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,IAAI,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,cAA8B,EAC9B,MAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAC1C,iBAAiB,EACjB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,EAClC,MAAM,EACN,IAAI,CACL,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,WAAW,CAAC,IAAI,CAAC,sCAAsC,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,IAAI,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;AACH,CAAC"}
@@ -3,6 +3,7 @@
3
3
  * Copyright 2026 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import { supersedeStaleSnapshots } from './snapshotSuperseder.js';
6
7
  import { z } from 'zod';
7
8
  import { isPreviewModel, PREVIEW_GEMINI_FLASH_MODEL, DEFAULT_GEMINI_FLASH_MODEL, } from '../../config/models.js';
8
9
  /** Canonical agent name — used for routing and configuration lookup. */
@@ -46,7 +47,7 @@ export function buildBrowserSystemPrompt(visionEnabled, allowedDomains) {
46
47
  const allowedDomainsInstruction = allowedDomains && allowedDomains.length > 0
47
48
  ? `\n\nSECURITY DOMAIN RESTRICTION - CRITICAL:\nYou are strictly limited to the following allowed domains (and their subdomains if specified with '*.'):\n${allowedDomains
48
49
  .map((d) => `- ${d}`)
49
- .join('\n')}\nDo NOT attempt to navigate to any other domains using new_page or navigate_page, as it will be rejected. This is a hard security constraint.`
50
+ .join('\n')}\nDo NOT attempt to navigate to any other domains using new_page or navigate_page, as it will be rejected. This is a hard security constraint.\nDo NOT use proxy services (e.g. Google Translate, Google AMP, or any URL translation/caching service) to access content from domains outside this list. Embedding a blocked URL as a parameter of an allowed-domain service is a direct violation of this security restriction.\nCRITICAL: If the user's task requires visiting a website or domain that is NOT in this allowed list, you MUST call complete_task IMMEDIATELY with success=false. Explain that the required domain is not in the allowed list and cannot be accessed. Do NOT attempt to accomplish the task by searching for the target content on allowed domains — this defeats the purpose of domain restrictions. The allowed domains list is a security policy, not a hint about which sites to use as alternatives.`
50
51
  : '';
51
52
  return `You are an expert browser automation agent (Orchestrator). Your goal is to completely fulfill the user's request.${allowedDomainsInstruction}
52
53
 
@@ -81,9 +82,11 @@ Many web apps (Google Sheets/Docs, Notion, Figma, etc.) use custom rendering rat
81
82
 
82
83
  TERMINAL FAILURES — STOP IMMEDIATELY:
83
84
  Some errors are unrecoverable and retrying will never help. When you see ANY of these, call complete_task immediately with success=false and include the EXACT error message (including any remediation steps it contains) in your summary:
84
- - "Could not connect to Chrome" or "Failed to connect to Chrome" or "Timed out connecting to Chrome" — Include the full error message with its remediation steps in your summary verbatim. Do NOT paraphrase or omit instructions.
85
+ - "Could not connect to Chrome" or "Failed to connect to Chrome" or "Timed out connecting to Chrome" or "The browser is already running" — Include the full error message with its remediation steps in your summary verbatim. Do NOT paraphrase or omit instructions.
85
86
  - "Browser closed" or "Target closed" or "Session closed" — The browser process has terminated. Include the error and tell the user to try again.
87
+ - "Domain not allowed:" — The target domain is blocked by the allowedDomains security policy. Do NOT retry with a different URL or try to find the content on an allowed domain.
86
88
  - "net::ERR_" network errors on the SAME URL after 2 retries — the site is unreachable. Report the URL and error.
89
+ - "reached maximum action limit" — You have performed too many actions in this task. Stop immediately and report this limit to the user.
87
90
  - Any error that appears IDENTICALLY 3+ times in a row — it will not resolve by retrying.
88
91
  Do NOT keep retrying terminal errors. Report them with actionable remediation steps and exit immediately.
89
92
 
@@ -142,13 +145,17 @@ export const BrowserAgentDefinition = (config, visionEnabled = false) => {
142
145
  // Tools are set dynamically by browserAgentFactory after MCP connection
143
146
  // This is undefined here and will be set at invocation time
144
147
  toolConfig: undefined,
148
+ // Supersede stale take_snapshot outputs to reclaim context-window tokens.
149
+ // Each snapshot contains the full accessibility tree; only the most recent
150
+ // one is meaningful, so prior snapshots are replaced with a placeholder.
151
+ onBeforeTurn: (chat) => supersedeStaleSnapshots(chat),
145
152
  promptConfig: {
146
153
  query: `Your task is:
147
154
  <task>
148
155
  \${task}
149
156
  </task>
150
157
 
151
- First, use new_page to open the relevant URL. Then call take_snapshot to see the page and proceed with your task.`,
158
+ First, use <list_pages/> to check if there are any existing pages that can fulfill the user's request. If not, you MUST use <new_page/> to open the relevant URL unless the user explicitly provides different instructions.`,
152
159
  systemPrompt: buildBrowserSystemPrompt(visionEnabled, config.getBrowserAgentConfig().customConfig.allowedDomains),
153
160
  },
154
161
  };
@@ -1 +1 @@
1
- {"version":3,"file":"browserAgentDefinition.js","sourceRoot":"","sources":["../../../../src/agents/browser/browserAgentDefinition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browserAgentDefinition.js","sourceRoot":"","sources":["../../../../src/agents/browser/browserAgentDefinition.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,cAAc,EACd,0BAA0B,EAC1B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAEhC,wEAAwE;AACxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAElD;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IAC5E,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,CAAC,uDAAuD,CAAC;IACpE,IAAI,EAAE,CAAC;SACJ,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,uCAAuC,CAAC;CACrD,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG;;;;;;;CAOtB,CAAC;AAEF,MAAM,gBAAgB,GAAG;;;;;;CAMxB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACtC,aAAsB,EACtB,cAAyB;IAEzB,MAAM,yBAAyB,GAC7B,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QACzC,CAAC,CAAC,0JAA0J,cAAc;aACrK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;aACpB,IAAI,CACH,IAAI,CACL,24BAA24B;QACh5B,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,oHAAoH,yBAAyB;;;;;;;;EAQpJ,gBAAgB;;;;;;;;;;;;;;EAchB,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;0NAmBqL,CAAC;AAC3N,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,MAAc,EACd,aAAa,GAAG,KAAK,EACiC,EAAE;IACxD,0EAA0E;IAC1E,yEAAyE;IACzE,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC;QACrD,CAAC,CAAC,0BAA0B;QAC5B,CAAC,CAAC,0BAA0B,CAAC;IAE/B,OAAO;QACL,IAAI,EAAE,kBAAkB;QACxB,IAAI,EAAE,OAAO;QACb,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,eAAe;QAC5B,WAAW,EAAE,owBAAowB;QAEjxB,WAAW,EAAE;YACX,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qCAAqC;qBACnD;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;QAED,YAAY,EAAE;YACZ,UAAU,EAAE,QAAQ;YACpB,WAAW,EAAE,iCAAiC;YAC9C,MAAM,EAAE,uBAAuB;SAChC;QAED,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAE1D,WAAW,EAAE;YACX,8DAA8D;YAC9D,KAAK;YACL,qBAAqB,EAAE;gBACrB,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,IAAI;aACX;SACF;QAED,SAAS,EAAE;YACT,cAAc,EAAE,EAAE;YAClB,QAAQ,EAAE,EAAE;SACb;QAED,wEAAwE;QACxE,4DAA4D;QAC5D,UAAU,EAAE,SAAS;QAErB,0EAA0E;QAC1E,2EAA2E;QAC3E,yEAAyE;QACzE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC;QAErD,YAAY,EAAE;YACZ,KAAK,EAAE;;;;;6NAKgN;YACvN,YAAY,EAAE,wBAAwB,CACpC,aAAa,EACb,MAAM,CAAC,qBAAqB,EAAE,CAAC,YAAY,CAAC,cAAc,CAC3D;SACF;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -30,13 +30,13 @@ import { type BrowserTaskResultSchema } from './browserAgentDefinition.js';
30
30
  * @param printOutput Optional callback for progress messages
31
31
  * @returns Fully configured LocalAgentDefinition with MCP tools
32
32
  */
33
- export declare function createBrowserAgentDefinition(config: Config, messageBus: MessageBus, printOutput?: (msg: string) => void): Promise<{
33
+ export declare function createBrowserAgentDefinition(config: Config, messageBus: MessageBus, _printOutput?: (msg: string) => void): Promise<{
34
34
  definition: LocalAgentDefinition<typeof BrowserTaskResultSchema>;
35
35
  browserManager: BrowserManager;
36
36
  }>;
37
37
  /**
38
- * Cleans up browser resources after agent execution.
38
+ * Closes all persistent browser sessions and cleans up resources.
39
39
  *
40
- * @param browserManager The browser manager to clean up
40
+ * Call this on /clear commands and CLI exit to reset browser state.
41
41
  */
42
- export declare function cleanupBrowserAgent(browserManager: BrowserManager): Promise<void>;
42
+ export declare function resetBrowserSession(): Promise<void>;
@@ -26,27 +26,21 @@ import { PolicyDecision, PRIORITY_SUBAGENT_TOOL, } from '../../policy/types.js';
26
26
  * @param printOutput Optional callback for progress messages
27
27
  * @returns Fully configured LocalAgentDefinition with MCP tools
28
28
  */
29
- export async function createBrowserAgentDefinition(config, messageBus, printOutput) {
29
+ export async function createBrowserAgentDefinition(config, messageBus, _printOutput) {
30
30
  debugLogger.log('Creating browser agent definition with isolated MCP tools...');
31
- // Create and initialize browser manager with isolated MCP client
32
- const browserManager = new BrowserManager(config);
31
+ // Get or create browser manager singleton for this session mode/profile
32
+ const browserManager = BrowserManager.getInstance(config);
33
33
  await browserManager.ensureConnection();
34
- if (printOutput) {
35
- printOutput('Browser connected with isolated MCP client.');
36
- }
34
+ debugLogger.log('Browser connected with isolated MCP client.');
37
35
  // Determine if input blocker should be active (non-headless + enabled)
38
36
  const shouldDisableInput = config.shouldDisableBrowserUserInput();
39
37
  // Inject automation overlay and input blocker if not in headless mode
40
38
  const browserConfig = config.getBrowserAgentConfig();
41
39
  if (!browserConfig?.customConfig?.headless) {
42
- if (printOutput) {
43
- printOutput('Injecting automation overlay...');
44
- }
40
+ debugLogger.log('Injecting automation overlay...');
45
41
  await injectAutomationOverlay(browserManager);
46
42
  if (shouldDisableInput) {
47
- if (printOutput) {
48
- printOutput('Injecting input blocker...');
49
- }
43
+ debugLogger.log('Injecting input blocker...');
50
44
  await injectInputBlocker(browserManager);
51
45
  }
52
46
  }
@@ -72,13 +66,11 @@ export async function createBrowserAgentDefinition(config, messageBus, printOutp
72
66
  }
73
67
  }
74
68
  // Reduce noise for read-only tools in default mode
75
- const readOnlyTools = [
76
- 'take_snapshot',
77
- 'take_screenshot',
78
- 'list_pages',
79
- 'list_network_requests',
80
- ];
81
- for (const toolName of readOnlyTools) {
69
+ const readOnlyTools = (await browserManager.getDiscoveredTools())
70
+ .filter((t) => !!t.annotations?.readOnlyHint)
71
+ .map((t) => t.name);
72
+ const allowlistedReadonlyTools = ['take_snapshot', 'take_screenshot'];
73
+ for (const toolName of [...readOnlyTools, ...allowlistedReadonlyTools]) {
82
74
  if (availableToolNames.includes(toolName)) {
83
75
  const rule = generateAllowRules(toolName);
84
76
  if (!existingRules.some((r) => isRuleEqual(r, rule))) {
@@ -170,17 +162,11 @@ export async function createBrowserAgentDefinition(config, messageBus, printOutp
170
162
  return { definition, browserManager };
171
163
  }
172
164
  /**
173
- * Cleans up browser resources after agent execution.
165
+ * Closes all persistent browser sessions and cleans up resources.
174
166
  *
175
- * @param browserManager The browser manager to clean up
167
+ * Call this on /clear commands and CLI exit to reset browser state.
176
168
  */
177
- export async function cleanupBrowserAgent(browserManager) {
178
- try {
179
- await browserManager.close();
180
- debugLogger.log('Browser agent cleanup complete');
181
- }
182
- catch (error) {
183
- debugLogger.error(`Error during browser cleanup: ${error instanceof Error ? error.message : String(error)}`);
184
- }
169
+ export async function resetBrowserSession() {
170
+ await BrowserManager.resetAll();
185
171
  }
186
172
  //# sourceMappingURL=browserAgentFactory.js.map