@machina.ai/cell-cli-core 1.38.1-rc2 → 1.40.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 (822) hide show
  1. package/dist/docs/AFTER_MERGE_PROMPT.md +1 -1
  2. package/dist/docs/admin/enterprise-controls.md +1 -1
  3. package/dist/docs/changelogs/index.md +42 -0
  4. package/dist/docs/changelogs/latest.md +254 -361
  5. package/dist/docs/changelogs/preview.md +237 -406
  6. package/dist/docs/cli/acp-mode.md +6 -6
  7. package/dist/docs/cli/auto-memory.md +143 -0
  8. package/dist/docs/cli/checkpointing.md +5 -5
  9. package/dist/docs/cli/cli-reference.md +12 -11
  10. package/dist/docs/cli/creating-skills.md +2 -2
  11. package/dist/docs/cli/custom-commands.md +15 -14
  12. package/dist/docs/cli/enterprise.md +17 -14
  13. package/dist/docs/cli/gemini-ignore.md +2 -2
  14. package/dist/docs/cli/generation-settings.md +21 -20
  15. package/dist/docs/cli/model-routing.md +2 -2
  16. package/dist/docs/cli/model-steering.md +1 -1
  17. package/dist/docs/cli/plan-mode.md +11 -6
  18. package/dist/docs/cli/sandbox.md +7 -5
  19. package/dist/docs/cli/settings.md +32 -28
  20. package/dist/docs/cli/system-prompt.md +8 -8
  21. package/dist/docs/cli/telemetry.md +18 -11
  22. package/dist/docs/cli/themes.md +2 -2
  23. package/dist/docs/cli/trusted-folders.md +41 -13
  24. package/dist/docs/cli/tutorials/mcp-setup.md +1 -1
  25. package/dist/docs/cli/tutorials/memory-management.md +3 -1
  26. package/dist/docs/cli/tutorials/plan-mode-steering.md +2 -2
  27. package/dist/docs/cli/tutorials/session-management.md +1 -1
  28. package/dist/docs/cli/tutorials/shell-commands.md +1 -1
  29. package/dist/docs/cli/tutorials/task-planning.md +3 -3
  30. package/dist/docs/core/index.md +5 -6
  31. package/dist/docs/core/local-model-routing.md +1 -1
  32. package/dist/docs/core/remote-agents.md +1 -1
  33. package/dist/docs/core/subagents.md +38 -8
  34. package/dist/docs/extensions/best-practices.md +5 -4
  35. package/dist/docs/extensions/reference.md +6 -5
  36. package/dist/docs/extensions/releasing.md +6 -5
  37. package/dist/docs/extensions/writing-extensions.md +11 -11
  38. package/dist/docs/get-started/{authentication.md → authentication.mdx} +139 -93
  39. package/dist/docs/get-started/gemini-3.md +1 -1
  40. package/dist/docs/get-started/index.md +4 -4
  41. package/dist/docs/get-started/installation.mdx +201 -0
  42. package/dist/docs/hooks/best-practices.md +18 -17
  43. package/dist/docs/hooks/index.md +10 -8
  44. package/dist/docs/hooks/reference.md +10 -10
  45. package/dist/docs/ide-integration/ide-companion-spec.md +14 -14
  46. package/dist/docs/ide-integration/index.md +4 -4
  47. package/dist/docs/index.md +2 -2
  48. package/dist/docs/integration-tests.md +84 -2
  49. package/dist/docs/issue-and-pr-automation.md +8 -7
  50. package/dist/docs/npm.md +2 -2
  51. package/dist/docs/reference/commands.md +11 -11
  52. package/dist/docs/reference/configuration.md +150 -47
  53. package/dist/docs/reference/keyboard-shortcuts.md +79 -2
  54. package/dist/docs/reference/memport.md +2 -3
  55. package/dist/docs/reference/policy-engine.md +60 -26
  56. package/dist/docs/reference/tools.md +38 -4
  57. package/dist/docs/release-confidence.md +1 -1
  58. package/dist/docs/releases.md +19 -19
  59. package/dist/docs/resources/faq.md +5 -5
  60. package/dist/docs/resources/tos-privacy.md +10 -9
  61. package/dist/docs/resources/troubleshooting.md +17 -16
  62. package/dist/docs/resources/uninstall.md +5 -4
  63. package/dist/docs/sidebar.json +13 -1
  64. package/dist/docs/tools/ask-user.md +3 -3
  65. package/dist/docs/tools/file-system.md +7 -7
  66. package/dist/docs/tools/mcp-resources.md +44 -0
  67. package/dist/docs/tools/mcp-server.md +42 -39
  68. package/dist/docs/tools/shell.md +5 -5
  69. package/dist/docs/tools/tracker.md +61 -0
  70. package/dist/package.json +5 -4
  71. package/dist/src/agent/content-utils.d.ts +0 -6
  72. package/dist/src/agent/content-utils.js +0 -14
  73. package/dist/src/agent/content-utils.js.map +1 -1
  74. package/dist/src/agent/content-utils.test.js +1 -18
  75. package/dist/src/agent/content-utils.test.js.map +1 -1
  76. package/dist/src/agent/event-translator.js +8 -3
  77. package/dist/src/agent/event-translator.js.map +1 -1
  78. package/dist/src/agent/event-translator.test.js +14 -9
  79. package/dist/src/agent/event-translator.test.js.map +1 -1
  80. package/dist/src/agent/legacy-agent-session.js +9 -3
  81. package/dist/src/agent/legacy-agent-session.js.map +1 -1
  82. package/dist/src/agent/legacy-agent-session.test.js +4 -3
  83. package/dist/src/agent/legacy-agent-session.test.js.map +1 -1
  84. package/dist/src/agent/tool-display-utils.d.ts +30 -0
  85. package/dist/src/agent/tool-display-utils.js +69 -0
  86. package/dist/src/agent/tool-display-utils.js.map +1 -0
  87. package/dist/src/agent/tool-display-utils.test.js +101 -0
  88. package/dist/src/agent/tool-display-utils.test.js.map +1 -0
  89. package/dist/src/agent/types.d.ts +25 -5
  90. package/dist/src/agents/a2aUtils.js +28 -15
  91. package/dist/src/agents/a2aUtils.js.map +1 -1
  92. package/dist/src/agents/a2aUtils.test.js +43 -0
  93. package/dist/src/agents/a2aUtils.test.js.map +1 -1
  94. package/dist/src/agents/agent-tool.d.ts +31 -0
  95. package/dist/src/agents/agent-tool.js +155 -0
  96. package/dist/src/agents/agent-tool.js.map +1 -0
  97. package/dist/src/agents/agent-tool.test.js +110 -0
  98. package/dist/src/agents/agent-tool.test.js.map +1 -0
  99. package/dist/src/agents/agentLoader.d.ts +79 -4
  100. package/dist/src/agents/agentLoader.js +40 -2
  101. package/dist/src/agents/agentLoader.js.map +1 -1
  102. package/dist/src/agents/agentLoader.test.js +32 -0
  103. package/dist/src/agents/agentLoader.test.js.map +1 -1
  104. package/dist/src/agents/browser/analyzeScreenshot.js +1 -1
  105. package/dist/src/agents/browser/analyzeScreenshot.js.map +1 -1
  106. package/dist/src/agents/browser/analyzeScreenshot.test.js +19 -7
  107. package/dist/src/agents/browser/analyzeScreenshot.test.js.map +1 -1
  108. package/dist/src/agents/browser/browserAgentInvocation.d.ts +2 -2
  109. package/dist/src/agents/browser/browserAgentInvocation.js +2 -1
  110. package/dist/src/agents/browser/browserAgentInvocation.js.map +1 -1
  111. package/dist/src/agents/browser/browserAgentInvocation.test.js +61 -17
  112. package/dist/src/agents/browser/browserAgentInvocation.test.js.map +1 -1
  113. package/dist/src/agents/browser/mcpToolWrapper.js +1 -1
  114. package/dist/src/agents/browser/mcpToolWrapper.js.map +1 -1
  115. package/dist/src/agents/browser/mcpToolWrapper.test.js +22 -10
  116. package/dist/src/agents/browser/mcpToolWrapper.test.js.map +1 -1
  117. package/dist/src/agents/codebase-investigator.js +2 -2
  118. package/dist/src/agents/codebase-investigator.js.map +1 -1
  119. package/dist/src/agents/generalist-agent.js +3 -2
  120. package/dist/src/agents/generalist-agent.js.map +1 -1
  121. package/dist/src/agents/generalist-agent.test.js +1 -0
  122. package/dist/src/agents/generalist-agent.test.js.map +1 -1
  123. package/dist/src/agents/local-executor.d.ts +1 -1
  124. package/dist/src/agents/local-executor.js +10 -7
  125. package/dist/src/agents/local-executor.js.map +1 -1
  126. package/dist/src/agents/local-executor.test.js +5 -3
  127. package/dist/src/agents/local-executor.test.js.map +1 -1
  128. package/dist/src/agents/local-invocation.d.ts +2 -2
  129. package/dist/src/agents/local-invocation.js +8 -2
  130. package/dist/src/agents/local-invocation.js.map +1 -1
  131. package/dist/src/agents/local-invocation.test.js +29 -13
  132. package/dist/src/agents/local-invocation.test.js.map +1 -1
  133. package/dist/src/agents/registry.d.ts +2 -0
  134. package/dist/src/agents/registry.js +20 -19
  135. package/dist/src/agents/registry.js.map +1 -1
  136. package/dist/src/agents/registry.test.js +19 -30
  137. package/dist/src/agents/registry.test.js.map +1 -1
  138. package/dist/src/agents/remote-invocation.d.ts +3 -4
  139. package/dist/src/agents/remote-invocation.js +2 -1
  140. package/dist/src/agents/remote-invocation.js.map +1 -1
  141. package/dist/src/agents/remote-invocation.test.js +45 -18
  142. package/dist/src/agents/remote-invocation.test.js.map +1 -1
  143. package/dist/src/agents/skill-extraction-agent.d.ts +3 -2
  144. package/dist/src/agents/skill-extraction-agent.js +99 -56
  145. package/dist/src/agents/skill-extraction-agent.js.map +1 -1
  146. package/dist/src/agents/skill-extraction-agent.test.js +54 -0
  147. package/dist/src/agents/skill-extraction-agent.test.js.map +1 -0
  148. package/dist/src/availability/policyCatalog.js +1 -1
  149. package/dist/src/availability/policyCatalog.js.map +1 -1
  150. package/dist/src/availability/policyCatalog.test.js +1 -1
  151. package/dist/src/availability/policyCatalog.test.js.map +1 -1
  152. package/dist/src/code_assist/oauth2.js +14 -4
  153. package/dist/src/code_assist/oauth2.js.map +1 -1
  154. package/dist/src/commands/memory.d.ts +77 -0
  155. package/dist/src/commands/memory.js +494 -0
  156. package/dist/src/commands/memory.js.map +1 -1
  157. package/dist/src/commands/memory.test.js +720 -1
  158. package/dist/src/commands/memory.test.js.map +1 -1
  159. package/dist/src/config/config-agents-reload.test.js +26 -31
  160. package/dist/src/config/config-agents-reload.test.js.map +1 -1
  161. package/dist/src/config/config.d.ts +24 -10
  162. package/dist/src/config/config.js +148 -82
  163. package/dist/src/config/config.js.map +1 -1
  164. package/dist/src/config/config.test.js +373 -10
  165. package/dist/src/config/config.test.js.map +1 -1
  166. package/dist/src/config/constants.d.ts +1 -0
  167. package/dist/src/config/constants.js +2 -0
  168. package/dist/src/config/constants.js.map +1 -1
  169. package/dist/src/config/defaultModelConfigs.js +7 -7
  170. package/dist/src/config/defaultModelConfigs.js.map +1 -1
  171. package/dist/src/config/memory.js +1 -1
  172. package/dist/src/config/memory.js.map +1 -1
  173. package/dist/src/config/path-validation.test.js +15 -6
  174. package/dist/src/config/path-validation.test.js.map +1 -1
  175. package/dist/src/config/projectRegistry.js +113 -32
  176. package/dist/src/config/projectRegistry.js.map +1 -1
  177. package/dist/src/config/projectRegistry.test.js +51 -0
  178. package/dist/src/config/projectRegistry.test.js.map +1 -1
  179. package/dist/src/config/storage.d.ts +5 -1
  180. package/dist/src/config/storage.js +14 -1
  181. package/dist/src/config/storage.js.map +1 -1
  182. package/dist/src/config/storage.test.js +12 -0
  183. package/dist/src/config/storage.test.js.map +1 -1
  184. package/dist/src/confirmation-bus/message-bus.d.ts +4 -1
  185. package/dist/src/confirmation-bus/message-bus.js +39 -1
  186. package/dist/src/confirmation-bus/message-bus.js.map +1 -1
  187. package/dist/src/confirmation-bus/message-bus.test.js +43 -0
  188. package/dist/src/confirmation-bus/message-bus.test.js.map +1 -1
  189. package/dist/src/context/config/configLoader.d.ts +13 -0
  190. package/dist/src/context/config/configLoader.js +65 -0
  191. package/dist/src/context/config/configLoader.js.map +1 -0
  192. package/dist/src/context/config/configLoader.test.d.ts +6 -0
  193. package/dist/src/context/config/configLoader.test.js +79 -0
  194. package/dist/src/context/config/configLoader.test.js.map +1 -0
  195. package/dist/src/context/config/profiles.d.ts +17 -0
  196. package/dist/src/context/config/profiles.js +93 -0
  197. package/dist/src/context/config/profiles.js.map +1 -0
  198. package/dist/src/context/config/registry.d.ts +21 -0
  199. package/dist/src/context/config/registry.js +32 -0
  200. package/dist/src/context/config/registry.js.map +1 -0
  201. package/dist/src/context/config/schema.d.ts +45 -0
  202. package/dist/src/context/config/schema.js +47 -0
  203. package/dist/src/context/config/schema.js.map +1 -0
  204. package/dist/src/context/config/types.d.ts +39 -0
  205. package/dist/src/context/config/types.js +7 -0
  206. package/dist/src/context/config/types.js.map +1 -0
  207. package/dist/src/context/contextManager.barrier.test.d.ts +6 -0
  208. package/dist/src/context/contextManager.barrier.test.js +56 -0
  209. package/dist/src/context/contextManager.barrier.test.js.map +1 -0
  210. package/dist/src/context/contextManager.d.ts +49 -0
  211. package/dist/src/context/contextManager.js +120 -0
  212. package/dist/src/context/contextManager.js.map +1 -0
  213. package/dist/src/context/eventBus.d.ts +28 -0
  214. package/dist/src/context/eventBus.js +27 -0
  215. package/dist/src/context/eventBus.js.map +1 -0
  216. package/dist/src/context/graph/behaviorRegistry.d.ts +28 -0
  217. package/dist/src/context/graph/behaviorRegistry.js +14 -0
  218. package/dist/src/context/graph/behaviorRegistry.js.map +1 -0
  219. package/dist/src/context/graph/builtinBehaviors.d.ts +11 -0
  220. package/dist/src/context/graph/builtinBehaviors.js +145 -0
  221. package/dist/src/context/graph/builtinBehaviors.js.map +1 -0
  222. package/dist/src/context/graph/fromGraph.d.ts +9 -0
  223. package/dist/src/context/graph/fromGraph.js +34 -0
  224. package/dist/src/context/graph/fromGraph.js.map +1 -0
  225. package/dist/src/context/graph/mapper.d.ts +16 -0
  226. package/dist/src/context/graph/mapper.js +16 -0
  227. package/dist/src/context/graph/mapper.js.map +1 -0
  228. package/dist/src/context/graph/render.d.ts +15 -0
  229. package/dist/src/context/graph/render.js +72 -0
  230. package/dist/src/context/graph/render.js.map +1 -0
  231. package/dist/src/context/graph/toGraph.d.ts +10 -0
  232. package/dist/src/context/graph/toGraph.js +172 -0
  233. package/dist/src/context/graph/toGraph.js.map +1 -0
  234. package/dist/src/context/graph/types.d.ts +139 -0
  235. package/dist/src/context/graph/types.js +36 -0
  236. package/dist/src/context/graph/types.js.map +1 -0
  237. package/dist/src/context/historyObserver.d.ts +27 -0
  238. package/dist/src/context/historyObserver.js +64 -0
  239. package/dist/src/context/historyObserver.js.map +1 -0
  240. package/dist/src/context/pipeline/contextWorkingBuffer.d.ts +33 -0
  241. package/dist/src/context/pipeline/contextWorkingBuffer.js +197 -0
  242. package/dist/src/context/pipeline/contextWorkingBuffer.js.map +1 -0
  243. package/dist/src/context/pipeline/contextWorkingBuffer.test.d.ts +6 -0
  244. package/dist/src/context/pipeline/contextWorkingBuffer.test.js +89 -0
  245. package/dist/src/context/pipeline/contextWorkingBuffer.test.js.map +1 -0
  246. package/dist/src/context/pipeline/environment.d.ts +27 -0
  247. package/dist/src/context/pipeline/environment.js +2 -0
  248. package/dist/src/context/pipeline/environment.js.map +1 -0
  249. package/dist/src/context/pipeline/environmentImpl.d.ts +28 -0
  250. package/dist/src/context/pipeline/environmentImpl.js +40 -0
  251. package/dist/src/context/pipeline/environmentImpl.js.map +1 -0
  252. package/dist/src/context/pipeline/environmentImpl.test.d.ts +1 -0
  253. package/dist/src/context/pipeline/environmentImpl.test.js +32 -0
  254. package/dist/src/context/pipeline/environmentImpl.test.js.map +1 -0
  255. package/dist/src/context/pipeline/inbox.d.ts +15 -0
  256. package/dist/src/context/pipeline/inbox.js +52 -0
  257. package/dist/src/context/pipeline/inbox.js.map +1 -0
  258. package/dist/src/context/pipeline/inbox.test.d.ts +1 -0
  259. package/dist/src/context/pipeline/inbox.test.js +36 -0
  260. package/dist/src/context/pipeline/inbox.test.js.map +1 -0
  261. package/dist/src/context/pipeline/orchestrator.d.ts +22 -0
  262. package/dist/src/context/pipeline/orchestrator.js +126 -0
  263. package/dist/src/context/pipeline/orchestrator.js.map +1 -0
  264. package/dist/src/context/pipeline/orchestrator.test.d.ts +6 -0
  265. package/dist/src/context/pipeline/orchestrator.test.js +154 -0
  266. package/dist/src/context/pipeline/orchestrator.test.js.map +1 -0
  267. package/dist/src/context/pipeline.d.ts +52 -0
  268. package/dist/src/context/pipeline.js +7 -0
  269. package/dist/src/context/pipeline.js.map +1 -0
  270. package/dist/src/context/processors/blobDegradationProcessor.d.ts +6 -0
  271. package/dist/src/context/processors/blobDegradationProcessor.js +127 -0
  272. package/dist/src/context/processors/blobDegradationProcessor.js.map +1 -0
  273. package/dist/src/context/processors/blobDegradationProcessor.test.d.ts +6 -0
  274. package/dist/src/context/processors/blobDegradationProcessor.test.js +72 -0
  275. package/dist/src/context/processors/blobDegradationProcessor.test.js.map +1 -0
  276. package/dist/src/context/processors/historyTruncationProcessor.d.ts +11 -0
  277. package/dist/src/context/processors/historyTruncationProcessor.js +61 -0
  278. package/dist/src/context/processors/historyTruncationProcessor.js.map +1 -0
  279. package/dist/src/context/processors/nodeDistillationProcessor.d.ts +8 -0
  280. package/dist/src/context/processors/nodeDistillationProcessor.js +167 -0
  281. package/dist/src/context/processors/nodeDistillationProcessor.js.map +1 -0
  282. package/dist/src/context/processors/nodeDistillationProcessor.test.d.ts +6 -0
  283. package/dist/src/context/processors/nodeDistillationProcessor.test.js +77 -0
  284. package/dist/src/context/processors/nodeDistillationProcessor.test.js.map +1 -0
  285. package/dist/src/context/processors/nodeTruncationProcessor.d.ts +8 -0
  286. package/dist/src/context/processors/nodeTruncationProcessor.js +109 -0
  287. package/dist/src/context/processors/nodeTruncationProcessor.js.map +1 -0
  288. package/dist/src/context/processors/nodeTruncationProcessor.test.d.ts +6 -0
  289. package/dist/src/context/processors/nodeTruncationProcessor.test.js +71 -0
  290. package/dist/src/context/processors/nodeTruncationProcessor.test.js.map +1 -0
  291. package/dist/src/context/processors/rollingSummaryProcessor.d.ts +8 -0
  292. package/dist/src/context/processors/rollingSummaryProcessor.js +129 -0
  293. package/dist/src/context/processors/rollingSummaryProcessor.js.map +1 -0
  294. package/dist/src/context/processors/rollingSummaryProcessor.test.d.ts +1 -0
  295. package/dist/src/context/processors/rollingSummaryProcessor.test.js +60 -0
  296. package/dist/src/context/processors/rollingSummaryProcessor.test.js.map +1 -0
  297. package/dist/src/context/processors/stateSnapshotAsyncProcessor.d.ts +9 -0
  298. package/dist/src/context/processors/stateSnapshotAsyncProcessor.js +75 -0
  299. package/dist/src/context/processors/stateSnapshotAsyncProcessor.js.map +1 -0
  300. package/dist/src/context/processors/stateSnapshotAsyncProcessor.test.d.ts +1 -0
  301. package/dist/src/context/processors/stateSnapshotAsyncProcessor.test.js +80 -0
  302. package/dist/src/context/processors/stateSnapshotAsyncProcessor.test.js.map +1 -0
  303. package/dist/src/context/processors/stateSnapshotProcessor.d.ts +9 -0
  304. package/dist/src/context/processors/stateSnapshotProcessor.js +130 -0
  305. package/dist/src/context/processors/stateSnapshotProcessor.js.map +1 -0
  306. package/dist/src/context/processors/stateSnapshotProcessor.test.d.ts +1 -0
  307. package/dist/src/context/processors/stateSnapshotProcessor.test.js +91 -0
  308. package/dist/src/context/processors/stateSnapshotProcessor.test.js.map +1 -0
  309. package/dist/src/context/processors/toolMaskingProcessor.d.ts +8 -0
  310. package/dist/src/context/processors/toolMaskingProcessor.js +194 -0
  311. package/dist/src/context/processors/toolMaskingProcessor.js.map +1 -0
  312. package/dist/src/context/processors/toolMaskingProcessor.test.d.ts +1 -0
  313. package/dist/src/context/processors/toolMaskingProcessor.test.js +50 -0
  314. package/dist/src/context/processors/toolMaskingProcessor.test.js.map +1 -0
  315. package/dist/src/context/system-tests/lifecycle.golden.test.d.ts +6 -0
  316. package/dist/src/context/system-tests/lifecycle.golden.test.js +195 -0
  317. package/dist/src/context/system-tests/lifecycle.golden.test.js.map +1 -0
  318. package/dist/src/context/system-tests/simulationHarness.d.ts +41 -0
  319. package/dist/src/context/system-tests/simulationHarness.js +88 -0
  320. package/dist/src/context/system-tests/simulationHarness.js.map +1 -0
  321. package/dist/src/context/testing/contextTestUtils.d.ts +44 -0
  322. package/dist/src/context/testing/contextTestUtils.js +176 -0
  323. package/dist/src/context/testing/contextTestUtils.js.map +1 -0
  324. package/dist/src/context/testing/testProfile.d.ts +7 -0
  325. package/dist/src/context/testing/testProfile.js +20 -0
  326. package/dist/src/context/testing/testProfile.js.map +1 -0
  327. package/dist/src/context/tracer.d.ts +19 -0
  328. package/dist/src/context/tracer.js +79 -0
  329. package/dist/src/context/tracer.js.map +1 -0
  330. package/dist/src/context/tracer.test.d.ts +6 -0
  331. package/dist/src/context/tracer.test.js +71 -0
  332. package/dist/src/context/tracer.test.js.map +1 -0
  333. package/dist/src/context/utils/contextTokenCalculator.d.ts +53 -0
  334. package/dist/src/context/utils/contextTokenCalculator.js +97 -0
  335. package/dist/src/context/utils/contextTokenCalculator.js.map +1 -0
  336. package/dist/src/context/utils/snapshotGenerator.d.ts +12 -0
  337. package/dist/src/context/utils/snapshotGenerator.js +43 -0
  338. package/dist/src/context/utils/snapshotGenerator.js.map +1 -0
  339. package/dist/src/core/agentChatHistory.d.ts +26 -0
  340. package/dist/src/core/agentChatHistory.js +50 -0
  341. package/dist/src/core/agentChatHistory.js.map +1 -0
  342. package/dist/src/core/client.js +3 -1
  343. package/dist/src/core/client.js.map +1 -1
  344. package/dist/src/core/client.test.js +4 -0
  345. package/dist/src/core/client.test.js.map +1 -1
  346. package/dist/src/core/contentGenerator.d.ts +8 -1
  347. package/dist/src/core/contentGenerator.js +46 -4
  348. package/dist/src/core/contentGenerator.js.map +1 -1
  349. package/dist/src/core/contentGenerator.test.js +174 -8
  350. package/dist/src/core/contentGenerator.test.js.map +1 -1
  351. package/dist/src/core/coreToolHookTriggers.d.ts +1 -1
  352. package/dist/src/core/coreToolHookTriggers.js +5 -1
  353. package/dist/src/core/coreToolHookTriggers.js.map +1 -1
  354. package/dist/src/core/coreToolHookTriggers.test.js +1 -1
  355. package/dist/src/core/coreToolHookTriggers.test.js.map +1 -1
  356. package/dist/src/core/geminiChat.d.ts +2 -1
  357. package/dist/src/core/geminiChat.js +7 -2
  358. package/dist/src/core/geminiChat.js.map +1 -1
  359. package/dist/src/core/geminiChat.test.js +19 -6
  360. package/dist/src/core/geminiChat.test.js.map +1 -1
  361. package/dist/src/core/geminiChat_network_retry.test.js +42 -0
  362. package/dist/src/core/geminiChat_network_retry.test.js.map +1 -1
  363. package/dist/src/core/localLiteRtLmClient.js +2 -0
  364. package/dist/src/core/localLiteRtLmClient.js.map +1 -1
  365. package/dist/src/core/localLiteRtLmClient.test.js +7 -0
  366. package/dist/src/core/localLiteRtLmClient.test.js.map +1 -1
  367. package/dist/src/core/loggingContentGenerator.js +19 -6
  368. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  369. package/dist/src/core/loggingContentGenerator.test.js +55 -0
  370. package/dist/src/core/loggingContentGenerator.test.js.map +1 -1
  371. package/dist/src/core/prompts-substitution.test.js +1 -0
  372. package/dist/src/core/prompts-substitution.test.js.map +1 -1
  373. package/dist/src/core/prompts.d.ts +1 -1
  374. package/dist/src/core/prompts.js +2 -2
  375. package/dist/src/core/prompts.js.map +1 -1
  376. package/dist/src/core/prompts.test.js +39 -8
  377. package/dist/src/core/prompts.test.js.map +1 -1
  378. package/dist/src/generated/git-commit.d.ts +2 -2
  379. package/dist/src/generated/git-commit.js +2 -2
  380. package/dist/src/hooks/hookRunner.js +8 -0
  381. package/dist/src/hooks/hookRunner.js.map +1 -1
  382. package/dist/src/hooks/hookRunner.test.js +23 -0
  383. package/dist/src/hooks/hookRunner.test.js.map +1 -1
  384. package/dist/src/ide/ide-client.js +3 -4
  385. package/dist/src/ide/ide-client.js.map +1 -1
  386. package/dist/src/index.d.ts +7 -3
  387. package/dist/src/index.js +7 -2
  388. package/dist/src/index.js.map +1 -1
  389. package/dist/src/mcp/mcpLauncher.js +1 -1
  390. package/dist/src/mcp/mcpLauncher.js.map +1 -1
  391. package/dist/src/mcp/oauth-provider.test.js +24 -17
  392. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  393. package/dist/src/policy/config.d.ts +2 -0
  394. package/dist/src/policy/config.js +67 -12
  395. package/dist/src/policy/config.js.map +1 -1
  396. package/dist/src/policy/core-tools-mapping.test.d.ts +6 -0
  397. package/dist/src/policy/core-tools-mapping.test.js +44 -0
  398. package/dist/src/policy/core-tools-mapping.test.js.map +1 -0
  399. package/dist/src/policy/policies/agents.toml +10 -0
  400. package/dist/src/policy/policies/plan.toml +17 -43
  401. package/dist/src/policy/policies/read-only.toml +24 -38
  402. package/dist/src/policy/policy-engine.d.ts +1 -1
  403. package/dist/src/policy/policy-engine.js +72 -67
  404. package/dist/src/policy/policy-engine.js.map +1 -1
  405. package/dist/src/policy/policy-engine.test.js +71 -4
  406. package/dist/src/policy/policy-engine.test.js.map +1 -1
  407. package/dist/src/policy/sandboxPolicyManager.js +4 -4
  408. package/dist/src/policy/sandboxPolicyManager.js.map +1 -1
  409. package/dist/src/policy/shell-safety-regression.test.d.ts +6 -0
  410. package/dist/src/policy/shell-safety-regression.test.js +86 -0
  411. package/dist/src/policy/shell-safety-regression.test.js.map +1 -0
  412. package/dist/src/policy/shell-safety.test.js +24 -0
  413. package/dist/src/policy/shell-safety.test.js.map +1 -1
  414. package/dist/src/policy/shell-substitution.test.d.ts +6 -0
  415. package/dist/src/policy/shell-substitution.test.js +75 -0
  416. package/dist/src/policy/shell-substitution.test.js.map +1 -0
  417. package/dist/src/policy/toml-loader.test.js +25 -11
  418. package/dist/src/policy/toml-loader.test.js.map +1 -1
  419. package/dist/src/policy/types.d.ts +6 -2
  420. package/dist/src/policy/types.js +4 -2
  421. package/dist/src/policy/types.js.map +1 -1
  422. package/dist/src/prompts/promptProvider.d.ts +1 -1
  423. package/dist/src/prompts/promptProvider.js +41 -24
  424. package/dist/src/prompts/promptProvider.js.map +1 -1
  425. package/dist/src/prompts/promptProvider.test.js +36 -2
  426. package/dist/src/prompts/promptProvider.test.js.map +1 -1
  427. package/dist/src/prompts/snippets-memory-v2.test.d.ts +6 -0
  428. package/dist/src/prompts/snippets-memory-v2.test.js +94 -0
  429. package/dist/src/prompts/snippets-memory-v2.test.js.map +1 -0
  430. package/dist/src/prompts/snippets.d.ts +19 -1
  431. package/dist/src/prompts/snippets.js +33 -6
  432. package/dist/src/prompts/snippets.js.map +1 -1
  433. package/dist/src/prompts/snippets.legacy.d.ts +6 -1
  434. package/dist/src/prompts/snippets.legacy.js +14 -7
  435. package/dist/src/prompts/snippets.legacy.js.map +1 -1
  436. package/dist/src/prompts/utils.test.js +1 -0
  437. package/dist/src/prompts/utils.test.js.map +1 -1
  438. package/dist/src/routing/modelRouterService.js +1 -1
  439. package/dist/src/routing/modelRouterService.js.map +1 -1
  440. package/dist/src/sandbox/linux/LinuxSandboxManager.d.ts +2 -0
  441. package/dist/src/sandbox/linux/LinuxSandboxManager.js +43 -19
  442. package/dist/src/sandbox/linux/LinuxSandboxManager.js.map +1 -1
  443. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js +16 -0
  444. package/dist/src/sandbox/linux/LinuxSandboxManager.test.js.map +1 -1
  445. package/dist/src/sandbox/linux/bwrapArgsBuilder.d.ts +3 -7
  446. package/dist/src/sandbox/linux/bwrapArgsBuilder.js +96 -105
  447. package/dist/src/sandbox/linux/bwrapArgsBuilder.js.map +1 -1
  448. package/dist/src/sandbox/linux/bwrapArgsBuilder.test.js +144 -41
  449. package/dist/src/sandbox/linux/bwrapArgsBuilder.test.js.map +1 -1
  450. package/dist/src/sandbox/macos/MacOsSandboxManager.js +19 -10
  451. package/dist/src/sandbox/macos/MacOsSandboxManager.js.map +1 -1
  452. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js +24 -37
  453. package/dist/src/sandbox/macos/MacOsSandboxManager.test.js.map +1 -1
  454. package/dist/src/sandbox/macos/seatbeltArgsBuilder.d.ts +3 -9
  455. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js +129 -96
  456. package/dist/src/sandbox/macos/seatbeltArgsBuilder.js.map +1 -1
  457. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js +78 -77
  458. package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js.map +1 -1
  459. package/dist/src/sandbox/utils/fsUtils.d.ts +2 -3
  460. package/dist/src/sandbox/utils/fsUtils.js +12 -27
  461. package/dist/src/sandbox/utils/fsUtils.js.map +1 -1
  462. package/dist/src/sandbox/utils/fsUtils.test.js +87 -29
  463. package/dist/src/sandbox/utils/fsUtils.test.js.map +1 -1
  464. package/dist/src/sandbox/windows/GeminiSandbox.cs +186 -77
  465. package/dist/src/sandbox/windows/WindowsSandboxManager.d.ts +4 -16
  466. package/dist/src/sandbox/windows/WindowsSandboxManager.js +138 -204
  467. package/dist/src/sandbox/windows/WindowsSandboxManager.js.map +1 -1
  468. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js +105 -122
  469. package/dist/src/sandbox/windows/WindowsSandboxManager.test.js.map +1 -1
  470. package/dist/src/scheduler/policy.js +1 -2
  471. package/dist/src/scheduler/policy.js.map +1 -1
  472. package/dist/src/scheduler/policy.test.js +58 -2
  473. package/dist/src/scheduler/policy.test.js.map +1 -1
  474. package/dist/src/scheduler/scheduler.d.ts +2 -1
  475. package/dist/src/scheduler/scheduler.js +13 -14
  476. package/dist/src/scheduler/scheduler.js.map +1 -1
  477. package/dist/src/scheduler/scheduler.test.js +66 -0
  478. package/dist/src/scheduler/scheduler.test.js.map +1 -1
  479. package/dist/src/scheduler/scheduler_hooks.test.js +1 -0
  480. package/dist/src/scheduler/scheduler_hooks.test.js.map +1 -1
  481. package/dist/src/scheduler/scheduler_parallel.test.js +2 -0
  482. package/dist/src/scheduler/scheduler_parallel.test.js.map +1 -1
  483. package/dist/src/scheduler/tool-executor.js +2 -0
  484. package/dist/src/scheduler/tool-executor.js.map +1 -1
  485. package/dist/src/services/chatRecordingService.d.ts +12 -153
  486. package/dist/src/services/chatRecordingService.js +444 -350
  487. package/dist/src/services/chatRecordingService.js.map +1 -1
  488. package/dist/src/services/chatRecordingService.test.js +174 -128
  489. package/dist/src/services/chatRecordingService.test.js.map +1 -1
  490. package/dist/src/services/chatRecordingTypes.d.ts +111 -0
  491. package/dist/src/services/chatRecordingTypes.js +10 -0
  492. package/dist/src/services/chatRecordingTypes.js.map +1 -0
  493. package/dist/src/services/gitService.d.ts +2 -0
  494. package/dist/src/services/gitService.js +10 -1
  495. package/dist/src/services/gitService.js.map +1 -1
  496. package/dist/src/services/gitService.test.js +6 -2
  497. package/dist/src/services/gitService.test.js.map +1 -1
  498. package/dist/src/services/keychainService.d.ts +2 -2
  499. package/dist/src/services/keychainService.js +9 -9
  500. package/dist/src/services/keychainService.js.map +1 -1
  501. package/dist/src/services/keychainService.test.js +7 -7
  502. package/dist/src/services/keychainService.test.js.map +1 -1
  503. package/dist/src/services/keychainTypes.d.ts +1 -1
  504. package/dist/src/services/memoryPatchUtils.d.ts +42 -0
  505. package/dist/src/services/memoryPatchUtils.js +216 -0
  506. package/dist/src/services/memoryPatchUtils.js.map +1 -0
  507. package/dist/src/services/memoryService.d.ts +21 -1
  508. package/dist/src/services/memoryService.js +405 -64
  509. package/dist/src/services/memoryService.js.map +1 -1
  510. package/dist/src/services/memoryService.test.js +686 -2
  511. package/dist/src/services/memoryService.test.js.map +1 -1
  512. package/dist/src/services/sandboxManager.d.ts +33 -19
  513. package/dist/src/services/sandboxManager.integration.test.js +728 -266
  514. package/dist/src/services/sandboxManager.integration.test.js.map +1 -1
  515. package/dist/src/services/sandboxManager.js +65 -62
  516. package/dist/src/services/sandboxManager.js.map +1 -1
  517. package/dist/src/services/sandboxManager.test.js +17 -114
  518. package/dist/src/services/sandboxManager.test.js.map +1 -1
  519. package/dist/src/services/sandboxedFileSystemService.js +72 -62
  520. package/dist/src/services/sandboxedFileSystemService.js.map +1 -1
  521. package/dist/src/services/sessionSummaryUtils.d.ts +1 -1
  522. package/dist/src/services/sessionSummaryUtils.js +111 -38
  523. package/dist/src/services/sessionSummaryUtils.js.map +1 -1
  524. package/dist/src/services/sessionSummaryUtils.test.js +204 -51
  525. package/dist/src/services/sessionSummaryUtils.test.js.map +1 -1
  526. package/dist/src/services/shellExecutionService.d.ts +19 -0
  527. package/dist/src/services/shellExecutionService.js +88 -34
  528. package/dist/src/services/shellExecutionService.js.map +1 -1
  529. package/dist/src/services/shellExecutionService.test.js +38 -4
  530. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  531. package/dist/src/telemetry/activity-monitor.js +1 -0
  532. package/dist/src/telemetry/activity-monitor.js.map +1 -1
  533. package/dist/src/telemetry/config.js +3 -0
  534. package/dist/src/telemetry/config.js.map +1 -1
  535. package/dist/src/telemetry/conseca-logger.js +18 -20
  536. package/dist/src/telemetry/conseca-logger.js.map +1 -1
  537. package/dist/src/telemetry/conseca-logger.test.js +100 -0
  538. package/dist/src/telemetry/conseca-logger.test.js.map +1 -1
  539. package/dist/src/telemetry/event-loop-monitor.d.ts +17 -0
  540. package/dist/src/telemetry/event-loop-monitor.js +76 -0
  541. package/dist/src/telemetry/event-loop-monitor.js.map +1 -0
  542. package/dist/src/telemetry/index.d.ts +2 -1
  543. package/dist/src/telemetry/index.js +2 -1
  544. package/dist/src/telemetry/index.js.map +1 -1
  545. package/dist/src/telemetry/llmRole.d.ts +2 -1
  546. package/dist/src/telemetry/llmRole.js +1 -0
  547. package/dist/src/telemetry/llmRole.js.map +1 -1
  548. package/dist/src/telemetry/loggers.test.js +184 -8
  549. package/dist/src/telemetry/loggers.test.js.map +1 -1
  550. package/dist/src/telemetry/memory-monitor.d.ts +1 -0
  551. package/dist/src/telemetry/memory-monitor.js +8 -1
  552. package/dist/src/telemetry/memory-monitor.js.map +1 -1
  553. package/dist/src/telemetry/memory-monitor.test.js +6 -1
  554. package/dist/src/telemetry/memory-monitor.test.js.map +1 -1
  555. package/dist/src/telemetry/metrics.d.ts +12 -0
  556. package/dist/src/telemetry/metrics.js +19 -0
  557. package/dist/src/telemetry/metrics.js.map +1 -1
  558. package/dist/src/telemetry/sdk.js +20 -1
  559. package/dist/src/telemetry/sdk.js.map +1 -1
  560. package/dist/src/telemetry/trace.d.ts +23 -6
  561. package/dist/src/telemetry/trace.js +71 -22
  562. package/dist/src/telemetry/trace.js.map +1 -1
  563. package/dist/src/telemetry/trace.test.js +79 -15
  564. package/dist/src/telemetry/trace.test.js.map +1 -1
  565. package/dist/src/telemetry/types.js +61 -15
  566. package/dist/src/telemetry/types.js.map +1 -1
  567. package/dist/src/test-utils/mock-tool.d.ts +3 -2
  568. package/dist/src/test-utils/mock-tool.js +4 -3
  569. package/dist/src/test-utils/mock-tool.js.map +1 -1
  570. package/dist/src/tools/activate-skill.js +1 -1
  571. package/dist/src/tools/activate-skill.js.map +1 -1
  572. package/dist/src/tools/activate-skill.test.js +6 -2
  573. package/dist/src/tools/activate-skill.test.js.map +1 -1
  574. package/dist/src/tools/ask-user.d.ts +2 -2
  575. package/dist/src/tools/ask-user.js +1 -1
  576. package/dist/src/tools/ask-user.js.map +1 -1
  577. package/dist/src/tools/ask-user.test.js +9 -3
  578. package/dist/src/tools/ask-user.test.js.map +1 -1
  579. package/dist/src/tools/complete-task.d.ts +2 -2
  580. package/dist/src/tools/complete-task.js +1 -1
  581. package/dist/src/tools/complete-task.js.map +1 -1
  582. package/dist/src/tools/complete-task.test.js +9 -3
  583. package/dist/src/tools/complete-task.test.js.map +1 -1
  584. package/dist/src/tools/definitions/base-declarations.d.ts +2 -0
  585. package/dist/src/tools/definitions/base-declarations.js +3 -0
  586. package/dist/src/tools/definitions/base-declarations.js.map +1 -1
  587. package/dist/src/tools/definitions/coreTools.d.ts +3 -1
  588. package/dist/src/tools/definitions/coreTools.js +13 -1
  589. package/dist/src/tools/definitions/coreTools.js.map +1 -1
  590. package/dist/src/tools/definitions/model-family-sets/default-legacy.js +29 -1
  591. package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
  592. package/dist/src/tools/definitions/model-family-sets/gemini-3.js +29 -1
  593. package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
  594. package/dist/src/tools/definitions/types.d.ts +2 -0
  595. package/dist/src/tools/edit.js +20 -4
  596. package/dist/src/tools/edit.js.map +1 -1
  597. package/dist/src/tools/edit.test.js +41 -18
  598. package/dist/src/tools/edit.test.js.map +1 -1
  599. package/dist/src/tools/enter-plan-mode.d.ts +2 -2
  600. package/dist/src/tools/enter-plan-mode.js +1 -1
  601. package/dist/src/tools/enter-plan-mode.js.map +1 -1
  602. package/dist/src/tools/enter-plan-mode.test.js +10 -4
  603. package/dist/src/tools/enter-plan-mode.test.js.map +1 -1
  604. package/dist/src/tools/exit-plan-mode.d.ts +2 -2
  605. package/dist/src/tools/exit-plan-mode.js +9 -12
  606. package/dist/src/tools/exit-plan-mode.js.map +1 -1
  607. package/dist/src/tools/exit-plan-mode.test.js +44 -17
  608. package/dist/src/tools/exit-plan-mode.test.js.map +1 -1
  609. package/dist/src/tools/get-internal-docs.js +6 -3
  610. package/dist/src/tools/get-internal-docs.js.map +1 -1
  611. package/dist/src/tools/get-internal-docs.test.js +4 -4
  612. package/dist/src/tools/get-internal-docs.test.js.map +1 -1
  613. package/dist/src/tools/glob.js +1 -1
  614. package/dist/src/tools/glob.js.map +1 -1
  615. package/dist/src/tools/glob.test.js +16 -16
  616. package/dist/src/tools/glob.test.js.map +1 -1
  617. package/dist/src/tools/grep.js +21 -12
  618. package/dist/src/tools/grep.js.map +1 -1
  619. package/dist/src/tools/grep.test.js +18 -18
  620. package/dist/src/tools/grep.test.js.map +1 -1
  621. package/dist/src/tools/line-endings.test.js +3 -3
  622. package/dist/src/tools/line-endings.test.js.map +1 -1
  623. package/dist/src/tools/list-mcp-resources.d.ts +24 -0
  624. package/dist/src/tools/list-mcp-resources.js +74 -0
  625. package/dist/src/tools/list-mcp-resources.js.map +1 -0
  626. package/dist/src/tools/list-mcp-resources.test.d.ts +6 -0
  627. package/dist/src/tools/list-mcp-resources.test.js +79 -0
  628. package/dist/src/tools/list-mcp-resources.test.js.map +1 -0
  629. package/dist/src/tools/ls.js +2 -2
  630. package/dist/src/tools/ls.js.map +1 -1
  631. package/dist/src/tools/ls.test.js +21 -21
  632. package/dist/src/tools/ls.test.js.map +1 -1
  633. package/dist/src/tools/mcp-client-manager.d.ts +3 -1
  634. package/dist/src/tools/mcp-client-manager.js +24 -1
  635. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  636. package/dist/src/tools/mcp-client-manager.test.js +43 -0
  637. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  638. package/dist/src/tools/mcp-client.js +10 -12
  639. package/dist/src/tools/mcp-client.js.map +1 -1
  640. package/dist/src/tools/mcp-client.test.js +14 -2
  641. package/dist/src/tools/mcp-client.test.js.map +1 -1
  642. package/dist/src/tools/mcp-tool.d.ts +2 -2
  643. package/dist/src/tools/mcp-tool.js +1 -1
  644. package/dist/src/tools/mcp-tool.js.map +1 -1
  645. package/dist/src/tools/mcp-tool.test.js +51 -21
  646. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  647. package/dist/src/tools/memoryTool.d.ts +4 -3
  648. package/dist/src/tools/memoryTool.js +43 -14
  649. package/dist/src/tools/memoryTool.js.map +1 -1
  650. package/dist/src/tools/memoryTool.test.js +29 -9
  651. package/dist/src/tools/memoryTool.test.js.map +1 -1
  652. package/dist/src/tools/read-file.js +1 -1
  653. package/dist/src/tools/read-file.js.map +1 -1
  654. package/dist/src/tools/read-file.test.js +17 -17
  655. package/dist/src/tools/read-file.test.js.map +1 -1
  656. package/dist/src/tools/read-many-files.js +4 -4
  657. package/dist/src/tools/read-many-files.js.map +1 -1
  658. package/dist/src/tools/read-many-files.test.js +70 -24
  659. package/dist/src/tools/read-many-files.test.js.map +1 -1
  660. package/dist/src/tools/read-mcp-resource.d.ts +25 -0
  661. package/dist/src/tools/read-mcp-resource.js +120 -0
  662. package/dist/src/tools/read-mcp-resource.js.map +1 -0
  663. package/dist/src/tools/read-mcp-resource.test.d.ts +6 -0
  664. package/dist/src/tools/read-mcp-resource.test.js +110 -0
  665. package/dist/src/tools/read-mcp-resource.test.js.map +1 -0
  666. package/dist/src/tools/ripGrep.d.ts +3 -2
  667. package/dist/src/tools/ripGrep.js +26 -55
  668. package/dist/src/tools/ripGrep.js.map +1 -1
  669. package/dist/src/tools/ripGrep.test.js +113 -167
  670. package/dist/src/tools/ripGrep.test.js.map +1 -1
  671. package/dist/src/tools/shell.d.ts +2 -2
  672. package/dist/src/tools/shell.js +51 -21
  673. package/dist/src/tools/shell.js.map +1 -1
  674. package/dist/src/tools/shell.test.js +479 -76
  675. package/dist/src/tools/shell.test.js.map +1 -1
  676. package/dist/src/tools/shellBackgroundTools.d.ts +3 -3
  677. package/dist/src/tools/shellBackgroundTools.integration.test.js +6 -2
  678. package/dist/src/tools/shellBackgroundTools.integration.test.js.map +1 -1
  679. package/dist/src/tools/shellBackgroundTools.js +2 -2
  680. package/dist/src/tools/shellBackgroundTools.js.map +1 -1
  681. package/dist/src/tools/shellBackgroundTools.test.js +30 -10
  682. package/dist/src/tools/shellBackgroundTools.test.js.map +1 -1
  683. package/dist/src/tools/tool-error.d.ts +1 -0
  684. package/dist/src/tools/tool-error.js +1 -0
  685. package/dist/src/tools/tool-error.js.map +1 -1
  686. package/dist/src/tools/tool-names.d.ts +5 -4
  687. package/dist/src/tools/tool-names.js +8 -2
  688. package/dist/src/tools/tool-names.js.map +1 -1
  689. package/dist/src/tools/tool-registry.js +137 -114
  690. package/dist/src/tools/tool-registry.js.map +1 -1
  691. package/dist/src/tools/tool-registry.test.js +3 -1
  692. package/dist/src/tools/tool-registry.test.js.map +1 -1
  693. package/dist/src/tools/tools.d.ts +6 -6
  694. package/dist/src/tools/tools.js +6 -2
  695. package/dist/src/tools/tools.js.map +1 -1
  696. package/dist/src/tools/topicTool.d.ts +2 -2
  697. package/dist/src/tools/topicTool.js +1 -1
  698. package/dist/src/tools/topicTool.js.map +1 -1
  699. package/dist/src/tools/topicTool.test.js +6 -2
  700. package/dist/src/tools/topicTool.test.js.map +1 -1
  701. package/dist/src/tools/trackerTools.d.ts +7 -7
  702. package/dist/src/tools/trackerTools.js +6 -6
  703. package/dist/src/tools/trackerTools.js.map +1 -1
  704. package/dist/src/tools/web-fetch.js +1 -1
  705. package/dist/src/tools/web-fetch.js.map +1 -1
  706. package/dist/src/tools/web-fetch.test.js +59 -23
  707. package/dist/src/tools/web-fetch.test.js.map +1 -1
  708. package/dist/src/tools/web-search.js +1 -1
  709. package/dist/src/tools/web-search.js.map +1 -1
  710. package/dist/src/tools/web-search.test.js +5 -5
  711. package/dist/src/tools/web-search.test.js.map +1 -1
  712. package/dist/src/tools/write-file.js +22 -4
  713. package/dist/src/tools/write-file.js.map +1 -1
  714. package/dist/src/tools/write-file.test.js +29 -11
  715. package/dist/src/tools/write-file.test.js.map +1 -1
  716. package/dist/src/tools/write-todos.js +1 -1
  717. package/dist/src/tools/write-todos.js.map +1 -1
  718. package/dist/src/utils/compatibility.js +6 -1
  719. package/dist/src/utils/compatibility.js.map +1 -1
  720. package/dist/src/utils/compatibility.test.js +23 -0
  721. package/dist/src/utils/compatibility.test.js.map +1 -1
  722. package/dist/src/utils/errors.d.ts +3 -0
  723. package/dist/src/utils/errors.js +6 -0
  724. package/dist/src/utils/errors.js.map +1 -1
  725. package/dist/src/utils/fileUtils.d.ts +1 -2
  726. package/dist/src/utils/fileUtils.js +80 -40
  727. package/dist/src/utils/fileUtils.js.map +1 -1
  728. package/dist/src/utils/fileUtils.test.js +61 -0
  729. package/dist/src/utils/fileUtils.test.js.map +1 -1
  730. package/dist/src/utils/filesearch/fileSearch.d.ts +2 -0
  731. package/dist/src/utils/filesearch/fileSearch.js +97 -6
  732. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  733. package/dist/src/utils/filesearch/fileSearch.test.js +54 -0
  734. package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
  735. package/dist/src/utils/filesearch/fileWatcher.d.ts +25 -0
  736. package/dist/src/utils/filesearch/fileWatcher.js +86 -0
  737. package/dist/src/utils/filesearch/fileWatcher.js.map +1 -0
  738. package/dist/src/utils/filesearch/fileWatcher.test.js +142 -0
  739. package/dist/src/utils/filesearch/fileWatcher.test.js.map +1 -0
  740. package/dist/src/utils/getFolderStructure.js +4 -2
  741. package/dist/src/utils/getFolderStructure.js.map +1 -1
  742. package/dist/src/utils/gitIgnoreParser.js +1 -1
  743. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  744. package/dist/src/utils/googleQuotaErrors.d.ts +2 -1
  745. package/dist/src/utils/googleQuotaErrors.js +30 -35
  746. package/dist/src/utils/googleQuotaErrors.js.map +1 -1
  747. package/dist/src/utils/googleQuotaErrors.test.js +24 -0
  748. package/dist/src/utils/googleQuotaErrors.test.js.map +1 -1
  749. package/dist/src/utils/ignoreFileParser.js +1 -1
  750. package/dist/src/utils/ignoreFileParser.js.map +1 -1
  751. package/dist/src/utils/memoryDiscovery.js +15 -5
  752. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  753. package/dist/src/utils/oauth-flow.js +17 -5
  754. package/dist/src/utils/oauth-flow.js.map +1 -1
  755. package/dist/src/utils/oauth-flow.test.js +20 -0
  756. package/dist/src/utils/oauth-flow.test.js.map +1 -1
  757. package/dist/src/utils/paths.d.ts +9 -0
  758. package/dist/src/utils/paths.js +37 -0
  759. package/dist/src/utils/paths.js.map +1 -1
  760. package/dist/src/utils/paths.test.js +45 -1
  761. package/dist/src/utils/paths.test.js.map +1 -1
  762. package/dist/src/utils/planUtils.d.ts +11 -2
  763. package/dist/src/utils/planUtils.js +43 -11
  764. package/dist/src/utils/planUtils.js.map +1 -1
  765. package/dist/src/utils/planUtils.test.js +10 -9
  766. package/dist/src/utils/planUtils.test.js.map +1 -1
  767. package/dist/src/utils/process-utils.d.ts +2 -1
  768. package/dist/src/utils/process-utils.js +64 -33
  769. package/dist/src/utils/process-utils.js.map +1 -1
  770. package/dist/src/utils/process-utils.test.js +9 -0
  771. package/dist/src/utils/process-utils.test.js.map +1 -1
  772. package/dist/src/utils/retry.js +18 -6
  773. package/dist/src/utils/retry.js.map +1 -1
  774. package/dist/src/utils/retry.test.js +30 -0
  775. package/dist/src/utils/retry.test.js.map +1 -1
  776. package/dist/src/utils/sessionOperations.js +3 -2
  777. package/dist/src/utils/sessionOperations.js.map +1 -1
  778. package/dist/src/utils/shell-utils.d.ts +2 -0
  779. package/dist/src/utils/shell-utils.js +237 -107
  780. package/dist/src/utils/shell-utils.js.map +1 -1
  781. package/dist/src/utils/tool-utils.d.ts +1 -29
  782. package/dist/src/utils/tool-utils.js +0 -39
  783. package/dist/src/utils/tool-utils.js.map +1 -1
  784. package/dist/src/utils/tool-utils.test.js +2 -76
  785. package/dist/src/utils/tool-utils.test.js.map +1 -1
  786. package/dist/src/utils/tool-visibility.d.ts +40 -0
  787. package/dist/src/utils/tool-visibility.js +111 -0
  788. package/dist/src/utils/tool-visibility.js.map +1 -0
  789. package/dist/src/utils/tool-visibility.test.d.ts +6 -0
  790. package/dist/src/utils/tool-visibility.test.js +96 -0
  791. package/dist/src/utils/tool-visibility.test.js.map +1 -0
  792. package/dist/src/utils/trust.d.ts +64 -0
  793. package/dist/src/utils/trust.js +276 -0
  794. package/dist/src/utils/trust.js.map +1 -0
  795. package/dist/src/utils/trust.test.d.ts +6 -0
  796. package/dist/src/utils/trust.test.js +159 -0
  797. package/dist/src/utils/trust.test.js.map +1 -0
  798. package/dist/tsconfig.tsbuildinfo +1 -1
  799. package/package.json +5 -4
  800. package/dist/docs/get-started/installation.md +0 -181
  801. package/dist/src/agents/memory-manager-agent.d.ts +0 -25
  802. package/dist/src/agents/memory-manager-agent.js +0 -138
  803. package/dist/src/agents/memory-manager-agent.js.map +0 -1
  804. package/dist/src/agents/memory-manager-agent.test.js +0 -123
  805. package/dist/src/agents/memory-manager-agent.test.js.map +0 -1
  806. package/dist/src/agents/subagent-tool-wrapper.d.ts +0 -38
  807. package/dist/src/agents/subagent-tool-wrapper.js +0 -58
  808. package/dist/src/agents/subagent-tool-wrapper.js.map +0 -1
  809. package/dist/src/agents/subagent-tool-wrapper.test.js +0 -123
  810. package/dist/src/agents/subagent-tool-wrapper.test.js.map +0 -1
  811. package/dist/src/agents/subagent-tool.d.ts +0 -18
  812. package/dist/src/agents/subagent-tool.js +0 -134
  813. package/dist/src/agents/subagent-tool.js.map +0 -1
  814. package/dist/src/agents/subagent-tool.test.js +0 -287
  815. package/dist/src/agents/subagent-tool.test.js.map +0 -1
  816. package/dist/src/policy/policies/tracker.toml +0 -34
  817. package/dist/src/prompts/snippets-memory-manager.test.js +0 -31
  818. package/dist/src/prompts/snippets-memory-manager.test.js.map +0 -1
  819. /package/dist/src/{agents/memory-manager-agent.test.d.ts → agent/tool-display-utils.test.d.ts} +0 -0
  820. /package/dist/src/agents/{subagent-tool.test.d.ts → agent-tool.test.d.ts} +0 -0
  821. /package/dist/src/{prompts/snippets-memory-manager.test.d.ts → agents/skill-extraction-agent.test.d.ts} +0 -0
  822. /package/dist/src/{agents/subagent-tool-wrapper.test.d.ts → utils/filesearch/fileWatcher.test.d.ts} +0 -0
