@machina.ai/cell-cli-core 1.36.0-rc1 → 1.38.1-rc2

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 (733) hide show
  1. package/dist/docs/AFTER_MERGE_PROMPT.md +3 -10
  2. package/dist/docs/assets/theme-tokyonight-dark.png +0 -0
  3. package/dist/docs/changelogs/index.md +49 -0
  4. package/dist/docs/changelogs/latest.md +355 -458
  5. package/dist/docs/changelogs/preview.md +402 -363
  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 +26 -10
  10. package/dist/docs/cli/sandbox.md +53 -1
  11. package/dist/docs/cli/settings.md +52 -48
  12. package/dist/docs/cli/themes.md +5 -0
  13. package/dist/docs/core/index.md +2 -2
  14. package/dist/docs/core/remote-agents.md +14 -18
  15. package/dist/docs/core/subagents.md +194 -47
  16. package/dist/docs/get-started/authentication.md +2 -2
  17. package/dist/docs/get-started/gemini-3.md +1 -1
  18. package/dist/docs/get-started/index.md +127 -1
  19. package/dist/docs/get-started/installation.md +7 -0
  20. package/dist/docs/hooks/index.md +6 -6
  21. package/dist/docs/ide-integration/index.md +99 -24
  22. package/dist/docs/index.md +0 -2
  23. package/dist/docs/redirects.json +1 -0
  24. package/dist/docs/reference/commands.md +1 -3
  25. package/dist/docs/reference/configuration.md +220 -99
  26. package/dist/docs/reference/keyboard-shortcuts.md +21 -8
  27. package/dist/docs/reference/policy-engine.md +36 -31
  28. package/dist/docs/reference/tools.md +56 -23
  29. package/dist/docs/release-confidence.md +0 -6
  30. package/dist/docs/releases.md +4 -0
  31. package/dist/docs/resources/quota-and-pricing.md +23 -9
  32. package/dist/docs/sidebar.json +11 -4
  33. package/dist/docs/tools/mcp-server.md +3 -3
  34. package/dist/docs/tools/planning.md +6 -4
  35. package/dist/docs/tools/web-fetch.md +3 -0
  36. package/dist/package.json +2 -1
  37. package/dist/src/agent/agent-session.test.js +14 -6
  38. package/dist/src/agent/agent-session.test.js.map +1 -1
  39. package/dist/src/agent/event-translator.js +2 -1
  40. package/dist/src/agent/event-translator.js.map +1 -1
  41. package/dist/src/agent/event-translator.test.js +1 -0
  42. package/dist/src/agent/event-translator.test.js.map +1 -1
  43. package/dist/src/agent/legacy-agent-session.d.ts +47 -4
  44. package/dist/src/agent/legacy-agent-session.js +38 -15
  45. package/dist/src/agent/legacy-agent-session.js.map +1 -1
  46. package/dist/src/agent/legacy-agent-session.test.js +60 -73
  47. package/dist/src/agent/legacy-agent-session.test.js.map +1 -1
  48. package/dist/src/agent/mock.js +7 -1
  49. package/dist/src/agent/mock.js.map +1 -1
  50. package/dist/src/agent/mock.test.js +1 -1
  51. package/dist/src/agent/mock.test.js.map +1 -1
  52. package/dist/src/agent/types.d.ts +34 -1
  53. package/dist/src/agents/a2a-client-manager.js +3 -3
  54. package/dist/src/agents/a2a-client-manager.js.map +1 -1
  55. package/dist/src/agents/agent-scheduler.js +6 -1
  56. package/dist/src/agents/agent-scheduler.js.map +1 -1
  57. package/dist/src/agents/agent-scheduler.test.js +38 -0
  58. package/dist/src/agents/agent-scheduler.test.js.map +1 -1
  59. package/dist/src/agents/agentLoader.d.ts +12 -12
  60. package/dist/src/agents/agentLoader.js +1 -0
  61. package/dist/src/agents/agentLoader.js.map +1 -1
  62. package/dist/src/agents/auth-provider/api-key-provider.test.js +18 -2
  63. package/dist/src/agents/auth-provider/api-key-provider.test.js.map +1 -1
  64. package/dist/src/agents/auth-provider/value-resolver.test.js +30 -0
  65. package/dist/src/agents/auth-provider/value-resolver.test.js.map +1 -1
  66. package/dist/src/agents/browser/analyzeScreenshot.js +36 -6
  67. package/dist/src/agents/browser/analyzeScreenshot.js.map +1 -1
  68. package/dist/src/agents/browser/analyzeScreenshot.test.js +35 -3
  69. package/dist/src/agents/browser/analyzeScreenshot.test.js.map +1 -1
  70. package/dist/src/agents/browser/automationOverlay.js +2 -10
  71. package/dist/src/agents/browser/automationOverlay.js.map +1 -1
  72. package/dist/src/agents/browser/browserAgentDefinition.js +10 -3
  73. package/dist/src/agents/browser/browserAgentDefinition.js.map +1 -1
  74. package/dist/src/agents/browser/browserAgentFactory.d.ts +11 -3
  75. package/dist/src/agents/browser/browserAgentFactory.js +171 -129
  76. package/dist/src/agents/browser/browserAgentFactory.js.map +1 -1
  77. package/dist/src/agents/browser/browserAgentFactory.test.js +99 -13
  78. package/dist/src/agents/browser/browserAgentFactory.test.js.map +1 -1
  79. package/dist/src/agents/browser/browserAgentInvocation.d.ts +1 -0
  80. package/dist/src/agents/browser/browserAgentInvocation.js +87 -27
  81. package/dist/src/agents/browser/browserAgentInvocation.js.map +1 -1
  82. package/dist/src/agents/browser/browserAgentInvocation.test.js +107 -7
  83. package/dist/src/agents/browser/browserAgentInvocation.test.js.map +1 -1
  84. package/dist/src/agents/browser/browserManager.d.ts +89 -8
  85. package/dist/src/agents/browser/browserManager.js +357 -74
  86. package/dist/src/agents/browser/browserManager.js.map +1 -1
  87. package/dist/src/agents/browser/browserManager.test.js +540 -19
  88. package/dist/src/agents/browser/browserManager.test.js.map +1 -1
  89. package/dist/src/agents/browser/inputBlocker.d.ts +4 -4
  90. package/dist/src/agents/browser/inputBlocker.js +8 -18
  91. package/dist/src/agents/browser/inputBlocker.js.map +1 -1
  92. package/dist/src/agents/browser/inputBlocker.test.js +31 -3
  93. package/dist/src/agents/browser/inputBlocker.test.js.map +1 -1
  94. package/dist/src/agents/browser/mcpToolWrapper.d.ts +1 -1
  95. package/dist/src/agents/browser/mcpToolWrapper.js +9 -6
  96. package/dist/src/agents/browser/mcpToolWrapper.js.map +1 -1
  97. package/dist/src/agents/browser/mcpToolWrapper.test.js +2 -2
  98. package/dist/src/agents/browser/mcpToolWrapper.test.js.map +1 -1
  99. package/dist/src/agents/browser/modelAvailability.d.ts +5 -0
  100. package/dist/src/agents/browser/modelAvailability.js +12 -0
  101. package/dist/src/agents/browser/modelAvailability.js.map +1 -1
  102. package/dist/src/agents/browser/snapshotSuperseder.d.ts +31 -0
  103. package/dist/src/agents/browser/snapshotSuperseder.js +101 -0
  104. package/dist/src/agents/browser/snapshotSuperseder.js.map +1 -0
  105. package/dist/src/agents/browser/snapshotSuperseder.test.js +158 -0
  106. package/dist/src/agents/browser/snapshotSuperseder.test.js.map +1 -0
  107. package/dist/src/agents/local-executor.d.ts +9 -0
  108. package/dist/src/agents/local-executor.js +144 -200
  109. package/dist/src/agents/local-executor.js.map +1 -1
  110. package/dist/src/agents/local-executor.test.js +500 -115
  111. package/dist/src/agents/local-executor.test.js.map +1 -1
  112. package/dist/src/agents/local-invocation.d.ts +1 -0
  113. package/dist/src/agents/local-invocation.js +19 -9
  114. package/dist/src/agents/local-invocation.js.map +1 -1
  115. package/dist/src/agents/local-invocation.test.js +24 -0
  116. package/dist/src/agents/local-invocation.test.js.map +1 -1
  117. package/dist/src/agents/memory-manager-agent.js +1 -0
  118. package/dist/src/agents/memory-manager-agent.js.map +1 -1
  119. package/dist/src/agents/memory-manager-agent.test.js +6 -0
  120. package/dist/src/agents/memory-manager-agent.test.js.map +1 -1
  121. package/dist/src/agents/registry.js +19 -11
  122. package/dist/src/agents/registry.js.map +1 -1
  123. package/dist/src/agents/registry.test.js +67 -0
  124. package/dist/src/agents/registry.test.js.map +1 -1
  125. package/dist/src/agents/skill-extraction-agent.d.ts +24 -0
  126. package/dist/src/agents/skill-extraction-agent.js +269 -0
  127. package/dist/src/agents/skill-extraction-agent.js.map +1 -0
  128. package/dist/src/agents/types.d.ts +20 -0
  129. package/dist/src/agents/types.js.map +1 -1
  130. package/dist/src/availability/policyCatalog.d.ts +2 -1
  131. package/dist/src/availability/policyCatalog.js +1 -1
  132. package/dist/src/availability/policyCatalog.js.map +1 -1
  133. package/dist/src/availability/policyHelpers.js +43 -32
  134. package/dist/src/availability/policyHelpers.js.map +1 -1
  135. package/dist/src/availability/policyHelpers.test.js +12 -1
  136. package/dist/src/availability/policyHelpers.test.js.map +1 -1
  137. package/dist/src/code_assist/admin/admin_controls.js +1 -1
  138. package/dist/src/code_assist/admin/admin_controls.js.map +1 -1
  139. package/dist/src/code_assist/experiments/flagNames.d.ts +1 -0
  140. package/dist/src/code_assist/experiments/flagNames.js +1 -0
  141. package/dist/src/code_assist/experiments/flagNames.js.map +1 -1
  142. package/dist/src/code_assist/oauth2.js +8 -3
  143. package/dist/src/code_assist/oauth2.js.map +1 -1
  144. package/dist/src/code_assist/oauth2.test.js +57 -0
  145. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  146. package/dist/src/code_assist/server.js +1 -1
  147. package/dist/src/code_assist/server.js.map +1 -1
  148. package/dist/src/code_assist/setup.js +5 -2
  149. package/dist/src/code_assist/setup.js.map +1 -1
  150. package/dist/src/code_assist/setup.test.js +27 -1
  151. package/dist/src/code_assist/setup.test.js.map +1 -1
  152. package/dist/src/code_assist/types.d.ts +80 -80
  153. package/dist/src/commands/memory.js +1 -1
  154. package/dist/src/commands/memory.js.map +1 -1
  155. package/dist/src/config/agent-loop-context.d.ts +2 -0
  156. package/dist/src/config/config.d.ts +91 -23
  157. package/dist/src/config/config.js +238 -79
  158. package/dist/src/config/config.js.map +1 -1
  159. package/dist/src/config/config.test.js +189 -15
  160. package/dist/src/config/config.test.js.map +1 -1
  161. package/dist/src/config/defaultModelConfigs.js +9 -0
  162. package/dist/src/config/defaultModelConfigs.js.map +1 -1
  163. package/dist/src/config/extensions/integrity.js +1 -1
  164. package/dist/src/config/extensions/integrity.js.map +1 -1
  165. package/dist/src/config/memory.d.ts +1 -0
  166. package/dist/src/config/memory.js +6 -0
  167. package/dist/src/config/memory.js.map +1 -1
  168. package/dist/src/config/projectRegistry.js +5 -3
  169. package/dist/src/config/projectRegistry.js.map +1 -1
  170. package/dist/src/config/scoped-config.d.ts +30 -0
  171. package/dist/src/config/scoped-config.js +69 -0
  172. package/dist/src/config/scoped-config.js.map +1 -0
  173. package/dist/src/config/scoped-config.test.d.ts +6 -0
  174. package/dist/src/config/scoped-config.test.js +161 -0
  175. package/dist/src/config/scoped-config.test.js.map +1 -0
  176. package/dist/src/config/storage.d.ts +3 -0
  177. package/dist/src/config/storage.js +9 -0
  178. package/dist/src/config/storage.js.map +1 -1
  179. package/dist/src/config/storage.test.js +10 -5
  180. package/dist/src/config/storage.test.js.map +1 -1
  181. package/dist/src/config/topicState.d.ts +21 -0
  182. package/dist/src/config/topicState.js +41 -0
  183. package/dist/src/config/topicState.js.map +1 -0
  184. package/dist/src/confirmation-bus/types.d.ts +13 -4
  185. package/dist/src/confirmation-bus/types.js +2 -0
  186. package/dist/src/confirmation-bus/types.js.map +1 -1
  187. package/dist/src/context/agentHistoryProvider.d.ts +45 -0
  188. package/dist/src/context/agentHistoryProvider.js +294 -0
  189. package/dist/src/context/agentHistoryProvider.js.map +1 -0
  190. package/dist/src/context/agentHistoryProvider.test.d.ts +6 -0
  191. package/dist/src/context/agentHistoryProvider.test.js +357 -0
  192. package/dist/src/context/agentHistoryProvider.test.js.map +1 -0
  193. package/dist/src/context/chatCompressionService.js.map +1 -0
  194. package/dist/src/context/chatCompressionService.test.js.map +1 -0
  195. package/dist/src/context/contextCompressionService.d.ts +30 -0
  196. package/dist/src/context/contextCompressionService.js +405 -0
  197. package/dist/src/context/contextCompressionService.js.map +1 -0
  198. package/dist/src/context/contextCompressionService.test.js +253 -0
  199. package/dist/src/context/contextCompressionService.test.js.map +1 -0
  200. package/dist/src/{services/contextManager.d.ts → context/memoryContextManager.d.ts} +3 -1
  201. package/dist/src/{services/contextManager.js → context/memoryContextManager.js} +20 -11
  202. package/dist/src/context/memoryContextManager.js.map +1 -0
  203. package/dist/src/{services/contextManager.test.js → context/memoryContextManager.test.js} +42 -33
  204. package/dist/src/context/memoryContextManager.test.js.map +1 -0
  205. package/dist/src/context/profiles.d.ts +7 -0
  206. package/dist/src/context/profiles.js +21 -0
  207. package/dist/src/context/profiles.js.map +1 -0
  208. package/dist/src/context/toolDistillationService.d.ts +38 -0
  209. package/dist/src/context/toolDistillationService.js +170 -0
  210. package/dist/src/context/toolDistillationService.js.map +1 -0
  211. package/dist/src/context/toolDistillationService.test.d.ts +6 -0
  212. package/dist/src/context/toolDistillationService.test.js +86 -0
  213. package/dist/src/context/toolDistillationService.test.js.map +1 -0
  214. package/dist/src/{services → context}/toolOutputMaskingService.d.ts +2 -2
  215. package/dist/src/{services → context}/toolOutputMaskingService.js +7 -7
  216. package/dist/src/context/toolOutputMaskingService.js.map +1 -0
  217. package/dist/src/context/toolOutputMaskingService.test.d.ts +6 -0
  218. package/dist/src/{services → context}/toolOutputMaskingService.test.js +4 -5
  219. package/dist/src/context/toolOutputMaskingService.test.js.map +1 -0
  220. package/dist/src/context/truncation.d.ts +26 -0
  221. package/dist/src/context/truncation.js +102 -0
  222. package/dist/src/context/truncation.js.map +1 -0
  223. package/dist/src/context/types.d.ts +36 -0
  224. package/dist/src/context/types.js +7 -0
  225. package/dist/src/context/types.js.map +1 -0
  226. package/dist/src/core/AuthenticatedContentGenerator.js +9 -1
  227. package/dist/src/core/AuthenticatedContentGenerator.js.map +1 -1
  228. package/dist/src/core/baseLlmClient.js +1 -1
  229. package/dist/src/core/baseLlmClient.js.map +1 -1
  230. package/dist/src/core/baseLlmClient.test.js +1 -0
  231. package/dist/src/core/baseLlmClient.test.js.map +1 -1
  232. package/dist/src/core/client.d.ts +3 -1
  233. package/dist/src/core/client.js +24 -14
  234. package/dist/src/core/client.js.map +1 -1
  235. package/dist/src/core/client.test.js +36 -40
  236. package/dist/src/core/client.test.js.map +1 -1
  237. package/dist/src/core/contentGenerator.d.ts +0 -1
  238. package/dist/src/core/contentGenerator.js +2 -28
  239. package/dist/src/core/contentGenerator.js.map +1 -1
  240. package/dist/src/core/contentGenerator.test.js +1 -101
  241. package/dist/src/core/contentGenerator.test.js.map +1 -1
  242. package/dist/src/core/geminiChat.js +12 -5
  243. package/dist/src/core/geminiChat.js.map +1 -1
  244. package/dist/src/core/geminiChat.test.js +72 -18
  245. package/dist/src/core/geminiChat.test.js.map +1 -1
  246. package/dist/src/core/geminiChat_network_retry.test.js +1 -0
  247. package/dist/src/core/geminiChat_network_retry.test.js.map +1 -1
  248. package/dist/src/core/logger.js +4 -4
  249. package/dist/src/core/logger.js.map +1 -1
  250. package/dist/src/core/logger.test.js +1 -1
  251. package/dist/src/core/logger.test.js.map +1 -1
  252. package/dist/src/core/loggingContentGenerator.js +1 -1
  253. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  254. package/dist/src/core/prompts-substitution.test.js +5 -0
  255. package/dist/src/core/prompts-substitution.test.js.map +1 -1
  256. package/dist/src/core/prompts.test.js +3 -0
  257. package/dist/src/core/prompts.test.js.map +1 -1
  258. package/dist/src/generated/git-commit.d.ts +2 -2
  259. package/dist/src/generated/git-commit.js +2 -2
  260. package/dist/src/hooks/hookEventHandler.js +8 -0
  261. package/dist/src/hooks/hookEventHandler.js.map +1 -1
  262. package/dist/src/hooks/hookRunner.js +9 -5
  263. package/dist/src/hooks/hookRunner.js.map +1 -1
  264. package/dist/src/hooks/hookRunner.test.js +20 -3
  265. package/dist/src/hooks/hookRunner.test.js.map +1 -1
  266. package/dist/src/hooks/hookSystem.d.ts +2 -0
  267. package/dist/src/hooks/hookSystem.js +1 -0
  268. package/dist/src/hooks/hookSystem.js.map +1 -1
  269. package/dist/src/hooks/hookTranslator.js +20 -13
  270. package/dist/src/hooks/hookTranslator.js.map +1 -1
  271. package/dist/src/hooks/hookTranslator.test.js +36 -0
  272. package/dist/src/hooks/hookTranslator.test.js.map +1 -1
  273. package/dist/src/hooks/types.d.ts +2 -0
  274. package/dist/src/ide/ide-client.js +3 -3
  275. package/dist/src/ide/ide-client.js.map +1 -1
  276. package/dist/src/ide/ide-connection-utils.js +1 -1
  277. package/dist/src/ide/ide-connection-utils.js.map +1 -1
  278. package/dist/src/ide/ide-installer.js +5 -4
  279. package/dist/src/ide/ide-installer.js.map +1 -1
  280. package/dist/src/ide/process-utils.js +3 -3
  281. package/dist/src/ide/process-utils.js.map +1 -1
  282. package/dist/src/index.d.ts +10 -3
  283. package/dist/src/index.js +13 -5
  284. package/dist/src/index.js.map +1 -1
  285. package/dist/src/mcp/mcpLauncher.js +1 -1
  286. package/dist/src/output/json-formatter.js +2 -1
  287. package/dist/src/output/json-formatter.js.map +1 -1
  288. package/dist/src/policy/config.d.ts +1 -1
  289. package/dist/src/policy/config.js +61 -24
  290. package/dist/src/policy/config.js.map +1 -1
  291. package/dist/src/policy/config.test.js +21 -20
  292. package/dist/src/policy/config.test.js.map +1 -1
  293. package/dist/src/policy/persistence.test.js +42 -0
  294. package/dist/src/policy/persistence.test.js.map +1 -1
  295. package/dist/src/policy/policies/discovered.toml +7 -0
  296. package/dist/src/policy/policies/memory-manager.toml +11 -1
  297. package/dist/src/policy/policies/non-interactive.toml +7 -0
  298. package/dist/src/policy/policies/plan.toml +36 -2
  299. package/dist/src/policy/policies/read-only.toml +12 -0
  300. package/dist/src/policy/policies/sandbox-default.toml +4 -4
  301. package/dist/src/policy/policies/write.toml +21 -0
  302. package/dist/src/policy/policies/yolo.toml +1 -1
  303. package/dist/src/policy/policy-engine.d.ts +2 -4
  304. package/dist/src/policy/policy-engine.js +47 -37
  305. package/dist/src/policy/policy-engine.js.map +1 -1
  306. package/dist/src/policy/policy-engine.test.js +236 -30
  307. package/dist/src/policy/policy-engine.test.js.map +1 -1
  308. package/dist/src/policy/sandboxPolicyManager.d.ts +26 -1
  309. package/dist/src/policy/sandboxPolicyManager.js +41 -12
  310. package/dist/src/policy/sandboxPolicyManager.js.map +1 -1
  311. package/dist/src/policy/sandboxPolicyManager.test.d.ts +6 -0
  312. package/dist/src/policy/sandboxPolicyManager.test.js +61 -0
  313. package/dist/src/policy/sandboxPolicyManager.test.js.map +1 -0
  314. package/dist/src/policy/topic-policy.test.d.ts +6 -0
  315. package/dist/src/policy/topic-policy.test.js +48 -0
  316. package/dist/src/policy/topic-policy.test.js.map +1 -0
  317. package/dist/src/policy/types.d.ts +9 -6
  318. package/dist/src/policy/types.js +11 -0
  319. package/dist/src/policy/types.js.map +1 -1
  320. package/dist/src/policy/workspace-policy.test.js +18 -15
  321. package/dist/src/policy/workspace-policy.test.js.map +1 -1
  322. package/dist/src/prompts/promptProvider.js +20 -4
  323. package/dist/src/prompts/promptProvider.js.map +1 -1
  324. package/dist/src/prompts/promptProvider.test.js +84 -1
  325. package/dist/src/prompts/promptProvider.test.js.map +1 -1
  326. package/dist/src/prompts/snippets-memory-manager.test.js +1 -1
  327. package/dist/src/prompts/snippets-memory-manager.test.js.map +1 -1
  328. package/dist/src/prompts/snippets.d.ts +3 -4
  329. package/dist/src/prompts/snippets.js +37 -52
  330. package/dist/src/prompts/snippets.js.map +1 -1
  331. package/dist/src/prompts/snippets.legacy.d.ts +6 -4
  332. package/dist/src/prompts/snippets.legacy.js +36 -7
  333. package/dist/src/prompts/snippets.legacy.js.map +1 -1
  334. package/dist/src/prompts/utils.test.js +7 -5
  335. package/dist/src/prompts/utils.test.js.map +1 -1
  336. package/dist/src/safety/built-in.js +1 -1
  337. package/dist/src/safety/built-in.js.map +1 -1
  338. package/dist/src/sandbox/linux/LinuxSandboxManager.d.ts +11 -1
  339. package/dist/src/sandbox/linux/LinuxSandboxManager.js +131 -41
  340. package/dist/src/sandbox/linux/LinuxSandboxManager.js.map +1 -1
  341. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js +82 -139
  342. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js.map +1 -1
  343. package/dist/src/sandbox/linux/bwrapArgsBuilder.d.ts +24 -0
  344. package/dist/src/sandbox/linux/bwrapArgsBuilder.js +200 -0
  345. package/dist/src/sandbox/linux/bwrapArgsBuilder.js.map +1 -0
  346. package/dist/src/sandbox/linux/bwrapArgsBuilder.test.d.ts +6 -0
  347. package/dist/src/sandbox/linux/bwrapArgsBuilder.test.js +247 -0
  348. package/dist/src/sandbox/linux/bwrapArgsBuilder.test.js.map +1 -0
  349. package/dist/src/sandbox/macos/MacOsSandboxManager.d.ts +10 -22
  350. package/dist/src/sandbox/macos/MacOsSandboxManager.js +67 -59
  351. package/dist/src/sandbox/macos/MacOsSandboxManager.js.map +1 -1
  352. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js +168 -103
  353. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js.map +1 -1
  354. package/dist/src/sandbox/macos/baseProfile.d.ts +1 -1
  355. package/dist/src/sandbox/macos/baseProfile.js +26 -8
  356. package/dist/src/sandbox/macos/baseProfile.js.map +1 -1
  357. package/dist/src/sandbox/macos/seatbeltArgsBuilder.d.ts +10 -10
  358. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js +81 -93
  359. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js.map +1 -1
  360. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js +136 -99
  361. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js.map +1 -1
  362. package/dist/src/sandbox/{macos → utils}/commandSafety.d.ts +11 -0
  363. package/dist/src/sandbox/{macos → utils}/commandSafety.js +47 -14
  364. package/dist/src/sandbox/utils/commandSafety.js.map +1 -0
  365. package/dist/src/sandbox/utils/commandUtils.d.ts +9 -0
  366. package/dist/src/sandbox/utils/commandUtils.js +57 -0
  367. package/dist/src/sandbox/utils/commandUtils.js.map +1 -0
  368. package/dist/src/sandbox/utils/fsUtils.d.ts +11 -0
  369. package/dist/src/sandbox/utils/fsUtils.js +84 -0
  370. package/dist/src/sandbox/utils/fsUtils.js.map +1 -0
  371. package/dist/src/sandbox/utils/fsUtils.test.d.ts +6 -0
  372. package/dist/src/sandbox/utils/fsUtils.test.js +43 -0
  373. package/dist/src/sandbox/utils/fsUtils.test.js.map +1 -0
  374. package/dist/src/sandbox/utils/proactivePermissions.d.ts +19 -0
  375. package/dist/src/sandbox/utils/proactivePermissions.js +163 -0
  376. package/dist/src/sandbox/utils/proactivePermissions.js.map +1 -0
  377. package/dist/src/sandbox/utils/proactivePermissions.test.d.ts +6 -0
  378. package/dist/src/sandbox/utils/proactivePermissions.test.js +145 -0
  379. package/dist/src/sandbox/utils/proactivePermissions.test.js.map +1 -0
  380. package/dist/src/sandbox/utils/sandboxDenialUtils.d.ts +27 -0
  381. package/dist/src/sandbox/utils/sandboxDenialUtils.js +142 -0
  382. package/dist/src/sandbox/utils/sandboxDenialUtils.js.map +1 -0
  383. package/dist/src/sandbox/utils/sandboxDenialUtils.test.d.ts +6 -0
  384. package/dist/src/sandbox/utils/sandboxDenialUtils.test.js +188 -0
  385. package/dist/src/sandbox/utils/sandboxDenialUtils.test.js.map +1 -0
  386. package/dist/src/sandbox/utils/sandboxReadWriteUtils.d.ts +5 -0
  387. package/dist/src/sandbox/utils/sandboxReadWriteUtils.js +64 -0
  388. package/dist/src/sandbox/utils/sandboxReadWriteUtils.js.map +1 -0
  389. package/dist/src/sandbox/windows/GeminiSandbox.cs +312 -223
  390. package/dist/src/sandbox/windows/WindowsSandboxManager.d.ts +16 -2
  391. package/dist/src/sandbox/windows/WindowsSandboxManager.js +261 -44
  392. package/dist/src/sandbox/windows/WindowsSandboxManager.js.map +1 -1
  393. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js +379 -17
  394. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js.map +1 -1
  395. package/dist/src/sandbox/windows/commandSafety.d.ts +19 -0
  396. package/dist/src/sandbox/windows/commandSafety.js +128 -0
  397. package/dist/src/sandbox/windows/commandSafety.js.map +1 -0
  398. package/dist/src/sandbox/windows/commandSafety.test.d.ts +6 -0
  399. package/dist/src/sandbox/windows/commandSafety.test.js +42 -0
  400. package/dist/src/sandbox/windows/commandSafety.test.js.map +1 -0
  401. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.d.ts +13 -0
  402. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js +69 -0
  403. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.js.map +1 -0
  404. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.d.ts +6 -0
  405. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js +68 -0
  406. package/dist/src/sandbox/windows/windowsSandboxDenialUtils.test.js.map +1 -0
  407. package/dist/src/scheduler/policy.js +20 -5
  408. package/dist/src/scheduler/policy.js.map +1 -1
  409. package/dist/src/scheduler/policy.test.js +80 -0
  410. package/dist/src/scheduler/policy.test.js.map +1 -1
  411. package/dist/src/scheduler/scheduler.js +13 -3
  412. package/dist/src/scheduler/scheduler.js.map +1 -1
  413. package/dist/src/scheduler/scheduler.test.js +52 -0
  414. package/dist/src/scheduler/scheduler.test.js.map +1 -1
  415. package/dist/src/scheduler/scheduler_hooks.test.js +1 -0
  416. package/dist/src/scheduler/scheduler_hooks.test.js.map +1 -1
  417. package/dist/src/scheduler/state-manager.js +1 -1
  418. package/dist/src/scheduler/state-manager.js.map +1 -1
  419. package/dist/src/scheduler/state-manager.test.js +10 -0
  420. package/dist/src/scheduler/state-manager.test.js.map +1 -1
  421. package/dist/src/scheduler/tool-executor.js +7 -2
  422. package/dist/src/scheduler/tool-executor.js.map +1 -1
  423. package/dist/src/scheduler/tool-executor.test.js +38 -0
  424. package/dist/src/scheduler/tool-executor.test.js.map +1 -1
  425. package/dist/src/scheduler/types.d.ts +4 -2
  426. package/dist/src/services/chatRecordingService.d.ts +1 -13
  427. package/dist/src/services/chatRecordingService.js +45 -46
  428. package/dist/src/services/chatRecordingService.js.map +1 -1
  429. package/dist/src/services/chatRecordingService.test.js +79 -10
  430. package/dist/src/services/chatRecordingService.test.js.map +1 -1
  431. package/dist/src/services/executionLifecycleService.d.ts +44 -6
  432. package/dist/src/services/executionLifecycleService.js +52 -12
  433. package/dist/src/services/executionLifecycleService.js.map +1 -1
  434. package/dist/src/services/executionLifecycleService.test.js +157 -3
  435. package/dist/src/services/executionLifecycleService.test.js.map +1 -1
  436. package/dist/src/services/fileDiscoveryService.d.ts +17 -2
  437. package/dist/src/services/fileDiscoveryService.js +84 -20
  438. package/dist/src/services/fileDiscoveryService.js.map +1 -1
  439. package/dist/src/services/fileDiscoveryService.test.js +67 -1
  440. package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
  441. package/dist/src/services/gitService.js +1 -1
  442. package/dist/src/services/gitService.js.map +1 -1
  443. package/dist/src/services/memoryService.d.ts +65 -0
  444. package/dist/src/services/memoryService.js +511 -0
  445. package/dist/src/services/memoryService.js.map +1 -0
  446. package/dist/src/services/memoryService.test.d.ts +6 -0
  447. package/dist/src/services/memoryService.test.js +563 -0
  448. package/dist/src/services/memoryService.test.js.map +1 -0
  449. package/dist/src/services/modelConfigService.d.ts +11 -0
  450. package/dist/src/services/modelConfigService.js +67 -0
  451. package/dist/src/services/modelConfigService.js.map +1 -1
  452. package/dist/src/services/modelConfigService.test.js +30 -0
  453. package/dist/src/services/modelConfigService.test.js.map +1 -1
  454. package/dist/src/services/sandboxManager.d.ts +107 -8
  455. package/dist/src/services/sandboxManager.integration.test.d.ts +1 -0
  456. package/dist/src/services/sandboxManager.integration.test.js +445 -0
  457. package/dist/src/services/sandboxManager.integration.test.js.map +1 -0
  458. package/dist/src/services/sandboxManager.js +176 -13
  459. package/dist/src/services/sandboxManager.js.map +1 -1
  460. package/dist/src/services/sandboxManager.test.js +401 -117
  461. package/dist/src/services/sandboxManager.test.js.map +1 -1
  462. package/dist/src/services/sandboxManagerFactory.d.ts +2 -3
  463. package/dist/src/services/sandboxManagerFactory.js +12 -22
  464. package/dist/src/services/sandboxManagerFactory.js.map +1 -1
  465. package/dist/src/services/sandboxedFileSystemService.d.ts +1 -0
  466. package/dist/src/services/sandboxedFileSystemService.js +43 -3
  467. package/dist/src/services/sandboxedFileSystemService.js.map +1 -1
  468. package/dist/src/services/sandboxedFileSystemService.test.js +97 -11
  469. package/dist/src/services/sandboxedFileSystemService.test.js.map +1 -1
  470. package/dist/src/services/shellExecutionService.d.ts +18 -1
  471. package/dist/src/services/shellExecutionService.js +115 -26
  472. package/dist/src/services/shellExecutionService.js.map +1 -1
  473. package/dist/src/services/shellExecutionService.test.js +70 -8
  474. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  475. package/dist/src/services/test-data/resolved-aliases-retry.golden.json +4 -0
  476. package/dist/src/services/test-data/resolved-aliases.golden.json +4 -0
  477. package/dist/src/services/worktreeService.test.js +7 -7
  478. package/dist/src/services/worktreeService.test.js.map +1 -1
  479. package/dist/src/skills/skillLoader.d.ts +8 -0
  480. package/dist/src/skills/skillLoader.js +1 -1
  481. package/dist/src/skills/skillLoader.js.map +1 -1
  482. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +29 -1
  483. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +107 -0
  484. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  485. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +172 -1
  486. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  487. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +10 -1
  488. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +22 -1
  489. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  490. package/dist/src/telemetry/loggers.d.ts +22 -0
  491. package/dist/src/telemetry/loggers.js +41 -2
  492. package/dist/src/telemetry/loggers.js.map +1 -1
  493. package/dist/src/telemetry/loggers.test.js +8 -3
  494. package/dist/src/telemetry/loggers.test.js.map +1 -1
  495. package/dist/src/telemetry/metrics.d.ts +118 -1
  496. package/dist/src/telemetry/metrics.js +196 -4
  497. package/dist/src/telemetry/metrics.js.map +1 -1
  498. package/dist/src/telemetry/metrics.test.js +298 -0
  499. package/dist/src/telemetry/metrics.test.js.map +1 -1
  500. package/dist/src/telemetry/types.d.ts +3 -3
  501. package/dist/src/telemetry/types.js +9 -4
  502. package/dist/src/telemetry/types.js.map +1 -1
  503. package/dist/src/test-utils/mock-message-bus.d.ts +1 -1
  504. package/dist/src/test-utils/mock-message-bus.js +1 -1
  505. package/dist/src/test-utils/mock-message-bus.js.map +1 -1
  506. package/dist/src/tools/complete-task.d.ts +29 -0
  507. package/dist/src/tools/complete-task.js +123 -0
  508. package/dist/src/tools/complete-task.js.map +1 -0
  509. package/dist/src/tools/complete-task.test.d.ts +6 -0
  510. package/dist/src/tools/complete-task.test.js +114 -0
  511. package/dist/src/tools/complete-task.test.js.map +1 -0
  512. package/dist/src/tools/definitions/base-declarations.d.ts +8 -0
  513. package/dist/src/tools/definitions/base-declarations.js +10 -0
  514. package/dist/src/tools/definitions/base-declarations.js.map +1 -1
  515. package/dist/src/tools/definitions/coreTools.d.ts +2 -1
  516. package/dist/src/tools/definitions/coreTools.js +9 -3
  517. package/dist/src/tools/definitions/coreTools.js.map +1 -1
  518. package/dist/src/tools/definitions/dynamic-declaration-helpers.d.ts +4 -0
  519. package/dist/src/tools/definitions/dynamic-declaration-helpers.js +33 -2
  520. package/dist/src/tools/definitions/dynamic-declaration-helpers.js.map +1 -1
  521. package/dist/src/tools/definitions/model-family-sets/default-legacy.js +14 -9
  522. package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
  523. package/dist/src/tools/definitions/model-family-sets/gemini-3.js +13 -7
  524. package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
  525. package/dist/src/tools/definitions/trackerTools.js +3 -3
  526. package/dist/src/tools/definitions/trackerTools.js.map +1 -1
  527. package/dist/src/tools/definitions/types.d.ts +1 -0
  528. package/dist/src/tools/enter-plan-mode.js +15 -0
  529. package/dist/src/tools/enter-plan-mode.js.map +1 -1
  530. package/dist/src/tools/enter-plan-mode.test.js +25 -0
  531. package/dist/src/tools/enter-plan-mode.test.js.map +1 -1
  532. package/dist/src/tools/grep-utils.d.ts +2 -1
  533. package/dist/src/tools/grep-utils.js +22 -3
  534. package/dist/src/tools/grep-utils.js.map +1 -1
  535. package/dist/src/tools/grep.js +16 -3
  536. package/dist/src/tools/grep.js.map +1 -1
  537. package/dist/src/tools/grep.test.js +36 -8
  538. package/dist/src/tools/grep.test.js.map +1 -1
  539. package/dist/src/tools/jit-context.js +3 -3
  540. package/dist/src/tools/jit-context.js.map +1 -1
  541. package/dist/src/tools/jit-context.test.js +15 -13
  542. package/dist/src/tools/jit-context.test.js.map +1 -1
  543. package/dist/src/tools/ls.js +6 -4
  544. package/dist/src/tools/ls.js.map +1 -1
  545. package/dist/src/tools/ls.test.js +22 -7
  546. package/dist/src/tools/ls.test.js.map +1 -1
  547. package/dist/src/tools/mcp-client-manager.js +6 -3
  548. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  549. package/dist/src/tools/mcp-client-manager.test.js +35 -0
  550. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  551. package/dist/src/tools/mcp-client.js +1 -1
  552. package/dist/src/tools/mcp-client.js.map +1 -1
  553. package/dist/src/tools/mcp-tool.test.js +1 -1
  554. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  555. package/dist/src/tools/memoryTool.d.ts +9 -2
  556. package/dist/src/tools/memoryTool.js +39 -15
  557. package/dist/src/tools/memoryTool.js.map +1 -1
  558. package/dist/src/tools/memoryTool.test.js +61 -2
  559. package/dist/src/tools/memoryTool.test.js.map +1 -1
  560. package/dist/src/tools/read-many-files.js +12 -4
  561. package/dist/src/tools/read-many-files.js.map +1 -1
  562. package/dist/src/tools/read-many-files.test.js +17 -17
  563. package/dist/src/tools/read-many-files.test.js.map +1 -1
  564. package/dist/src/tools/ripGrep.js +14 -1
  565. package/dist/src/tools/ripGrep.js.map +1 -1
  566. package/dist/src/tools/ripGrep.test.js +10 -10
  567. package/dist/src/tools/ripGrep.test.js.map +1 -1
  568. package/dist/src/tools/shell.d.ts +17 -4
  569. package/dist/src/tools/shell.js +342 -151
  570. package/dist/src/tools/shell.js.map +1 -1
  571. package/dist/src/tools/shell.test.js +204 -11
  572. package/dist/src/tools/shell.test.js.map +1 -1
  573. package/dist/src/tools/shellBackgroundTools.d.ts +38 -0
  574. package/dist/src/tools/shellBackgroundTools.integration.test.d.ts +6 -0
  575. package/dist/src/tools/shellBackgroundTools.integration.test.js +86 -0
  576. package/dist/src/tools/shellBackgroundTools.integration.test.js.map +1 -0
  577. package/dist/src/tools/shellBackgroundTools.js +186 -0
  578. package/dist/src/tools/shellBackgroundTools.js.map +1 -0
  579. package/dist/src/tools/shellBackgroundTools.test.d.ts +6 -0
  580. package/dist/src/tools/shellBackgroundTools.test.js +230 -0
  581. package/dist/src/tools/shellBackgroundTools.test.js.map +1 -0
  582. package/dist/src/tools/shell_proactive.test.d.ts +6 -0
  583. package/dist/src/tools/shell_proactive.test.js +122 -0
  584. package/dist/src/tools/shell_proactive.test.js.map +1 -0
  585. package/dist/src/tools/tool-names.d.ts +4 -4
  586. package/dist/src/tools/tool-names.js +6 -3
  587. package/dist/src/tools/tool-names.js.map +1 -1
  588. package/dist/src/tools/tool-registry.js +11 -1
  589. package/dist/src/tools/tool-registry.js.map +1 -1
  590. package/dist/src/tools/tool-registry.test.js +43 -1
  591. package/dist/src/tools/tool-registry.test.js.map +1 -1
  592. package/dist/src/tools/tools.d.ts +12 -1
  593. package/dist/src/tools/tools.js +16 -1
  594. package/dist/src/tools/tools.js.map +1 -1
  595. package/dist/src/tools/tools.test.js +42 -1
  596. package/dist/src/tools/tools.test.js.map +1 -1
  597. package/dist/src/tools/topicTool.d.ts +29 -0
  598. package/dist/src/tools/topicTool.js +72 -0
  599. package/dist/src/tools/topicTool.js.map +1 -0
  600. package/dist/src/tools/topicTool.test.d.ts +6 -0
  601. package/dist/src/tools/topicTool.test.js +105 -0
  602. package/dist/src/tools/topicTool.test.js.map +1 -0
  603. package/dist/src/tools/web-fetch.js +40 -22
  604. package/dist/src/tools/web-fetch.js.map +1 -1
  605. package/dist/src/tools/web-fetch.test.js +28 -0
  606. package/dist/src/tools/web-fetch.test.js.map +1 -1
  607. package/dist/src/tools/xcode-mcp-fix-transport.js +1 -1
  608. package/dist/src/tools/xcode-mcp-fix-transport.js.map +1 -1
  609. package/dist/src/utils/bfsFileSearch.js +3 -6
  610. package/dist/src/utils/bfsFileSearch.js.map +1 -1
  611. package/dist/src/utils/checkpointUtils.d.ts +4 -4
  612. package/dist/src/utils/checkpointUtils.js +11 -8
  613. package/dist/src/utils/checkpointUtils.js.map +1 -1
  614. package/dist/src/utils/compatibility.js +0 -7
  615. package/dist/src/utils/compatibility.js.map +1 -1
  616. package/dist/src/utils/compatibility.test.js +0 -9
  617. package/dist/src/utils/compatibility.test.js.map +1 -1
  618. package/dist/src/utils/editor.js +3 -0
  619. package/dist/src/utils/editor.js.map +1 -1
  620. package/dist/src/utils/errorParsing.js +2 -2
  621. package/dist/src/utils/errorParsing.js.map +1 -1
  622. package/dist/src/utils/errors.d.ts +3 -0
  623. package/dist/src/utils/errors.js +28 -6
  624. package/dist/src/utils/errors.js.map +1 -1
  625. package/dist/src/utils/errors.test.js +23 -0
  626. package/dist/src/utils/errors.test.js.map +1 -1
  627. package/dist/src/utils/events.d.ts +12 -0
  628. package/dist/src/utils/events.js +7 -0
  629. package/dist/src/utils/events.js.map +1 -1
  630. package/dist/src/utils/fetch.d.ts +1 -0
  631. package/dist/src/utils/fetch.js +22 -6
  632. package/dist/src/utils/fetch.js.map +1 -1
  633. package/dist/src/utils/fetch.test.js +26 -1
  634. package/dist/src/utils/fetch.test.js.map +1 -1
  635. package/dist/src/utils/fileUtils.js +1 -1
  636. package/dist/src/utils/fileUtils.js.map +1 -1
  637. package/dist/src/utils/filesearch/crawler.js +1 -1
  638. package/dist/src/utils/filesearch/crawler.js.map +1 -1
  639. package/dist/src/utils/filesearch/fileSearch.test.js +7 -2
  640. package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
  641. package/dist/src/utils/getFolderStructure.js +1 -1
  642. package/dist/src/utils/getFolderStructure.js.map +1 -1
  643. package/dist/src/utils/getPty.js +2 -2
  644. package/dist/src/utils/getPty.js.map +1 -1
  645. package/dist/src/utils/gitIgnoreParser.d.ts +2 -2
  646. package/dist/src/utils/gitIgnoreParser.js +30 -52
  647. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  648. package/dist/src/utils/gitIgnoreParser.test.js +51 -185
  649. package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
  650. package/dist/src/utils/gitUtils.js +2 -2
  651. package/dist/src/utils/gitUtils.js.map +1 -1
  652. package/dist/src/utils/googleErrors.js +5 -5
  653. package/dist/src/utils/googleErrors.js.map +1 -1
  654. package/dist/src/utils/ignoreFileParser.d.ts +2 -2
  655. package/dist/src/utils/ignoreFileParser.js +7 -18
  656. package/dist/src/utils/ignoreFileParser.js.map +1 -1
  657. package/dist/src/utils/ignoreFileParser.test.js +40 -132
  658. package/dist/src/utils/ignoreFileParser.test.js.map +1 -1
  659. package/dist/src/utils/ignorePathUtils.d.ts +11 -0
  660. package/dist/src/utils/ignorePathUtils.js +39 -0
  661. package/dist/src/utils/ignorePathUtils.js.map +1 -0
  662. package/dist/src/utils/ignorePathUtils.test.d.ts +6 -0
  663. package/dist/src/utils/ignorePathUtils.test.js +70 -0
  664. package/dist/src/utils/ignorePathUtils.test.js.map +1 -0
  665. package/dist/src/utils/memoryDiscovery.d.ts +6 -4
  666. package/dist/src/utils/memoryDiscovery.js +69 -48
  667. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  668. package/dist/src/utils/memoryDiscovery.test.js +40 -0
  669. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  670. package/dist/src/utils/memoryImportProcessor.d.ts +1 -1
  671. package/dist/src/utils/memoryImportProcessor.js +24 -15
  672. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  673. package/dist/src/utils/paths.d.ts +8 -0
  674. package/dist/src/utils/paths.js +37 -6
  675. package/dist/src/utils/paths.js.map +1 -1
  676. package/dist/src/utils/paths.test.js +61 -3
  677. package/dist/src/utils/paths.test.js.map +1 -1
  678. package/dist/src/utils/process-utils.js +2 -2
  679. package/dist/src/utils/process-utils.js.map +1 -1
  680. package/dist/src/utils/retry.js +7 -0
  681. package/dist/src/utils/retry.js.map +1 -1
  682. package/dist/src/utils/retry.test.js +41 -0
  683. package/dist/src/utils/retry.test.js.map +1 -1
  684. package/dist/src/utils/secure-browser-launcher.js +1 -1
  685. package/dist/src/utils/secure-browser-launcher.js.map +1 -1
  686. package/dist/src/utils/sessionOperations.d.ts +19 -0
  687. package/dist/src/utils/sessionOperations.js +101 -0
  688. package/dist/src/utils/sessionOperations.js.map +1 -0
  689. package/dist/src/utils/sessionOperations.test.d.ts +6 -0
  690. package/dist/src/utils/sessionOperations.test.js +92 -0
  691. package/dist/src/utils/sessionOperations.test.js.map +1 -0
  692. package/dist/src/utils/shell-utils.d.ts +24 -0
  693. package/dist/src/utils/shell-utils.integration.test.js +1 -1
  694. package/dist/src/utils/shell-utils.integration.test.js.map +1 -1
  695. package/dist/src/utils/shell-utils.js +86 -6
  696. package/dist/src/utils/shell-utils.js.map +1 -1
  697. package/dist/src/utils/shell-utils.test.js +13 -1
  698. package/dist/src/utils/shell-utils.test.js.map +1 -1
  699. package/dist/src/utils/systemEncoding.js +1 -1
  700. package/dist/src/utils/systemEncoding.js.map +1 -1
  701. package/dist/src/utils/terminalSerializer.d.ts +1 -0
  702. package/dist/src/utils/terminalSerializer.js +31 -8
  703. package/dist/src/utils/terminalSerializer.js.map +1 -1
  704. package/dist/src/utils/terminalSerializer.test.js +3 -2
  705. package/dist/src/utils/terminalSerializer.test.js.map +1 -1
  706. package/dist/src/utils/textUtils.d.ts +8 -0
  707. package/dist/src/utils/textUtils.js +16 -0
  708. package/dist/src/utils/textUtils.js.map +1 -1
  709. package/dist/src/utils/tokenCalculation.d.ts +2 -0
  710. package/dist/src/utils/tokenCalculation.js +2 -2
  711. package/dist/src/utils/tokenCalculation.js.map +1 -1
  712. package/dist/src/utils/workspaceContext.js +2 -2
  713. package/dist/src/utils/workspaceContext.js.map +1 -1
  714. package/dist/tsconfig.tsbuildinfo +1 -1
  715. package/package.json +2 -1
  716. package/dist/docs/CONTRIBUTING.md +0 -566
  717. package/dist/docs/get-started/examples.md +0 -141
  718. package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js +0 -164
  719. package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js.map +0 -1
  720. package/dist/src/sandbox/macos/commandSafety.js.map +0 -1
  721. package/dist/src/services/chatCompressionService.js.map +0 -1
  722. package/dist/src/services/chatCompressionService.test.js.map +0 -1
  723. package/dist/src/services/contextManager.js.map +0 -1
  724. package/dist/src/services/contextManager.test.js.map +0 -1
  725. package/dist/src/services/toolOutputMaskingService.js.map +0 -1
  726. package/dist/src/services/toolOutputMaskingService.test.js.map +0 -1
  727. /package/dist/src/{services/toolOutputMaskingService.test.d.ts → agents/browser/snapshotSuperseder.test.d.ts} +0 -0
  728. /package/dist/src/{services → context}/chatCompressionService.d.ts +0 -0
  729. /package/dist/src/{services → context}/chatCompressionService.js +0 -0
  730. /package/dist/src/{services → context}/chatCompressionService.test.d.ts +0 -0
  731. /package/dist/src/{services → context}/chatCompressionService.test.js +0 -0
  732. /package/dist/src/{sandbox/macos/MacOsSandboxManager.integration.test.d.ts → context/contextCompressionService.test.d.ts} +0 -0
  733. /package/dist/src/{services/contextManager.test.d.ts → context/memoryContextManager.test.d.ts} +0 -0