@@ -44,8 +44,8 @@ and Cell CLI (the server).
44
44
 
45
45
  - **Communication:** The entire communication happens over standard input/output
46
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.
47
+ - **Client's role:** The client is responsible for sending requests (for
48
+ example, prompts) and handling responses and notifications from Cell CLI.
49
49
  - **Cell CLI's role:** In ACP mode, Cell CLI listens for incoming JSON-RPC
50
50
  requests, processes them, and sends back responses.
51
51
 
@@ -72,8 +72,8 @@ leverage the IDE's capabilities to perform tasks. The MCP client logic is in
72
72
 
73
73
  ## Capabilities and supported methods
74
74
 
75
- The ACP protocol exposes a number of methods for ACP clients (e.g. IDEs) to
76
- control Cell CLI.
75
+ The ACP protocol exposes a number of methods for ACP clients (for example IDEs)
76
+ to control Cell CLI.
77
77
 
78
78
  ### Core methods
79
79
 
@@ -87,8 +87,8 @@ control Cell CLI.
87
87
 
88
88
  ### Session control
89
89
 
90
- - `setSessionMode`: Allows changing the approval level for tool calls (e.g., to
91
- `auto-approve`).
90
+ - `setSessionMode`: Allows changing the approval level for tool calls (for
91
+ example, to `auto-approve`).
92
92
  - `unstable_setSessionModel`: Changes the model for the current session.
93
93
 
94
94
  ### File system proxy
@@ -0,0 +1,143 @@
1
+ # Auto Memory
2
+
3
+ Auto Memory is an experimental feature that mines your past Cell CLI sessions in
4
+ the background and turns recurring workflows into reusable
5
+ [Agent Skills](./skills.md). You review, accept, or discard each extracted skill
6
+ before it becomes available to future sessions.
7
+
8
+ <!-- prettier-ignore -->
9
+ > [!NOTE]
10
+ > This is an experimental feature currently under active development.
11
+
12
+ ## Overview
13
+
14
+ Every session you run with Cell CLI is recorded locally as a transcript. Auto
15
+ Memory scans those transcripts for procedural patterns that recur across
16
+ sessions, then drafts each pattern as a `SKILL.md` file in a project-local
17
+ inbox. You inspect the draft, decide whether it captures real expertise, and
18
+ promote it to your global or workspace skills directory if you want it.
19
+
20
+ You'll use Auto Memory when you want to:
21
+
22
+ - **Capture team workflows** that you find yourself walking the agent through
23
+ more than once.
24
+ - **Codify hard-won fixes** for project-specific landmines so future sessions
25
+ avoid them.
26
+ - **Bootstrap a skills library** without writing every `SKILL.md` by hand.
27
+
28
+ Auto Memory complements—but does not replace—the
29
+ [`save_memory` tool](../tools/memory.md), which captures single facts into
30
+ `GEMINI.md`. Auto Memory captures multi-step procedures into skills.
31
+
32
+ ## Prerequisites
33
+
34
+ - Cell CLI installed and authenticated.
35
+ - At least 10 user messages across recent, idle sessions in the project. Auto
36
+ Memory ignores active or trivial sessions.
37
+
38
+ ## How to enable Auto Memory
39
+
40
+ Auto Memory is off by default. Enable it in your settings file:
41
+
42
+ 1. Open your global settings file at `~/.cell-cli/settings.json`. If you only
43
+ want Auto Memory in one project, edit `.cell-cli/settings.json` in that
44
+ project instead.
45
+
46
+ 2. Add the experimental flag:
47
+
48
+ ```json
49
+ {
50
+ "experimental": {
51
+ "autoMemory": true
52
+ }
53
+ }
54
+ ```
55
+
56
+ 3. Restart Cell CLI. The flag requires a restart because the extraction service
57
+ starts during session boot.
58
+
59
+ ## How Auto Memory works
60
+
61
+ Auto Memory runs as a background task on session startup. It does not block the
62
+ UI, consume your interactive turns, or surface tool prompts.
63
+
64
+ 1. **Eligibility scan.** The service indexes recent sessions from
65
+ `~/.cell-cli/tmp/<project>/chats/`. Sessions are eligible only if they have
66
+ been idle for at least three hours and contain at least 10 user messages.
67
+ 2. **Lock acquisition.** A lock file in the project's memory directory
68
+ coordinates across multiple CLI instances so extraction runs at most once at
69
+ a time.
70
+ 3. **Sub-agent extraction.** A specialized sub-agent (named `confucius`)
71
+ reviews the session index, reads any sessions that look like they contain
72
+ repeated procedural workflows, and drafts new `SKILL.md` files. Its
73
+ instructions tell it to default to creating zero skills unless the evidence
74
+ is strong, so most runs produce no inbox items.
75
+ 4. **Patch validation.** If the sub-agent proposes edits to skills outside the
76
+ inbox (for example, an existing global skill), it writes a unified diff
77
+ `.patch` file. Auto Memory dry-runs each patch and discards any that do not
78
+ apply cleanly.
79
+ 5. **Notification.** When a run produces new skills or patches, Cell CLI
80
+ surfaces an inline message telling you how many items are waiting.
81
+
82
+ ## How to review extracted skills
83
+
84
+ Use the `/memory inbox` slash command to open the inbox dialog at any time:
85
+
86
+ **Command:** `/memory inbox`
87
+
88
+ The dialog lists each draft skill with its name, description, and source
89
+ sessions. From there you can:
90
+
91
+ - **Read** the full `SKILL.md` body before deciding.
92
+ - **Promote** a skill to your user (`~/.cell-cli/skills/`) or workspace
93
+ (`.cell-cli/skills/`) directory.
94
+ - **Discard** a skill you do not want.
95
+ - **Apply** or reject a `.patch` proposal against an existing skill.
96
+
97
+ Promoted skills become discoverable in the next session and follow the standard
98
+ [skill discovery precedence](./skills.md#skill-discovery-tiers).
99
+
100
+ ## How to disable Auto Memory
101
+
102
+ To turn off background extraction, set the flag back to `false` in your settings
103
+ file and restart Cell CLI:
104
+
105
+ ```json
106
+ {
107
+ "experimental": {
108
+ "autoMemory": false
109
+ }
110
+ }
111
+ ```
112
+
113
+ Disabling the flag stops the background service immediately on the next session
114
+ start. Existing inbox items remain on disk; you can either drain them with
115
+ `/memory inbox` first or remove the project memory directory manually.
116
+
117
+ ## Data and privacy
118
+
119
+ - Auto Memory only reads session files that already exist locally on your
120
+ machine. Nothing is uploaded to Gemini outside the normal API calls the
121
+ extraction sub-agent makes during its run.
122
+ - The sub-agent is instructed to redact secrets, tokens, and credentials it
123
+ encounters and to never copy large tool outputs verbatim.
124
+ - Drafted skills live in your project's memory directory until you promote or
125
+ discard them. They are not automatically loaded into any session.
126
+
127
+ ## Limitations
128
+
129
+ - The sub-agent runs on a preview Gemini Flash model. Extraction quality depends
130
+ on the model's ability to recognize durable patterns versus one-off incidents.
131
+ - Auto Memory does not extract skills from the current session. It only
132
+ considers sessions that have been idle for three hours or more.
133
+ - Inbox items are stored per project. Skills extracted in one workspace are not
134
+ visible from another until you promote them to the user-scope skills
135
+ directory.
136
+
137
+ ## Next steps
138
+
139
+ - Learn how skills are discovered and activated in [Agent Skills](./skills.md).
140
+ - Explore the [memory management tutorial](./tutorials/memory-management.md) for
141
+ the complementary `save_memory` and `GEMINI.md` workflows.
142
+ - Review the experimental settings catalog in
143
+ [Settings](./settings.md#experimental).
@@ -1,9 +1,9 @@
1
1
  # Checkpointing
2
2
 
3
- The Cell CLI includes a Checkpointing feature that automatically saves a
4
- snapshot of your project's state before any file modifications are made by
5
- AI-powered tools. This lets you safely experiment with and apply code changes,
6
- knowing you can instantly revert back to the state before the tool was run.
3
+ Cell CLI includes a Checkpointing feature that automatically saves a snapshot of
4
+ your project's state before any file modifications are made by AI-powered tools.
5
+ This lets you safely experiment with and apply code changes, knowing you can
6
+ instantly revert back to the state before the tool was run.
7
7
 
8
8
  ## How it works
9
9
 
@@ -72,7 +72,7 @@ To see a list of all saved checkpoints for the current project, simply run:
72
72
 
73
73
  The CLI will display a list of available checkpoint files. These file names are
74
74
  typically composed of a timestamp, the name of the file being modified, and the
75
- name of the tool that was about to be run (e.g.,
75
+ name of the tool that was about to be run (for example,
76
76
  `2025-06-22T10-00-00_000Z-my-file.txt-write_file`).
77
77
 
78
78
  ### Restore a specific checkpoint
@@ -29,16 +29,16 @@ parameters.
29
29
 
30
30
  These commands are available within the interactive REPL.
31
31
 
32
- | Command | Description |
33
- | -------------------- | ---------------------------------------- |
34
- | `/skills reload` | Reload discovered skills from disk |
35
- | `/agents reload` | Reload the agent registry |
36
- | `/commands reload` | Reload custom slash commands |
37
- | `/memory reload` | Reload context files (e.g., `GEMINI.md`) |
38
- | `/mcp reload` | Restart and reload MCP servers |
39
- | `/extensions reload` | Reload all active extensions |
40
- | `/help` | Show help for all commands |
41
- | `/quit` | Exit the interactive session |
32
+ | Command | Description |
33
+ | -------------------- | ----------------------------------------------- |
34
+ | `/skills reload` | Reload discovered skills from disk |
35
+ | `/agents reload` | Reload the agent registry |
36
+ | `/commands reload` | Reload custom slash commands |
37
+ | `/memory reload` | Reload context files (for example, `GEMINI.md`) |
38
+ | `/mcp reload` | Restart and reload MCP servers |
39
+ | `/extensions reload` | Reload all active extensions |
40
+ | `/help` | Show help for all commands |
41
+ | `/quit` | Exit the interactive session |
42
42
 
43
43
  ## CLI Options
44
44
 
@@ -52,6 +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
+ | `--skip-trust` | - | boolean | `false` | Trust the current workspace for this session, skipping the folder trust check. |
55
56
  | `--approval-mode` | - | string | `default` | Approval mode for tool execution. Choices: `default`, `auto_edit`, `yolo`, `plan` |
56
57
  | `--yolo` | `-y` | boolean | `false` | **Deprecated.** Auto-approve all actions. Use `--approval-mode=yolo` instead. |
57
58
  | `--experimental-acp` | - | boolean | - | Start in ACP (Agent Code Pilot) mode. **Experimental feature.** |
@@ -60,7 +61,7 @@ These commands are available within the interactive REPL.
60
61
  | `--allowed-tools` | - | array | - | **Deprecated.** Use the [Policy Engine](../reference/policy-engine.md) instead. Tools that are allowed to run without confirmation (comma-separated or multiple flags) |
61
62
  | `--extensions` | `-e` | array | - | List of extensions to use. If not provided, all extensions are enabled (comma-separated or multiple flags) |
62
63
  | `--list-extensions` | `-l` | boolean | - | List all available extensions and exit |
63
- | `--resume` | `-r` | string | - | Resume a previous session. Use `"latest"` for most recent or index number (e.g. `--resume 5`) |
64
+ | `--resume` | `-r` | string | - | Resume a previous session. Use `"latest"` for most recent or index number (for example `--resume 5`) |
64
65
  | `--list-sessions` | - | boolean | - | List available sessions for the current project and exit |
65
66
  | `--delete-session` | - | string | - | Delete a session by index number (use `--list-sessions` to see available sessions) |
66
67
  | `--include-directories` | - | array | - | Additional directories to include in the workspace (comma-separated or multiple flags) |
@@ -14,7 +14,7 @@ skill. To use it, ask Cell CLI to create a new skill for you.
14
14
 
15
15
  Cell CLI will then use the `skill-creator` to generate the skill:
16
16
 
17
- 1. Generate a new directory for your skill (e.g., `my-new-skill/`).
17
+ 1. Generate a new directory for your skill (for example, `my-new-skill/`).
18
18
  2. Create a `SKILL.md` file with the necessary YAML frontmatter (`name` and
19
19
  `description`).
20
20
  3. Create the standard resource directories: `scripts/`, `references/`, and
@@ -24,7 +24,7 @@ Cell CLI will then use the `skill-creator` to generate the skill:
24
24
 
25
25
  If you prefer to create skills manually:
26
26
 
27
- 1. **Create a directory** for your skill (e.g., `my-new-skill/`).
27
+ 1. **Create a directory** for your skill (for example, `my-new-skill/`).
28
28
  2. **Create a `SKILL.md` file** inside the new directory.
29
29
 
30
30
  To add additional resources that support the skill, refer to the skill
@@ -85,8 +85,8 @@ The model receives:
85
85
  **B. Using arguments in shell commands (inside `!{...}` blocks)**
86
86
 
87
87
  When you use `{{args}}` inside a shell injection block (`!{...}`), the arguments
88
- are automatically **shell-escaped** before replacement. This allows you to
89
- safely pass arguments to shell commands, ensuring the resulting command is
88
+ are automatically **shell-escaped** before replacement. This lets you safely
89
+ pass arguments to shell commands, ensuring the resulting command is
90
90
  syntactically correct and secure while preventing command injection
91
91
  vulnerabilities.
92
92
 
@@ -105,8 +105,8 @@ When you run `/grep-code It's complicated`:
105
105
 
106
106
  1. The CLI sees `{{args}}` used both outside and inside `!{...}`.
107
107
  2. Outside: The first `{{args}}` is replaced raw with `It's complicated`.
108
- 3. Inside: The second `{{args}}` is replaced with the escaped version (e.g., on
109
- Linux: `"It\'s complicated"`).
108
+ 3. Inside: The second `{{args}}` is replaced with the escaped version (for
109
+ example, on Linux: `"It\'s complicated"`).
110
110
  4. The command executed is `grep -r "It's complicated" .`.
111
111
  5. The CLI prompts you to confirm this exact, secure command before execution.
112
112
  6. The final prompt is sent.
@@ -116,13 +116,13 @@ When you run `/grep-code It's complicated`:
116
116
  If your `prompt` does **not** contain the special placeholder `{{args}}`, the
117
117
  CLI uses a default behavior for handling arguments.
118
118
 
119
- If you provide arguments to the command (e.g., `/mycommand arg1`), the CLI will
120
- append the full command you typed to the end of the prompt, separated by two
121
- newlines. This allows the model to see both the original instructions and the
122
- specific arguments you just provided.
119
+ If you provide arguments to the command (for example, `/mycommand arg1`), the
120
+ CLI will append the full command you typed to the end of the prompt, separated
121
+ by two newlines. This allows the model to see both the original instructions and
122
+ the specific arguments you just provided.
123
123
 
124
- If you do **not** provide any arguments (e.g., `/mycommand`), the prompt is sent
125
- to the model exactly as it is, with nothing appended.
124
+ If you do **not** provide any arguments (for example, `/mycommand`), the prompt
125
+ is sent to the model exactly as it is, with nothing appended.
126
126
 
127
127
  **Example (`changelog.toml`):**
128
128
 
@@ -188,7 +188,7 @@ ensure that only intended commands can be run.
188
188
  dialog will appear showing the exact command(s) to be executed.
189
189
  5. **Execution and error reporting:** The command is executed. If the command
190
190
  fails, the output injected into the prompt will include the error messages
191
- (stderr) followed by a status line, e.g.,
191
+ (stderr) followed by a status line, for example,
192
192
  `[Shell command exited with code 1]`. This helps the model understand the
193
193
  context of the failure.
194
194
 
@@ -229,9 +229,10 @@ operate on specific files.
229
229
 
230
230
  - **File injection**: `@{path/to/file.txt}` is replaced by the content of
231
231
  `file.txt`.
232
- - **Multimodal support**: If the path points to a supported image (e.g., PNG,
233
- JPEG), PDF, audio, or video file, it will be correctly encoded and injected as
234
- multimodal input. Other binary files are handled gracefully and skipped.
232
+ - **Multimodal support**: If the path points to a supported image (for example,
233
+ PNG, JPEG), PDF, audio, or video file, it will be correctly encoded and
234
+ injected as multimodal input. Other binary files are handled gracefully and
235
+ skipped.
235
236
  - **Directory listing**: `@{path/to/dir}` is traversed and each file present
236
237
  within the directory and all subdirectories is inserted into the prompt. This
237
238
  respects `.gitignore` and `.geminiignore` if enabled.
@@ -175,8 +175,8 @@ the enterprise settings are always loaded with the highest precedence.
175
175
  **Example wrapper script:**
176
176
 
177
177
  Administrators can create a script named `gemini` and place it in a directory
178
- that appears earlier in the user's `PATH` than the actual Cell CLI binary (e.g.,
179
- `/usr/local/bin/gemini`).
178
+ that appears earlier in the user's `PATH` than the actual Cell CLI binary (for
179
+ example, `/usr/local/bin/gemini`).
180
180
 
181
181
  ```bash
182
182
  #!/bin/bash
@@ -324,9 +324,9 @@ User. When it comes to the `mcpServers` object, these configurations are
324
324
  1. **Merging:** The lists of servers from all three levels are combined into a
325
325
  single list.
326
326
  2. **Precedence:** If a server with the **same name** is defined at multiple
327
- levels (e.g., a server named `corp-api` exists in both system and user
328
- settings), the definition from the highest-precedence level is used. The
329
- order of precedence is: **System > Workspace > User**.
327
+ levels (for example, a server named `corp-api` exists in both system and
328
+ user settings), the definition from the highest-precedence level is used.
329
+ The order of precedence is: **System > Workspace > User**.
330
330
 
331
331
  This means a user **cannot** override the definition of a server that is already
332
332
  defined in the system-level settings. However, they **can** add new servers with
@@ -342,8 +342,8 @@ canonical servers and adding their names to an allowlist.
342
342
  For even greater security, especially when dealing with third-party MCP servers,
343
343
  you can restrict which specific tools from a server are exposed to the model.
344
344
  This is done using the `includeTools` and `excludeTools` properties within a
345
- server's definition. This allows you to use a subset of tools from a server
346
- without allowing potentially dangerous ones.
345
+ server's definition. This lets you use a subset of tools from a server without
346
+ allowing potentially dangerous ones.
347
347
 
348
348
  Following the principle of least privilege, it is highly recommended to use
349
349
  `includeTools` to create an allowlist of only the necessary tools.
@@ -480,9 +480,8 @@ an environment variable, but it can also be enforced for custom tools via the
480
480
  ## Telemetry and auditing
481
481
 
482
482
  For auditing and monitoring purposes, you can configure Cell CLI to send
483
- telemetry data to a central location. This allows you to track tool usage and
484
- other events. For more information, see the
485
- [telemetry documentation](./telemetry.md).
483
+ telemetry data to a central location. This lets you track tool usage and other
484
+ events. For more information, see the [telemetry documentation](./telemetry.md).
486
485
 
487
486
  **Example:** Enable telemetry and send it to a local OTLP collector. If
488
487
  `otlpEndpoint` is not specified, it defaults to `http://localhost:4317`.
@@ -505,15 +504,19 @@ other events. For more information, see the
505
504
  ## Authentication
506
505
 
507
506
  You can enforce a specific authentication method for all users by setting the
508
- `enforcedAuthType` in the system-level `settings.json` file. This prevents users
509
- from choosing a different authentication method. See the
510
- [Authentication docs](../get-started/authentication.md) for more details.
507
+ `security.auth.enforcedType` in the system-level `settings.json` file. This
508
+ prevents users from choosing a different authentication method. See the
509
+ [Authentication docs](../get-started/authentication.mdx) for more details.
511
510
 
512
511
  **Example:** Enforce the use of Google login for all users.
513
512
 
514
513
  ```json
515
514
  {
516
- "enforcedAuthType": "oauth-personal"
515
+ "security": {
516
+ "auth": {
517
+ "enforcedType": "oauth-personal"
518
+ }
519
+ }
517
520
  }
518
521
  ```
519
522
 
@@ -1,9 +1,9 @@
1
1
  # Ignoring files
2
2
 
3
3
  This document provides an overview of the Gemini Ignore (`.geminiignore`)
4
- feature of the Cell CLI.
4
+ feature of Cell CLI.
5
5
 
6
- The Cell CLI includes the ability to automatically ignore files, similar to
6
+ Cell CLI includes the ability to automatically ignore files, similar to
7
7
  `.gitignore` (used by Git) and `.aiexclude` (used by Gemini Code Assist). Adding
8
8
  paths to your `.geminiignore` file will exclude them from tools that support
9
9
  this feature, although they will still be visible to other services (such as
@@ -1,26 +1,27 @@
1
1
  # Advanced Model Configuration
2
2
 
3
- This guide details the Model Configuration system within the Cell CLI. Designed
4
- for researchers, AI quality engineers, and advanced users, this system provides
5
- a rigorous framework for managing generative model hyperparameters and
6
- behaviors.
3
+ This guide details the Model Configuration system within Cell CLI. Designed for
4
+ researchers, AI quality engineers, and advanced users, this system provides a
5
+ rigorous framework for managing generative model hyperparameters and behaviors.
7
6
 
8
- > **Warning**: This is a power-user feature. Configuration values are passed
7
+ <!-- prettier-ignore -->
8
+ > [!WARNING]
9
+ > This is a power-user feature. Configuration values are passed
9
10
  > directly to the model provider with minimal validation. Incorrect settings
10
- > (e.g., incompatible parameter combinations) may result in runtime errors from
11
- > the API.
11
+ > (for example, incompatible parameter combinations) may result in runtime
12
+ > errors from the API.
12
13
 
13
14
  ## 1. System Overview
14
15
 
15
16
  The Model Configuration system (`ModelConfigService`) enables deterministic
16
- control over model generation. It decouples the requested model identifier
17
- (e.g., a CLI flag or agent request) from the underlying API configuration. This
18
- allows for:
17
+ control over model generation. It decouples the requested model identifier (for
18
+ example, a CLI flag or agent request) from the underlying API configuration.
19
+ This allows for:
19
20
 
20
21
  - **Precise Hyperparameter Tuning**: Direct control over `temperature`, `topP`,
21
22
  `thinkingBudget`, and other SDK-level parameters.
22
23
  - **Environment-Specific Behavior**: Distinct configurations for different
23
- operating contexts (e.g., testing vs. production).
24
+ operating contexts (for example, testing vs. production).
24
25
  - **Agent-Scoped Customization**: Applying specific settings only when a
25
26
  particular agent is active.
26
27
 
@@ -71,7 +72,7 @@ context. They are evaluated dynamically for each model request.
71
72
  specified `match` properties.
72
73
  - `model`: Matches the requested model name or alias.
73
74
  - `overrideScope`: Matches the distinct scope of the request (typically the
74
- agent name, e.g., `codebaseInvestigator`).
75
+ agent name, for example, `codebaseInvestigator`).
75
76
 
76
77
  **Example Override**:
77
78
 
@@ -113,8 +114,8 @@ and `overrideScope`).
113
114
  1. **Filtering**: All matching overrides are identified.