@@ -0,0 +1,126 @@
1
+ # ACP Mode
2
+
3
+ ACP (Agent Client Protocol) mode is a special operational mode of Cell CLI
4
+ designed for programmatic control, primarily for IDE and other developer tool
5
+ integrations. It uses a JSON-RPC protocol over stdio to communicate between Cell
6
+ CLI agent and a client.
7
+
8
+ To start Cell CLI in ACP mode, use the `--acp` flag:
9
+
10
+ ```bash
11
+ cell-cli --acp
12
+ ```
13
+
14
+ ## Agent Client Protocol (ACP)
15
+
16
+ ACP is an open protocol that standardizes how AI coding agents communicate with
17
+ code editors and IDEs. It addresses the challenge of fragmented distribution,
18
+ where agents traditionally needed custom integrations for each client. With ACP,
19
+ developers can implement their agent once, and it becomes compatible with any
20
+ ACP-compliant editor.
21
+
22
+ For a comprehensive introduction to ACP, including its architecture and
23
+ benefits, refer to the official
24
+ [ACP Introduction](https://agentclientprotocol.com/get-started/introduction)
25
+ documentation.
26
+
27
+ ### Existing integrations using ACP
28
+
29
+ The ACP Agent Registry simplifies the distribution and management of
30
+ ACP-compatible agents across various IDEs. Cell CLI is an ACP-compatible agent
31
+ and can be found in this registry.
32
+
33
+ For more general information about the registry, and how to use it with specific
34
+ IDEs like JetBrains and Zed, refer to the
35
+ [IDE Integration](../ide-integration/index.md) documentation.
36
+
37
+ You can also find more information on the official
38
+ [ACP Agent Registry](https://agentclientprotocol.com/get-started/registry) page.
39
+
40
+ ## Architecture and protocol basics
41
+
42
+ ACP mode establishes a client-server relationship between your tool (the client)
43
+ and Cell CLI (the server).
44
+
45
+ - **Communication:** The entire communication happens over standard input/output
46
+ (stdio) using the JSON-RPC 2.0 protocol.
47
+ - **Client's role:** The client is responsible for sending requests (e.g.,
48
+ prompts) and handling responses and notifications from Cell CLI.
49
+ - **Cell CLI's role:** In ACP mode, Cell CLI listens for incoming JSON-RPC
50
+ requests, processes them, and sends back responses.
51
+
52
+ The core of the ACP implementation can be found in
53
+ `packages/cli/src/acp/acpClient.ts`.
54
+
55
+ ### Extending with MCP
56
+
57
+ ACP can be used with the Model Context Protocol (MCP). This lets an ACP client
58
+ (like an IDE) expose its own functionality as "tools" that the Gemini model can
59
+ use.
60
+
61
+ 1. The client implements an **MCP server** that advertises its tools.
62
+ 2. During the ACP `initialize` handshake, the client provides the connection
63
+ details for its MCP server.
64
+ 3. Cell CLI connects to the MCP server, discovers the available tools, and
65
+ makes them available to the AI model.
66
+ 4. When the model decides to use one of these tools, Cell CLI sends a tool call
67
+ request to the MCP server.
68
+
69
+ This mechanism lets for a powerful, two-way integration where the agent can
70
+ leverage the IDE's capabilities to perform tasks. The MCP client logic is in
71
+ `packages/core/src/tools/mcp-client.ts`.
72
+
73
+ ## Capabilities and supported methods
74
+
75
+ The ACP protocol exposes a number of methods for ACP clients (e.g. IDEs) to
76
+ control Cell CLI.
77
+
78
+ ### Core methods
79
+
80
+ - `initialize`: Establishes the initial connection and lets the client to
81
+ register its MCP server.
82
+ - `authenticate`: Authenticates the user.
83
+ - `newSession`: Starts a new chat session.
84
+ - `loadSession`: Loads a previous session.
85
+ - `prompt`: Sends a prompt to the agent.
86
+ - `cancel`: Cancels an ongoing prompt.
87
+
88
+ ### Session control
89
+
90
+ - `setSessionMode`: Allows changing the approval level for tool calls (e.g., to
91
+ `auto-approve`).
92
+ - `unstable_setSessionModel`: Changes the model for the current session.
93
+
94
+ ### File system proxy
95
+
96
+ ACP includes a proxied file system service. This means that when the agent needs
97
+ to read or write files, it does so through the ACP client. This is a security
98
+ feature that ensures the agent only has access to the files that the client (and
99
+ by extension, the user) has explicitly allowed.
100
+
101
+ ## Debugging and telemetry
102
+
103
+ You can get insights into the ACP communication and the agent's behavior through
104
+ debugging logs and telemetry.
105
+
106
+ ### Debugging logs
107
+
108
+ To enable general debugging logs, start Cell CLI with the `--debug` flag:
109
+
110
+ ```bash
111
+ cell-cli --acp --debug
112
+ ```
113
+
114
+ ### Telemetry
115
+
116
+ For more detailed telemetry, you can use the following environment variables to
117
+ capture telemetry data to a file:
118
+
119
+ - `CELL_TELEMETRY_ENABLED=true`
120
+ - `CELL_TELEMETRY_TARGET=local`
121
+ - `CELL_TELEMETRY_OUTFILE=/path/to/your/log.json`
122
+
123
+ This will write a JSON log file containing detailed information about all the
124
+ events happening within the agent, including ACP requests and responses. The
125
+ integration test `integration-tests/acp-telemetry.test.ts` provides a working
126
+ example of how to set this up.
@@ -52,7 +52,7 @@ These commands are available within the interactive REPL.
52
52
  | `--prompt-interactive` | `-i` | string | - | Execute prompt and continue in interactive mode |
53
53
  | `--worktree` | `-w` | string | - | Start Gemini in a new git worktree. If no name is provided, one is generated automatically. Requires `experimental.worktrees: true` in settings. |
54
54
  | `--sandbox` | `-s` | boolean | `false` | Run in a sandboxed environment for safer execution |
55
- | `--approval-mode` | - | string | `default` | Approval mode for tool execution. Choices: `default`, `auto_edit`, `yolo` |
55
+ | `--approval-mode` | - | string | `default` | Approval mode for tool execution. Choices: `default`, `auto_edit`, `yolo`, `plan` |
56
56
  | `--yolo` | `-y` | boolean | `false` | **Deprecated.** Auto-approve all actions. Use `--approval-mode=yolo` instead. |
57
57
  | `--experimental-acp` | - | boolean | - | Start in ACP (Agent Code Pilot) mode. **Experimental feature.** |
58
58
  | `--experimental-zed-integration` | - | boolean | - | Run in Zed editor integration mode. **Experimental feature.** |
@@ -15,14 +15,14 @@ CLI works in the background.
15
15
 
16
16
  ## Requirements
17
17
 
18
- Currently, system notifications are only supported on macOS.
19
-
20
18
  ### Terminal support
21
19
 
22
20
  The CLI uses the OSC 9 terminal escape sequence to trigger system notifications.
23
- This is supported by several modern terminal emulators. If your terminal does
24
- not support OSC 9 notifications, Cell CLI falls back to a system alert sound to
25
- get your attention.
21
+ This is supported by several modern terminal emulators including iTerm2,
22
+ WezTerm, Ghostty, and Kitty. If your terminal does not support OSC 9
23
+ notifications, Cell CLI falls back to a terminal bell (BEL) to get your
24
+ attention. Most terminals respond to BEL with a taskbar flash or system alert
25
+ sound.
26
26
 
27
27
  ## Enable notifications
28
28
 
@@ -39,7 +39,9 @@ To start Plan Mode while using Cell CLI:
39
39
  the rotation when Cell CLI is actively processing or showing confirmation
40
40
  dialogs.
41
41
 
42
- - **Command:** Type `/plan` in the input box.
42
+ - **Command:** Type `/plan [goal]` in the input box. The `[goal]` is optional;
43
+ for example, `/plan implement authentication` will switch to Plan Mode and
44
+ immediately submit the prompt to the model.
43
45
 
44
46
  - **Natural Language:** Ask Cell CLI to "start a plan for...". Cell CLI calls
45
47
  the [`enter_plan_mode`](../tools/planning.md#1-enter_plan_mode-enterplanmode)
@@ -53,11 +55,13 @@ CLI takes action.
53
55
 
54
56
  1. **Provide a goal:** Start by describing what you want to achieve. Cell CLI
55
57
  will then enter Plan Mode (if it's not already) to research the task.
56
- 2. **Review research and provide input:** As Cell CLI analyzes your codebase,
57
- it may ask you questions or present different implementation options using
58
- [`ask_user`](../tools/ask-user.md). Provide your preferences to help guide
59
- the design.
60
- 3. **Review the plan:** Once Cell CLI has a proposed strategy, it creates a
58
+ 2. **Discuss and agree on strategy:** As Cell CLI analyzes your codebase, it
59
+ will discuss its findings and proposed strategy with you to ensure
60
+ alignment. It may ask you questions or present different implementation
61
+ options using [`ask_user`](../tools/ask-user.md). **Cell CLI will stop and
62
+ wait for your confirmation** before drafting the formal plan. You should
63
+ reach an informal agreement on the approach before proceeding.
64
+ 3. **Review the plan:** Once you've agreed on the strategy, Cell CLI creates a
61
65
  detailed implementation plan as a Markdown file in your plans directory.
62
66
  - **View:** You can open and read this file to understand the proposed
63
67
  changes.
@@ -65,7 +69,7 @@ CLI takes action.
65
69
  external editor.
66
70
 
67
71
  4. **Approve or iterate:** Cell CLI will present the finalized plan for your
68
- approval.
72
+ formal approval.
69
73
  - **Approve:** If you're satisfied with the plan, approve it to start the
70
74
  implementation immediately: **Yes, automatically accept edits** or **Yes,
71
75
  manually accept edits**.
@@ -117,6 +121,7 @@ These are the only allowed tools:
117
121
  [`glob`](../tools/file-system.md#4-glob-findfiles)
118
122
  - **Search:** [`grep_search`](../tools/file-system.md#5-grep_search-searchtext),
119
123
  [`google_web_search`](../tools/web-search.md),
124
+ [`web_fetch`](../tools/web-fetch.md) (requires explicit confirmation),
120
125
  [`get_internal_docs`](../tools/internal-docs.md)
121
126
  - **Research Subagents:**
122
127
  [`codebase_investigator`](../core/subagents.md#codebase-investigator),
@@ -174,9 +179,16 @@ As described in the
174
179
  rule that does not explicitly specify `modes` is considered "always active" and
175
180
  will apply to Plan Mode as well.
176
181
 
177
- If you want a rule to apply to other modes but _not_ to Plan Mode, you must
178
- explicitly specify the target modes. For example, to allow `npm test` in default
179
- and Auto-Edit modes but not in Plan Mode:
182
+ To maintain the integrity of Plan Mode as a safe research environment,
183
+ persistent tool approvals are context-aware. Approvals granted in modes like
184
+ Default or Auto-Edit do not apply to Plan Mode, ensuring that tools trusted for
185
+ implementation don't automatically execute while you're researching. However,
186
+ approvals granted while in Plan Mode are treated as intentional choices for
187
+ global trust and apply to all modes.
188
+
189
+ If you want to manually restrict a rule to other modes but _not_ to Plan Mode,
190
+ you must explicitly specify the target modes. For example, to allow `npm test`
191
+ in default and Auto-Edit modes but not in Plan Mode:
180
192
 
181
193
  ```toml
182
194
  [[rule]]
@@ -427,6 +439,10 @@ on the current phase of your task:
427
439
  switches to a high-speed **Flash** model. This provides a faster, more
428
440
  responsive experience during the implementation of the plan.
429
441
 
442
+ If the high-reasoning model is unavailable or you don't have access to it, Cell
443
+ CLI automatically and silently falls back to a faster model to ensure your
444
+ workflow isn't interrupted.
445
+
430
446
  This behavior is enabled by default to provide the best balance of quality and
431
447
  performance. You can disable this automatic switching in your settings:
432
448
 
@@ -91,7 +91,7 @@ To set up runsc:
91
91
  2. Configure the Docker daemon to use the runsc runtime.
92
92
  3. Verify the installation.
93
93
 
94
- ### 4. LXC/LXD (Linux only, experimental)
94
+ ### 5. LXC/LXD (Linux only, experimental)
95
95
 
96
96
  Full-system container sandboxing using LXC/LXD. Unlike Docker/Podman, LXC
97
97
  containers run a complete Linux system with `systemd`, `snapd`, and other system
@@ -135,6 +135,58 @@ gemini -p "build the snap"
135
135
  absolute path — the path must be writable inside the container.
136
136
  - Used with tools like Snapcraft or Rockcraft that require a full system.
137
137
 
138
+ ## Tool sandboxing
139
+
140
+ Tool-level sandboxing provides granular isolation for individual tool executions
141
+ (like `shell_exec` and `write_file`) instead of sandboxing the entire Cell CLI
142
+ process.
143
+
144
+ This approach offers better integration with your local environment for non-tool
145
+ tasks (like UI rendering and configuration loading) while still providing
146
+ security for tool-driven operations.
147
+
148
+ ### How to turn off tool sandboxing
149
+
150
+ If you experience issues with tool sandboxing or prefer full-process isolation,
151
+ you can disable it by setting `security.toolSandboxing` to `false` in your
152
+ `settings.json` file.
153
+
154
+ ```json
155
+ {
156
+ "security": {
157
+ "toolSandboxing": false
158
+ }
159
+ }
160
+ ```
161
+
162
+ <!-- prettier-ignore -->
163
+ > [!NOTE]
164
+ > Changing the `security.toolSandboxing` setting requires a restart of Gemini
165
+ > CLI to take effect.
166
+
167
+ ## Sandbox expansion
168
+
169
+ Sandbox expansion is a dynamic permission system that lets Cell CLI request
170
+ additional permissions for a command when needed.
171
+
172
+ When a sandboxed command fails due to permission restrictions (like restricted
173
+ file paths or network access), or when a command is proactively identified as
174
+ requiring extra permissions (like `npm install`), Cell CLI will present you with
175
+ a "Sandbox Expansion Request."
176
+
177
+ ### How sandbox expansion works
178
+
179
+ 1. **Detection**: Cell CLI detects a sandbox denial or proactively identifies a
180
+ command that requires extra permissions.
181
+ 2. **Request**: A modal dialog is shown, explaining which additional
182
+ permissions (e.g., specific directories or network access) are required.
183
+ 3. **Approval**: If you approve the expansion, the command is executed with the
184
+ extended permissions for that specific run.
185
+
186
+ This mechanism ensures you don't have to manually re-run commands with more
187
+ permissive sandbox settings, while still maintaining control over what the AI
188
+ can access.
189
+
138
190
  ## Quickstart
139
191
 
140
192
  ```bash
@@ -29,8 +29,9 @@ they appear in the UI.
29
29
  | Vim Mode | `general.vimMode` | Enable Vim keybindings | `false` |
30
30
  | Default Approval Mode | `general.defaultApprovalMode` | The default approval mode for tool execution. 'default' prompts for approval, 'auto_edit' auto-approves edit tools, and 'plan' is read-only mode. YOLO mode (auto-approve all actions) can only be enabled via command line (--yolo or --approval-mode=yolo). | `"default"` |
31
31
  | Enable Auto Update | `general.enableAutoUpdate` | Enable automatic updates. | `true` |
32
- | Enable Notifications | `general.enableNotifications` | Enable run-event notifications for action-required prompts and session completion. Currently macOS only. | `false` |
33
- | Plan Directory | `general.plan.directory` | The directory where planning artifacts are stored. If not specified, defaults to the system temporary directory. | `undefined` |
32
+ | Enable Notifications | `general.enableNotifications` | Enable run-event notifications for action-required prompts and session completion. | `false` |
33
+ | Enable Plan Mode | `general.plan.enabled` | Enable Plan Mode for read-only safety during planning. | `true` |
34
+ | Plan Directory | `general.plan.directory` | The directory where planning artifacts are stored. If not specified, defaults to the system temporary directory. A custom directory requires a policy to allow write access in Plan Mode. | `undefined` |
34
35
  | Plan Model Routing | `general.plan.modelRouting` | Automatically switch between Pro and Flash models based on Plan Mode status. Uses Pro for the planning phase and Flash for the implementation phase. | `true` |
35
36
  | Retry Fetch Errors | `general.retryFetchErrors` | Retry on "exception TypeError: fetch failed sending request" errors. | `true` |
36
37
  | Max Chat Model Attempts | `general.maxAttempts` | Maximum number of attempts for requests to the main chat model. Cannot exceed 10. | `10` |
@@ -46,38 +47,41 @@ they appear in the UI.
46
47
 
47
48
  ### UI
48
49
 
49
- | UI Label | Setting | Description | Default |
50
- | ------------------------------------ | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
51
- | Auto Theme Switching | `ui.autoThemeSwitching` | Automatically switch between default light and dark themes based on terminal background color. | `true` |
52
- | Terminal Background Polling Interval | `ui.terminalBackgroundPollingInterval` | Interval in seconds to poll the terminal background color. | `60` |
53
- | Hide Window Title | `ui.hideWindowTitle` | Hide the window title bar | `false` |
54
- | Inline Thinking | `ui.inlineThinkingMode` | Display model thinking inline: off or full. | `"off"` |
55
- | Show Thoughts in Title | `ui.showStatusInTitle` | Show Cell CLI model thoughts in the terminal window title during the working phase | `false` |
56
- | Dynamic Window Title | `ui.dynamicWindowTitle` | Update the terminal window title with current status icons (Ready: ◇, Action Required: ✋, Working: ✦) | `true` |
57
- | Show Home Directory Warning | `ui.showHomeDirectoryWarning` | Show a warning when running Cell CLI in the home directory. | `true` |
58
- | Show Compatibility Warnings | `ui.showCompatibilityWarnings` | Show warnings about terminal or OS compatibility issues. | `true` |
59
- | Hide Tips | `ui.hideTips` | Hide helpful tips in the UI | `false` |
60
- | Escape Pasted @ Symbols | `ui.escapePastedAtSymbols` | When enabled, @ symbols in pasted text are escaped to prevent unintended @path expansion. | `false` |
61
- | Show Shortcuts Hint | `ui.showShortcutsHint` | Show the "? for shortcuts" hint above the input. | `true` |
62
- | Hide Banner | `ui.hideBanner` | Hide the application banner | `false` |
63
- | Hide Context Summary | `ui.hideContextSummary` | Hide the context summary (GEMINI.md, MCP servers) above the input. | `false` |
64
- | Hide CWD | `ui.footer.hideCWD` | Hide the current working directory in the footer. | `false` |
65
- | Hide Sandbox Status | `ui.footer.hideSandboxStatus` | Hide the sandbox status indicator in the footer. | `false` |
66
- | Hide Model Info | `ui.footer.hideModelInfo` | Hide the model name and context usage in the footer. | `false` |
67
- | Hide Context Window Percentage | `ui.footer.hideContextPercentage` | Hides the context window usage percentage. | `true` |
68
- | Hide Footer | `ui.hideFooter` | Hide the footer from the UI | `false` |
69
- | Show Memory Usage | `ui.showMemoryUsage` | Display memory usage information in the UI | `false` |
70
- | Show Line Numbers | `ui.showLineNumbers` | Show line numbers in the chat. | `true` |
71
- | Show Citations | `ui.showCitations` | Show citations for generated text in the chat. | `false` |
72
- | Show Model Info In Chat | `ui.showModelInfoInChat` | Show the model name in the chat for each model turn. | `false` |
73
- | Show User Identity | `ui.showUserIdentity` | Show the signed-in user's identity (e.g. email) in the UI. | `true` |
74
- | Use Alternate Screen Buffer | `ui.useAlternateBuffer` | Use an alternate screen buffer for the UI, preserving shell history. | `false` |
75
- | Use Background Color | `ui.useBackgroundColor` | Whether to use background colors in the UI. | `true` |
76
- | Incremental Rendering | `ui.incrementalRendering` | Enable incremental rendering for the UI. This option will reduce flickering but may cause rendering artifacts. Only supported when useAlternateBuffer is enabled. | `true` |
77
- | Show Spinner | `ui.showSpinner` | Show the spinner during operations. | `true` |
78
- | Loading Phrases | `ui.loadingPhrases` | What to show while the model is working: tips, witty comments, both, or nothing. | `"tips"` |
79
- | Error Verbosity | `ui.errorVerbosity` | Controls whether recoverable errors are hidden (low) or fully shown (full). | `"low"` |
80
- | Screen Reader Mode | `ui.accessibility.screenReader` | Render output in plain-text to be more screen reader accessible | `false` |
50
+ | UI Label | Setting | Description | Default |
51
+ | ------------------------------------ | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
52
+ | Auto Theme Switching | `ui.autoThemeSwitching` | Automatically switch between default light and dark themes based on terminal background color. | `true` |
53
+ | Terminal Background Polling Interval | `ui.terminalBackgroundPollingInterval` | Interval in seconds to poll the terminal background color. | `60` |
54
+ | Hide Window Title | `ui.hideWindowTitle` | Hide the window title bar | `false` |
55
+ | Inline Thinking | `ui.inlineThinkingMode` | Display model thinking inline: off or full. | `"off"` |
56
+ | Show Thoughts in Title | `ui.showStatusInTitle` | Show Cell CLI model thoughts in the terminal window title during the working phase | `false` |
57
+ | Dynamic Window Title | `ui.dynamicWindowTitle` | Update the terminal window title with current status icons (Ready: ◇, Action Required: ✋, Working: ✦) | `true` |
58
+ | Show Home Directory Warning | `ui.showHomeDirectoryWarning` | Show a warning when running Cell CLI in the home directory. | `true` |
59
+ | Show Compatibility Warnings | `ui.showCompatibilityWarnings` | Show warnings about terminal or OS compatibility issues. | `true` |
60
+ | Hide Tips | `ui.hideTips` | Hide helpful tips in the UI | `false` |
61
+ | Escape Pasted @ Symbols | `ui.escapePastedAtSymbols` | When enabled, @ symbols in pasted text are escaped to prevent unintended @path expansion. | `false` |
62
+ | Show Shortcuts Hint | `ui.showShortcutsHint` | Show the "? for shortcuts" hint above the input. | `true` |
63
+ | Compact Tool Output | `ui.compactToolOutput` | Display tool outputs (like directory listings and file reads) in a compact, structured format. | `true` |
64
+ | Hide Banner | `ui.hideBanner` | Hide the application banner | `false` |
65
+ | Hide Context Summary | `ui.hideContextSummary` | Hide the context summary (GEMINI.md, MCP servers) above the input. | `false` |
66
+ | Hide CWD | `ui.footer.hideCWD` | Hide the current working directory in the footer. | `false` |
67
+ | Hide Sandbox Status | `ui.footer.hideSandboxStatus` | Hide the sandbox status indicator in the footer. | `false` |
68
+ | Hide Model Info | `ui.footer.hideModelInfo` | Hide the model name and context usage in the footer. | `false` |
69
+ | Hide Context Window Percentage | `ui.footer.hideContextPercentage` | Hides the context window usage percentage. | `true` |
70
+ | Hide Footer | `ui.hideFooter` | Hide the footer from the UI | `false` |
71
+ | Show Memory Usage | `ui.showMemoryUsage` | Display memory usage information in the UI | `false` |
72
+ | Show Line Numbers | `ui.showLineNumbers` | Show line numbers in the chat. | `true` |
73
+ | Show Citations | `ui.showCitations` | Show citations for generated text in the chat. | `false` |
74
+ | Show Model Info In Chat | `ui.showModelInfoInChat` | Show the model name in the chat for each model turn. | `false` |
75
+ | Show User Identity | `ui.showUserIdentity` | Show the signed-in user's identity (e.g. email) in the UI. | `true` |
76
+ | Use Alternate Screen Buffer | `ui.useAlternateBuffer` | Use an alternate screen buffer for the UI, preserving shell history. | `false` |
77
+ | Render Process | `ui.renderProcess` | Enable Ink render process for the UI. | `true` |
78
+ | Terminal Buffer | `ui.terminalBuffer` | Use the new terminal buffer architecture for rendering. | `false` |
79
+ | Use Background Color | `ui.useBackgroundColor` | Whether to use background colors in the UI. | `true` |
80
+ | Incremental Rendering | `ui.incrementalRendering` | Enable incremental rendering for the UI. This option will reduce flickering but may cause rendering artifacts. Only supported when useAlternateBuffer is enabled. | `true` |
81
+ | Show Spinner | `ui.showSpinner` | Show the spinner during operations. | `true` |
82
+ | Loading Phrases | `ui.loadingPhrases` | What to show while the model is working: tips, witty comments, all, or off. | `"off"` |
83
+ | Error Verbosity | `ui.errorVerbosity` | Controls whether recoverable errors are hidden (low) or fully shown (full). | `"low"` |
84
+ | Screen Reader Mode | `ui.accessibility.screenReader` | Render output in plain-text to be more screen reader accessible | `false` |
81
85
 
82
86
  ### IDE
83
87
 
@@ -127,7 +131,7 @@ they appear in the UI.
127
131
  | Sandbox Allowed Paths | `tools.sandboxAllowedPaths` | List of additional paths that the sandbox is allowed to access. | `[]` |
128
132
  | Sandbox Network Access | `tools.sandboxNetworkAccess` | Whether the sandbox is allowed to access the network. | `false` |
129
133
  | Enable Interactive Shell | `tools.shell.enableInteractiveShell` | Use node-pty for an interactive shell experience. Fallback to child_process still applies. | `true` |
130
- | Show Color | `tools.shell.showColor` | Show color in shell output. | `false` |
134
+ | Show Color | `tools.shell.showColor` | Show color in shell output. | `true` |
131
135
  | Use Ripgrep | `tools.useRipgrep` | Use ripgrep for file content search instead of the fallback implementation. Provides faster search performance. | `true` |
132
136
  | Tool Output Truncation Threshold | `tools.truncateToolOutputThreshold` | Maximum characters to show when truncating large tool outputs. Set to 0 or negative to disable truncation. | `40000` |
133
137
  | Disable LLM Correction | `tools.disableLLMCorrection` | Disable LLM-based error correction for edit tools. When enabled, tools will fail immediately if exact string matches are not found, instead of attempting to self-correct. | `true` |
@@ -136,7 +140,7 @@ they appear in the UI.
136
140
 
137
141
  | UI Label | Setting | Description | Default |
138
142
  | ------------------------------------- | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------- |
139
- | Tool Sandboxing | `security.toolSandboxing` | Experimental tool-level sandboxing (implementation in progress). | `false` |
143
+ | Tool Sandboxing | `security.toolSandboxing` | Tool-level sandboxing. Isolates individual tools instead of the entire CLI process. | `false` |
140
144
  | Disable YOLO Mode | `security.disableYoloMode` | Disable YOLO mode, even if enabled by a flag. | `false` |
141
145
  | Disable Always Allow | `security.disableAlwaysAllow` | Disable "Always allow" options in tool confirmation dialogs. | `false` |
142
146
  | Allow Permanent Tool Approval | `security.enablePermanentToolApproval` | Enable the "Allow for all future sessions" option in tool confirmation dialogs. | `false` |
@@ -151,7 +155,7 @@ they appear in the UI.
151
155
 
152
156
  | UI Label | Setting | Description | Default |
153
157
  | --------------------------------- | ------------------------------ | --------------------------------------------- | ------- |
154
- | Auto Configure Max Old Space Size | `advanced.autoConfigureMemory` | Automatically configure Node.js memory limits | `false` |
158
+ | Auto Configure Max Old Space Size | `advanced.autoConfigureMemory` | Automatically configure Node.js memory limits | `true` |
155
159
 
156
160
  ### LoadMemoryFromIncludeDirectories
157
161
 
@@ -173,17 +177,17 @@ they appear in the UI.
173
177
 
174
178
  ### Experimental
175
179
 
176
- | UI Label | Setting | Description | Default |
177
- | -------------------------- | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
178
- | Enable Tool Output Masking | `experimental.toolOutputMasking.enabled` | Enables tool output masking to save tokens. | `true` |
179
- | Enable Git Worktrees | `experimental.worktrees` | Enable automated Git worktree management for parallel work. | `false` |
180
- | Use OSC 52 Paste | `experimental.useOSC52Paste` | Use OSC 52 for pasting. This may be more robust than the default system when using remote terminal sessions (if your terminal is configured to allow it). | `false` |
181
- | Use OSC 52 Copy | `experimental.useOSC52Copy` | Use OSC 52 for copying. This may be more robust than the default system when using remote terminal sessions (if your terminal is configured to allow it). | `false` |
182
- | Plan | `experimental.plan` | Enable Plan Mode. | `true` |
183
- | Model Steering | `experimental.modelSteering` | Enable model steering (user hints) to guide the model during tool execution. | `false` |
184
- | Direct Web Fetch | `experimental.directWebFetch` | Enable web fetch behavior that bypasses LLM summarization. | `false` |
185
- | Memory Manager Agent | `experimental.memoryManager` | Replace the built-in save_memory tool with a memory manager subagent that supports adding, removing, de-duplicating, and organizing memories. | `false` |
186
- | Topic & Update Narration | `experimental.topicUpdateNarration` | Enable the experimental Topic & Update communication model for reduced chattiness and structured progress reporting. | `false` |
180
+ | UI Label | Setting | Description | Default |
181
+ | ---------------------------------------------------- | ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
182
+ | Enable Git Worktrees | `experimental.worktrees` | Enable automated Git worktree management for parallel work. | `false` |
183
+ | Use OSC 52 Paste | `experimental.useOSC52Paste` | Use OSC 52 for pasting. This may be more robust than the default system when using remote terminal sessions (if your terminal is configured to allow it). | `false` |
184
+ | Use OSC 52 Copy | `experimental.useOSC52Copy` | Use OSC 52 for copying. This may be more robust than the default system when using remote terminal sessions (if your terminal is configured to allow it). | `false` |
185
+ | Model Steering | `experimental.modelSteering` | Enable model steering (user hints) to guide the model during tool execution. | `false` |
186
+ | Direct Web Fetch | `experimental.directWebFetch` | Enable web fetch behavior that bypasses LLM summarization. | `false` |
187
+ | Memory Manager Agent | `experimental.memoryManager` | Replace the built-in save_memory tool with a memory manager subagent that supports adding, removing, de-duplicating, and organizing memories. | `false` |
188
+ | Use the generalist profile to manage agent contexts. | `experimental.generalistProfile` | Suitable for general coding and software development tasks. | `false` |
189
+ | Enable Context Management | `experimental.contextManagement` | Enable logic for context management. | `false` |
190
+ | Topic & Update Narration | `experimental.topicUpdateNarration` | Enable the experimental Topic & Update communication model for reduced chattiness and structured progress reporting. | `false` |
187
191
 
188
192
  ### Skills
189
193
 
@@ -19,6 +19,7 @@ the `/theme` command within Cell CLI:
19
19
  - `Holiday`
20
20
  - `Shades Of Purple`
21
21
  - `Solarized Dark`
22
+ - `Tokyo Night`
22
23
  - **Light themes:**
23
24
  - `ANSI Light`
24
25
  - `Ayu Light`
@@ -252,6 +253,10 @@ identify their source, for example: `shades-of-green (green-extension)`.
252
253
 
253
254
  <img src="/docs/assets/theme-solarized-dark.png" alt="Solarized Dark theme" width="600">
254
255
 
256
+ ### Tokyo Night
257
+
258
+ <img src="/docs/assets/theme-tokyonight-dark.png" alt="Tokyo Night theme" width="600">
259
+
255
260
  ## Light themes
256
261
 
257
262
  ### ANSI Light
@@ -7,8 +7,8 @@ requests sent from `packages/cli`. For a general overview of Cell CLI, see the
7
7
 
8
8
  ## Navigating this section
9
9
 
10
- - **[Sub-agents (experimental)](./subagents.md):** Learn how to create and use
11
- specialized sub-agents for complex tasks.
10
+ - **[Sub-agents](./subagents.md):** Learn how to create and use specialized
11
+ sub-agents for complex tasks.
12
12
  - **[Core tools reference](../reference/tools.md):** Information on how tools
13
13
  are defined, registered, and used by the core.
14
14
  - **[Memory Import Processor](../reference/memport.md):** Documentation for the
@@ -1,4 +1,4 @@
1
- # Remote Subagents (experimental)
1
+ # Remote Subagents
2
2
 
3
3
  Cell CLI supports connecting to remote subagents using the Agent-to-Agent (A2A)
4
4
  protocol. This allows Cell CLI to interact with other agents, expanding its
@@ -10,23 +10,6 @@ agents in the following repositories:
10
10
  - [ADK Samples (Python)](https://github.com/google/adk-samples/tree/main/python)
11
11
  - [ADK Python Contributing Samples](https://github.com/google/adk-python/tree/main/contributing/samples)
12
12
 
13
- <!-- prettier-ignore -->
14
- > [!NOTE]
15
- > Remote subagents are currently an experimental feature.
16
-
17
- ## Configuration
18
-
19
- To use remote subagents, you must explicitly enable them in your
20
- `settings.json`:
21
-
22
- ```json
23
- {
24
- "experimental": {
25
- "enableAgents": true
26
- }
27
- }
28
- ```
29
-
30
13
  ## Proxy support
31
14
 
32
15
  Cell CLI routes traffic to remote agents through an HTTP/HTTPS proxy if one is
@@ -459,3 +442,16 @@ Users can manage subagents using the following commands within the Cell CLI:
459
442
  > [!TIP]
460
443
  > You can use the `@cli_help` agent within Cell CLI for assistance
461
444
  > with configuring subagents.
445
+
446
+ ## Disabling remote agents
447
+
448
+ Remote subagents are enabled by default. To disable them, set `enableAgents` to
449
+ `false` in your `settings.json`:
450
+
451
+ ```json
452
+ {
453
+ "experimental": {
454
+ "enableAgents": false
455
+ }
456
+ }
457
+ ```