114
115
  2. **Sorting**: Matches are prioritized by **specificity** (the number of
115
116
  matched keys in the `match` object).
116
- - Specific matches (e.g., `model` + `overrideScope`) override broad matches
117
- (e.g., `model` only).
117
+ - Specific matches (for example, `model` + `overrideScope`) override broad
118
+ matches (for example, `model` only).
118
119
  - Tie-breaking: If specificity is equal, the order of definition in the
119
120
  `overrides` array is preserved (last one wins).
120
121
  3. **Merging**: The configurations from the sorted overrides are merged
@@ -128,10 +129,10 @@ The configuration follows the `ModelConfigServiceConfig` interface.
128
129
 
129
130
  Defines the actual parameters for the model.
130
131
 
131
- | Property | Type | Description |
132
- | :---------------------- | :------- | :----------------------------------------------------------------- |
133
- | `model` | `string` | The identifier of the model to be called (e.g., `gemini-2.5-pro`). |
134
- | `generateContentConfig` | `object` | The configuration object passed to the `@google/genai` SDK. |
132
+ | Property | Type | Description |
133
+ | :---------------------- | :------- | :------------------------------------------------------------------------ |
134
+ | `model` | `string` | The identifier of the model to be called (for example, `gemini-2.5-pro`). |
135
+ | `generateContentConfig` | `object` | The configuration object passed to the `@google/genai` SDK. |
135
136
 
136
137
  ### `GenerateContentConfig` (Common Parameters)
137
138
 
@@ -142,7 +143,7 @@ Directly maps to the SDK's `GenerateContentConfig`. Common parameters include:
142
143
  - **`topP`**: (`number`) Nucleus sampling probability.
143
144
  - **`maxOutputTokens`**: (`number`) Limit on generated response length.
144
145
  - **`thinkingConfig`**: (`object`) Configuration for models with reasoning
145
- capabilities (e.g., `thinkingBudget`, `includeThoughts`).
146
+ capabilities (for example, `thinkingBudget`, `includeThoughts`).
146
147
 
147
148
  ## 5. Practical Examples
148
149
 
@@ -170,7 +171,7 @@ configuration but enforcing zero temperature.
170
171
  ### Agent-Specific Parameter Injection
171
172
 
172
173
  Enforce extended thinking budgets for a specific agent without altering the
173
- global default, e.g. for the `codebaseInvestigator`.
174
+ global default, for example for the `codebaseInvestigator`.
174
175
 
175
176
  ```json
176
177
  "modelConfigs": {
@@ -10,8 +10,8 @@ Model routing is managed by the `ModelAvailabilityService`, which monitors model
10
10
  health and automatically routes requests to available models based on defined
11
11
  policies.
12
12
 
13
- 1. **Model failure:** If the currently selected model fails (e.g., due to quota
14
- or server errors), the CLI will initiate the fallback process.
13
+ 1. **Model failure:** If the currently selected model fails (for example, due
14
+ to quota or server errors), the CLI will initiate the fallback process.
15
15
 
16
16
  2. **User consent:** Depending on the failure and the model's policy, the CLI
17
17
  may prompt you to switch to a fallback model (by default always prompts
@@ -19,7 +19,7 @@ Model steering is an experimental feature and is disabled by default. You can
19
19
  enable it using the `/settings` command or by updating your `settings.json`
20
20
  file.
21
21
 
22
- 1. Type `/settings` in the Cell CLI.
22
+ 1. Type `/settings` in Cell CLI.
23
23
  2. Search for **Model Steering**.
24
24
  3. Set the value to **true**.
25
25
 
@@ -128,7 +128,9 @@ These are the only allowed tools:
128
128
  [`cli_help`](../core/subagents.md#cli-help-agent)
129
129
  - **Interaction:** [`ask_user`](../tools/ask-user.md)
130
130
  - **MCP tools (Read):** Read-only [MCP tools](../tools/mcp-server.md) (for
131
- example, `github_read_issue`, `postgres_read_schema`) are allowed.
131
+ example, `github_read_issue`, `postgres_read_schema`) and core
132
+ [MCP resource tools](../tools/mcp-resources.md) (`list_mcp_resources`,
133
+ `read_mcp_resource`) are allowed.
132
134
  - **Planning (Write):**
133
135
  [`write_file`](../tools/file-system.md#3-write_file-writefile) and
134
136
  [`replace`](../tools/file-system.md#6-replace-edit) only allowed for `.md`
@@ -312,8 +314,8 @@ Hooks such as `BeforeTool` or `AfterTool` can be configured to intercept the
312
314
  > [!WARNING] When hooks are triggered by **tool executions**, they do **not**
313
315
  > run when you manually toggle Plan Mode using the `/plan` command or the
314
316
  > `Shift+Tab` keyboard shortcut. If you need hooks to execute on mode changes,
315
- > ensure the transition is initiated by the agent (e.g., by asking "start a plan
316
- > for...").
317
+ > ensure the transition is initiated by the agent (for example, by asking "start
318
+ > a plan for...").
317
319
 
318
320
  #### Example: Archive approved plans to GCS (`AfterTool`)
319
321
 
@@ -325,8 +327,11 @@ Storage whenever Cell CLI exits Plan Mode to start the implementation.
325
327
 
326
328
  ```bash
327
329
  #!/usr/bin/env bash
328
- # Extract the plan path from the tool input JSON
329
- plan_path=$(jq -r '.tool_input.plan_path // empty')
330
+ # Extract the plan filename from the tool input JSON
331
+ plan_filename=$(jq -r '.tool_input.plan_filename // empty')
332
+
333
+ # Construct the absolute path using the GEMINI_PLANS_DIR environment variable
334
+ plan_path="$GEMINI_PLANS_DIR/$plan_filename"
330
335
 
331
336
  if [ -f "$plan_path" ]; then
332
337
  # Generate a unique filename using a timestamp
@@ -352,7 +357,7 @@ To register this `AfterTool` hook, add it to your `settings.json`:
352
357
  {
353
358
  "name": "archive-plan",
354
359
  "type": "command",
355
- "command": "./.cell-cli/hooks/archive-plan.sh"
360
+ "command": "~/.cell-cli/hooks/archive-plan.sh"
356
361
  }
357
362
  ]
358
363
  }
@@ -1,11 +1,11 @@
1
- # Sandboxing in the Cell CLI
1
+ # Sandboxing in Cell CLI
2
2
 
3
- This document provides a guide to sandboxing in the Cell CLI, including
3
+ This document provides a guide to sandboxing in Cell CLI, including
4
4
  prerequisites, quickstart, and configuration.
5
5
 
6
6
  ## Prerequisites
7
7
 
8
- Before using sandboxing, you need to install and set up the Cell CLI:
8
+ Before using sandboxing, you need to install and set up Cell CLI:
9
9
 
10
10
  ```bash
11
11
  npm install -g @google/gemini-cli
@@ -228,7 +228,7 @@ gemini -p "run the test suite"
228
228
  2. **Environment variable**:
229
229
  `GEMINI_SANDBOX=true|docker|podman|sandbox-exec|runsc|lxc`
230
230
  3. **Settings file**: `"sandbox": true` in the `tools` object of your
231
- `settings.json` file (e.g., `{"tools": {"sandbox": true}}`).
231
+ `settings.json` file (for example, `{"tools": {"sandbox": true}}`).
232
232
 
233
233
  ### macOS Seatbelt profiles
234
234
 
@@ -308,7 +308,9 @@ $env:SANDBOX_SET_UID_GID="false" # Disable UID/GID mapping
308
308
 
309
309
  **Missing commands**
310
310
 
311
- - Add to custom Dockerfile.
311
+ - Add to a custom Dockerfile. Automatic `BUILD_SANDBOX` builds are only
312
+ available when running Cell CLI from source; npm installs need a prebuilt
313
+ image instead.
312
314
  - Install via `sandbox.bashrc`.
313
315
 
314
316
  **Network issues**