@mmmbuto/gemini-cli-termux 0.30.3-termux → 0.30.5-termux

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 (400) hide show
  1. package/README.md +42 -193
  2. package/bundle/docs/cli/settings.md +8 -9
  3. package/bundle/docs/extensions/reference.md +14 -38
  4. package/bundle/docs/hooks/reference.md +0 -8
  5. package/bundle/docs/reference/configuration.md +0 -8
  6. package/bundle/gemini.js +10730 -11704
  7. package/bundle/node_modules/@google/gemini-cli-devtools/package.json +1 -1
  8. package/bundle/package.json +2 -1
  9. package/package.json +67 -5
  10. package/packages/cli/dist/index.js +0 -0
  11. package/packages/cli/dist/package.json +2 -2
  12. package/packages/cli/dist/src/commands/extensions/examples/custom-commands/gemini-extension.json +2 -2
  13. package/packages/cli/dist/src/commands/extensions/examples/exclude-tools/gemini-extension.json +3 -3
  14. package/packages/cli/dist/src/commands/extensions/examples/hooks/gemini-extension.json +2 -2
  15. package/packages/cli/dist/src/commands/extensions/examples/hooks/hooks/hooks.json +11 -11
  16. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.js +1 -1
  17. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/gemini-extension.json +8 -8
  18. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/package.json +9 -9
  19. package/packages/cli/dist/src/commands/extensions/examples/skills/gemini-extension.json +2 -2
  20. package/packages/cli/dist/src/commands/extensions/examples/themes-example/README.md +8 -5
  21. package/packages/cli/dist/src/commands/extensions/examples/themes-example/gemini-extension.json +27 -27
  22. package/packages/cli/dist/src/config/config.js +4 -65
  23. package/packages/cli/dist/src/config/config.js.map +1 -1
  24. package/packages/cli/dist/src/config/settingsSchema.d.ts +1 -235
  25. package/packages/cli/dist/src/config/settingsSchema.js +1 -235
  26. package/packages/cli/dist/src/config/settingsSchema.js.map +1 -1
  27. package/packages/cli/dist/src/gemini.js +0 -2
  28. package/packages/cli/dist/src/gemini.js.map +1 -1
  29. package/packages/cli/dist/src/generated/git-commit.d.ts +2 -2
  30. package/packages/cli/dist/src/generated/git-commit.js +2 -2
  31. package/packages/cli/dist/src/patches/empty-module.d.ts +2 -0
  32. package/packages/cli/dist/src/patches/empty-module.js +2 -0
  33. package/packages/cli/dist/src/patches/empty-module.js.map +1 -0
  34. package/packages/cli/dist/src/services/McpPromptLoader.js +3 -6
  35. package/packages/cli/dist/src/services/McpPromptLoader.js.map +1 -1
  36. package/packages/cli/dist/src/ui/components/AgentConfigDialog.js +19 -5
  37. package/packages/cli/dist/src/ui/components/AgentConfigDialog.js.map +1 -1
  38. package/packages/cli/dist/src/ui/components/AgentConfigDialog.test.js +41 -19
  39. package/packages/cli/dist/src/ui/components/AgentConfigDialog.test.js.map +1 -1
  40. package/packages/cli/dist/src/ui/components/DialogManager.d.ts +1 -1
  41. package/packages/cli/dist/src/ui/components/DialogManager.js +34 -7
  42. package/packages/cli/dist/src/ui/components/DialogManager.js.map +1 -1
  43. package/packages/cli/dist/src/ui/components/InputPrompt.d.ts +9 -0
  44. package/packages/cli/dist/src/ui/components/InputPrompt.js +350 -125
  45. package/packages/cli/dist/src/ui/components/InputPrompt.js.map +1 -1
  46. package/packages/cli/dist/src/ui/components/InputPrompt.test.js +788 -35
  47. package/packages/cli/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  48. package/packages/cli/dist/src/ui/components/messages/ShellToolMessage.js +2 -2
  49. package/packages/cli/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
  50. package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.js +4 -77
  51. package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  52. package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +0 -51
  53. package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
  54. package/packages/cli/dist/src/ui/components/messages/ToolMessage.js +2 -2
  55. package/packages/cli/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  56. package/packages/cli/dist/src/ui/components/messages/ToolShared.d.ts +0 -1
  57. package/packages/cli/dist/src/ui/components/messages/ToolShared.js +2 -2
  58. package/packages/cli/dist/src/ui/components/messages/ToolShared.js.map +1 -1
  59. package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.js +4 -1
  60. package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.js.map +1 -1
  61. package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.test.js +139 -40
  62. package/packages/cli/dist/src/ui/components/shared/BaseSettingsDialog.test.js.map +1 -1
  63. package/packages/cli/dist/src/ui/components/shared/TextInput.js +2 -1
  64. package/packages/cli/dist/src/ui/components/shared/TextInput.js.map +1 -1
  65. package/packages/cli/dist/src/ui/hooks/toolMapping.js +0 -1
  66. package/packages/cli/dist/src/ui/hooks/toolMapping.js.map +1 -1
  67. package/packages/cli/dist/src/ui/hooks/toolMapping.test.js +0 -13
  68. package/packages/cli/dist/src/ui/hooks/toolMapping.test.js.map +1 -1
  69. package/packages/cli/dist/src/ui/hooks/useToolScheduler.js +2 -18
  70. package/packages/cli/dist/src/ui/hooks/useToolScheduler.js.map +1 -1
  71. package/packages/cli/dist/src/ui/hooks/useToolScheduler.test.js +0 -44
  72. package/packages/cli/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  73. package/packages/cli/dist/src/ui/keyMatchers.test.js.map +1 -1
  74. package/packages/cli/dist/src/ui/types.d.ts +0 -1
  75. package/packages/cli/dist/src/ui/types.js.map +1 -1
  76. package/packages/cli/dist/src/ui/utils/commandUtils.js +4 -1
  77. package/packages/cli/dist/src/ui/utils/commandUtils.js.map +1 -1
  78. package/packages/cli/dist/src/utils/activityLogger.js +23 -94
  79. package/packages/cli/dist/src/utils/activityLogger.js.map +1 -1
  80. package/packages/cli/dist/src/utils/handleAutoUpdate.d.ts +1 -1
  81. package/packages/cli/dist/src/utils/handleAutoUpdate.js +1 -1
  82. package/packages/cli/dist/src/utils/handleAutoUpdate.js.map +1 -1
  83. package/packages/cli/dist/src/utils/handleAutoUpdate.test.js +11 -11
  84. package/packages/cli/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
  85. package/{bundle/sandbox-macos-restrictive-closed.sb → packages/cli/dist/src/utils/sandbox-macos-strict-open.sb} +42 -4
  86. package/packages/cli/dist/src/utils/{sandbox-macos-restrictive-closed.sb → sandbox-macos-strict-proxied.sb} +44 -4
  87. package/packages/cli/dist/tsconfig.tsbuildinfo +1 -1
  88. package/packages/core/dist/docs/admin/enterprise-controls.md +115 -0
  89. package/packages/core/dist/docs/changelogs/index.md +57 -1
  90. package/packages/core/dist/docs/changelogs/latest.md +357 -314
  91. package/packages/core/dist/docs/changelogs/preview.md +288 -411
  92. package/packages/core/dist/docs/cli/checkpointing.md +2 -3
  93. package/packages/core/dist/docs/cli/cli-reference.md +42 -28
  94. package/packages/core/dist/docs/cli/custom-commands.md +3 -0
  95. package/packages/core/dist/docs/cli/enterprise.md +28 -8
  96. package/packages/core/dist/docs/cli/gemini-md.md +21 -13
  97. package/packages/core/dist/docs/cli/headless.md +34 -372
  98. package/packages/core/dist/docs/cli/model.md +1 -1
  99. package/packages/core/dist/docs/cli/plan-mode.md +245 -0
  100. package/packages/core/dist/docs/cli/rewind.md +11 -11
  101. package/packages/core/dist/docs/cli/sandbox.md +6 -5
  102. package/packages/core/dist/docs/cli/session-management.md +61 -44
  103. package/packages/core/dist/docs/cli/settings.md +64 -49
  104. package/packages/core/dist/docs/cli/skills.md +29 -7
  105. package/packages/core/dist/docs/cli/telemetry.md +41 -5
  106. package/packages/core/dist/docs/cli/themes.md +88 -54
  107. package/packages/core/dist/docs/cli/trusted-folders.md +31 -0
  108. package/packages/core/dist/docs/cli/tutorials/automation.md +187 -0
  109. package/packages/core/dist/docs/cli/tutorials/file-management.md +142 -0
  110. package/packages/core/dist/docs/cli/tutorials/mcp-setup.md +105 -0
  111. package/packages/core/dist/docs/cli/tutorials/memory-management.md +126 -0
  112. package/packages/core/dist/docs/cli/tutorials/session-management.md +105 -0
  113. package/packages/core/dist/docs/cli/tutorials/shell-commands.md +107 -0
  114. package/packages/core/dist/docs/cli/tutorials/skills-getting-started.md +36 -31
  115. package/packages/core/dist/docs/cli/tutorials/task-planning.md +93 -0
  116. package/packages/core/dist/docs/cli/tutorials/web-tools.md +78 -0
  117. package/packages/core/dist/docs/core/index.md +7 -7
  118. package/packages/core/dist/docs/core/subagents.md +40 -40
  119. package/packages/core/dist/docs/extensions/best-practices.md +102 -53
  120. package/packages/core/dist/docs/extensions/index.md +37 -21
  121. package/packages/core/dist/docs/extensions/reference.md +148 -219
  122. package/packages/core/dist/docs/extensions/releasing.md +93 -122
  123. package/packages/core/dist/docs/extensions/writing-extensions.md +87 -76
  124. package/packages/core/dist/docs/get-started/authentication.md +4 -4
  125. package/packages/core/dist/docs/get-started/examples.md +39 -119
  126. package/packages/core/dist/docs/get-started/gemini-3.md +17 -3
  127. package/packages/core/dist/docs/get-started/index.md +16 -5
  128. package/packages/core/dist/docs/get-started/installation.md +110 -77
  129. package/packages/core/dist/docs/hooks/best-practices.md +1 -1
  130. package/packages/core/dist/docs/hooks/reference.md +2 -2
  131. package/packages/core/dist/docs/index.md +142 -149
  132. package/packages/core/dist/docs/redirects.json +19 -0
  133. package/packages/core/dist/docs/reference/commands.md +523 -0
  134. package/{bundle/docs/get-started → packages/core/dist/docs/reference}/configuration.md +180 -71
  135. package/packages/core/dist/docs/{cli → reference}/keyboard-shortcuts.md +49 -35
  136. package/packages/core/dist/docs/{core → reference}/policy-engine.md +76 -32
  137. package/packages/core/dist/docs/releases.md +2 -2
  138. package/{bundle/docs → packages/core/dist/docs/resources}/faq.md +1 -1
  139. package/packages/core/dist/docs/{quota-and-pricing.md → resources/quota-and-pricing.md} +12 -5
  140. package/{bundle/docs → packages/core/dist/docs/resources}/tos-privacy.md +3 -3
  141. package/packages/core/dist/docs/{troubleshooting.md → resources/troubleshooting.md} +1 -1
  142. package/packages/core/dist/docs/sidebar.json +194 -113
  143. package/packages/core/dist/docs/tools/activate-skill.md +43 -0
  144. package/packages/core/dist/docs/tools/ask-user.md +95 -0
  145. package/packages/core/dist/docs/tools/file-system.md +55 -143
  146. package/packages/core/dist/docs/tools/index.md +97 -93
  147. package/packages/core/dist/docs/tools/internal-docs.md +46 -0
  148. package/packages/core/dist/docs/tools/mcp-server.md +65 -16
  149. package/packages/core/dist/docs/tools/memory.md +21 -40
  150. package/packages/core/dist/docs/tools/planning.md +57 -0
  151. package/packages/core/dist/docs/tools/shell.md +44 -88
  152. package/packages/core/dist/docs/tools/todos.md +22 -44
  153. package/packages/core/dist/docs/tools/web-fetch.md +22 -46
  154. package/packages/core/dist/docs/tools/web-search.md +19 -29
  155. package/packages/core/dist/src/code_assist/types.d.ts +14 -14
  156. package/packages/core/dist/src/config/config.d.ts +1 -13
  157. package/packages/core/dist/src/config/config.js +6 -39
  158. package/packages/core/dist/src/config/config.js.map +1 -1
  159. package/packages/core/dist/src/confirmation-bus/types.d.ts +0 -3
  160. package/packages/core/dist/src/confirmation-bus/types.js.map +1 -1
  161. package/packages/core/dist/src/core/coreToolHookTriggers.d.ts +1 -1
  162. package/packages/core/dist/src/core/coreToolHookTriggers.js +3 -8
  163. package/packages/core/dist/src/core/coreToolHookTriggers.js.map +1 -1
  164. package/packages/core/dist/src/generated/git-commit.d.ts +2 -2
  165. package/packages/core/dist/src/generated/git-commit.js +2 -2
  166. package/packages/core/dist/src/hooks/hookEventHandler.d.ts +2 -2
  167. package/packages/core/dist/src/hooks/hookEventHandler.js +2 -8
  168. package/packages/core/dist/src/hooks/hookEventHandler.js.map +1 -1
  169. package/packages/core/dist/src/hooks/hookSystem.d.ts +2 -2
  170. package/packages/core/dist/src/hooks/hookSystem.js +4 -4
  171. package/packages/core/dist/src/hooks/hookSystem.js.map +1 -1
  172. package/packages/core/dist/src/hooks/types.d.ts +0 -18
  173. package/packages/core/dist/src/hooks/types.js +0 -17
  174. package/packages/core/dist/src/hooks/types.js.map +1 -1
  175. package/packages/core/dist/src/ide/ide-client.js +1 -1
  176. package/packages/core/dist/src/ide/ide-client.js.map +1 -1
  177. package/packages/core/dist/src/ide/types.d.ts +8 -8
  178. package/packages/core/dist/src/index.d.ts +2 -0
  179. package/packages/core/dist/src/index.js +2 -0
  180. package/packages/core/dist/src/index.js.map +1 -1
  181. package/packages/core/dist/src/policy/policies/plan.toml +29 -43
  182. package/packages/core/dist/src/policy/policies/read-only.toml +12 -11
  183. package/packages/core/dist/src/policy/policies/write.toml +11 -10
  184. package/packages/core/dist/src/policy/policies/yolo.toml +24 -12
  185. package/packages/core/dist/src/policy/policy-engine.js +1 -5
  186. package/packages/core/dist/src/policy/policy-engine.js.map +1 -1
  187. package/packages/core/dist/src/policy/types.d.ts +1 -2
  188. package/packages/core/dist/src/policy/types.js +0 -1
  189. package/packages/core/dist/src/policy/types.js.map +1 -1
  190. package/packages/core/dist/src/safety/context-builder.d.ts +3 -3
  191. package/packages/core/dist/src/safety/context-builder.js +4 -60
  192. package/packages/core/dist/src/safety/context-builder.js.map +1 -1
  193. package/packages/core/dist/src/safety/context-builder.test.js +18 -98
  194. package/packages/core/dist/src/safety/context-builder.test.js.map +1 -1
  195. package/packages/core/dist/src/safety/protocol.d.ts +0 -4
  196. package/packages/core/dist/src/safety/registry.d.ts +1 -2
  197. package/packages/core/dist/src/safety/registry.js +4 -14
  198. package/packages/core/dist/src/safety/registry.js.map +1 -1
  199. package/packages/core/dist/src/safety/registry.test.js +2 -5
  200. package/packages/core/dist/src/safety/registry.test.js.map +1 -1
  201. package/packages/core/dist/src/scheduler/scheduler.d.ts +1 -1
  202. package/packages/core/dist/src/scheduler/scheduler.js +4 -49
  203. package/packages/core/dist/src/scheduler/scheduler.js.map +1 -1
  204. package/packages/core/dist/src/scheduler/scheduler.test.js +0 -91
  205. package/packages/core/dist/src/scheduler/scheduler.test.js.map +1 -1
  206. package/packages/core/dist/src/scheduler/state-manager.d.ts +0 -6
  207. package/packages/core/dist/src/scheduler/state-manager.js +0 -12
  208. package/packages/core/dist/src/scheduler/state-manager.js.map +1 -1
  209. package/packages/core/dist/src/scheduler/tool-executor.js +7 -9
  210. package/packages/core/dist/src/scheduler/tool-executor.js.map +1 -1
  211. package/packages/core/dist/src/scheduler/tool-executor.test.js +1 -1
  212. package/packages/core/dist/src/scheduler/tool-executor.test.js.map +1 -1
  213. package/packages/core/dist/src/scheduler/types.d.ts +0 -13
  214. package/packages/core/dist/src/services/shellExecutionService.d.ts +1 -1
  215. package/packages/core/dist/src/services/shellExecutionService.js +7 -8
  216. package/packages/core/dist/src/services/shellExecutionService.js.map +1 -1
  217. package/packages/core/dist/src/services/shellExecutionService.test.js +5 -5
  218. package/packages/core/dist/src/services/shellExecutionService.test.js.map +1 -1
  219. package/packages/core/dist/src/services/test-data/resolved-aliases-retry.golden.json +251 -251
  220. package/packages/core/dist/src/services/test-data/resolved-aliases.golden.json +251 -251
  221. package/packages/core/dist/src/skills/builtin/skill-creator/scripts/init_skill.cjs +5 -1
  222. package/packages/core/dist/src/skills/builtin/skill-creator/scripts/package_skill.cjs +5 -1
  223. package/packages/core/dist/src/skills/builtin/skill-creator/scripts/validate_skill.cjs +5 -1
  224. package/packages/core/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +1 -3
  225. package/packages/core/dist/src/telemetry/clearcut-logger/clearcut-logger.js +0 -2
  226. package/packages/core/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  227. package/packages/core/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +1 -9
  228. package/packages/core/dist/src/telemetry/clearcut-logger/event-metadata-key.js +1 -19
  229. package/packages/core/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  230. package/packages/core/dist/src/telemetry/index.d.ts +1 -2
  231. package/packages/core/dist/src/telemetry/index.js +1 -2
  232. package/packages/core/dist/src/telemetry/index.js.map +1 -1
  233. package/packages/core/dist/src/telemetry/loggers.js +0 -4
  234. package/packages/core/dist/src/telemetry/loggers.js.map +1 -1
  235. package/packages/core/dist/src/telemetry/trace.js.map +1 -1
  236. package/packages/core/dist/src/telemetry/types.d.ts +0 -26
  237. package/packages/core/dist/src/telemetry/types.js +2 -76
  238. package/packages/core/dist/src/telemetry/types.js.map +1 -1
  239. package/packages/core/dist/src/tools/diffOptions.d.ts +2 -2
  240. package/packages/core/dist/src/tools/diffOptions.js.map +1 -1
  241. package/packages/core/dist/src/tools/mcp-client.test.js.map +1 -1
  242. package/packages/core/dist/src/tools/mcp-tool.d.ts +1 -3
  243. package/packages/core/dist/src/tools/mcp-tool.js +2 -9
  244. package/packages/core/dist/src/tools/mcp-tool.js.map +1 -1
  245. package/packages/core/dist/src/tools/memoryTool.d.ts +0 -10
  246. package/packages/core/dist/src/tools/memoryTool.js +30 -25
  247. package/packages/core/dist/src/tools/memoryTool.js.map +1 -1
  248. package/packages/core/dist/src/tools/tool-names.d.ts +6 -0
  249. package/packages/core/dist/src/tools/tool-names.js +16 -1
  250. package/packages/core/dist/src/tools/tool-names.js.map +1 -1
  251. package/packages/core/dist/src/tools/tools.d.ts +0 -11
  252. package/packages/core/dist/src/tools/tools.js.map +1 -1
  253. package/packages/core/dist/src/utils/getPty.d.ts +14 -1
  254. package/packages/core/dist/src/utils/getPty.js +67 -2
  255. package/packages/core/dist/src/utils/getPty.js.map +1 -1
  256. package/packages/core/dist/src/utils/memoryDiscovery.d.ts +11 -3
  257. package/packages/core/dist/src/utils/memoryDiscovery.js +56 -21
  258. package/packages/core/dist/src/utils/memoryDiscovery.js.map +1 -1
  259. package/packages/core/dist/src/utils/secure-browser-launcher.js +40 -29
  260. package/packages/core/dist/src/utils/secure-browser-launcher.js.map +1 -1
  261. package/packages/core/dist/src/utils/textUtils.d.ts +0 -9
  262. package/packages/core/dist/src/utils/textUtils.js +0 -15
  263. package/packages/core/dist/src/utils/textUtils.js.map +1 -1
  264. package/packages/core/dist/src/utils/textUtils.test.js +1 -42
  265. package/packages/core/dist/src/utils/textUtils.test.js.map +1 -1
  266. package/packages/core/dist/tsconfig.tsbuildinfo +1 -1
  267. package/packages/test-utils/dist/tsconfig.tsbuildinfo +1 -1
  268. package/bundle/docs/ROADMAP.md +0 -113
  269. package/bundle/docs/TERMUX.md +0 -95
  270. package/bundle/docs/architecture.md +0 -80
  271. package/bundle/docs/assets/hero.png +0 -0
  272. package/bundle/docs/cli/authentication.md +0 -3
  273. package/bundle/docs/cli/commands.md +0 -430
  274. package/bundle/docs/cli/context-memory.md +0 -69
  275. package/bundle/docs/cli/index.md +0 -65
  276. package/bundle/docs/cli/keyboard-shortcuts.md +0 -140
  277. package/bundle/docs/cli/tutorials.md +0 -87
  278. package/bundle/docs/core/policy-engine.md +0 -305
  279. package/bundle/docs/get-started/configuration-v1.md +0 -888
  280. package/bundle/docs/patches/README.md +0 -74
  281. package/bundle/docs/patches/mcp-sdk-typings-shim.md +0 -27
  282. package/bundle/docs/quota-and-pricing.md +0 -158
  283. package/bundle/docs/termux-api/COMMANDS.md +0 -592
  284. package/bundle/docs/termux-api/DISCOVERY_SETUP.md +0 -670
  285. package/bundle/docs/termux-api/EXECUTION_PLAN.md +0 -532
  286. package/bundle/docs/termux-api/MERGE_STRATEGY.md +0 -365
  287. package/bundle/docs/termux-api/PATCHES.md +0 -480
  288. package/bundle/docs/termux-api/README.md +0 -416
  289. package/bundle/docs/troubleshooting.md +0 -173
  290. package/bundle/policies/conseca.toml +0 -6
  291. package/bundle/sandbox-macos-permissive-closed.sb +0 -32
  292. package/packages/cli/README.md +0 -173
  293. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.d.ts +0 -6
  294. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.js.map +0 -1
  295. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.test.d.ts +0 -6
  296. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.test.js +0 -111
  297. package/packages/cli/dist/src/commands/extensions/examples/mcp-server/example.test.js.map +0 -1
  298. package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessageOverflow.test.d.ts +0 -6
  299. package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessageOverflow.test.js +0 -93
  300. package/packages/cli/dist/src/ui/components/messages/ToolConfirmationMessageOverflow.test.js.map +0 -1
  301. package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.d.ts +0 -42
  302. package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.js +0 -105
  303. package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.js.map +0 -1
  304. package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.test.d.ts +0 -6
  305. package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.test.js +0 -58
  306. package/packages/cli/dist/src/ui/hooks/useReactToolScheduler.test.js.map +0 -1
  307. package/packages/cli/dist/src/ui/hooks/useRefreshMemoryCommand.d.ts +0 -6
  308. package/packages/cli/dist/src/ui/hooks/useRefreshMemoryCommand.js +0 -7
  309. package/packages/cli/dist/src/ui/hooks/useRefreshMemoryCommand.js.map +0 -1
  310. package/packages/cli/dist/src/ui/hooks/useShowMemoryCommand.d.ts +0 -9
  311. package/packages/cli/dist/src/ui/hooks/useShowMemoryCommand.js +0 -59
  312. package/packages/cli/dist/src/ui/hooks/useShowMemoryCommand.js.map +0 -1
  313. package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.d.ts +0 -30
  314. package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.js +0 -149
  315. package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.js.map +0 -1
  316. package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.test.d.ts +0 -6
  317. package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.test.js +0 -376
  318. package/packages/cli/dist/src/ui/hooks/useToolExecutionScheduler.test.js.map +0 -1
  319. package/packages/cli/dist/src/ui/hooks/useToolSchedulerFacade.test.d.ts +0 -6
  320. package/packages/cli/dist/src/ui/hooks/useToolSchedulerFacade.test.js +0 -45
  321. package/packages/cli/dist/src/ui/hooks/useToolSchedulerFacade.test.js.map +0 -1
  322. package/packages/cli/dist/src/ui/utils/InlineMarkdownRenderer.test.d.ts +0 -6
  323. package/packages/cli/dist/src/ui/utils/InlineMarkdownRenderer.test.js +0 -21
  324. package/packages/cli/dist/src/ui/utils/InlineMarkdownRenderer.test.js.map +0 -1
  325. package/packages/cli/dist/src/ui/utils/terminalUtils.test.d.ts +0 -6
  326. package/packages/cli/dist/src/ui/utils/terminalUtils.test.js +0 -40
  327. package/packages/cli/dist/src/ui/utils/terminalUtils.test.js.map +0 -1
  328. package/packages/cli/dist/src/utils/checks.d.ts +0 -19
  329. package/packages/cli/dist/src/utils/checks.js +0 -24
  330. package/packages/cli/dist/src/utils/checks.js.map +0 -1
  331. package/packages/cli/dist/src/utils/checks.test.d.ts +0 -6
  332. package/packages/cli/dist/src/utils/checks.test.js +0 -29
  333. package/packages/cli/dist/src/utils/checks.test.js.map +0 -1
  334. package/packages/cli/dist/src/utils/sandbox-macos-permissive-closed.sb +0 -32
  335. package/packages/cli/index.js +0 -2
  336. package/packages/core/dist/docs/TERMUX.md +0 -95
  337. package/packages/core/dist/docs/architecture.md +0 -80
  338. package/packages/core/dist/docs/assets/hero.png +0 -0
  339. package/packages/core/dist/docs/cli/authentication.md +0 -3
  340. package/packages/core/dist/docs/cli/commands.md +0 -430
  341. package/packages/core/dist/docs/cli/context-memory.md +0 -69
  342. package/packages/core/dist/docs/cli/index.md +0 -65
  343. package/packages/core/dist/docs/cli/tutorials.md +0 -87
  344. package/packages/core/dist/docs/cli/uninstall.md +0 -65
  345. package/packages/core/dist/docs/core/memport.md +0 -246
  346. package/packages/core/dist/docs/core/tools-api.md +0 -131
  347. package/packages/core/dist/docs/faq.md +0 -154
  348. package/packages/core/dist/docs/get-started/configuration-v1.md +0 -888
  349. package/packages/core/dist/docs/get-started/configuration.md +0 -1585
  350. package/packages/core/dist/docs/patches/README.md +0 -74
  351. package/packages/core/dist/docs/patches/mcp-sdk-typings-shim.md +0 -27
  352. package/packages/core/dist/docs/termux-api/COMMANDS.md +0 -592
  353. package/packages/core/dist/docs/termux-api/DISCOVERY_SETUP.md +0 -670
  354. package/packages/core/dist/docs/termux-api/EXECUTION_PLAN.md +0 -532
  355. package/packages/core/dist/docs/termux-api/MERGE_STRATEGY.md +0 -365
  356. package/packages/core/dist/docs/termux-api/PATCHES.md +0 -480
  357. package/packages/core/dist/docs/termux-api/README.md +0 -416
  358. package/packages/core/dist/docs/tos-privacy.md +0 -96
  359. package/packages/core/dist/src/safety/conseca/conseca.d.ts +0 -31
  360. package/packages/core/dist/src/safety/conseca/conseca.js +0 -105
  361. package/packages/core/dist/src/safety/conseca/conseca.js.map +0 -1
  362. package/packages/core/dist/src/safety/conseca/conseca.test.d.ts +0 -6
  363. package/packages/core/dist/src/safety/conseca/conseca.test.js +0 -226
  364. package/packages/core/dist/src/safety/conseca/conseca.test.js.map +0 -1
  365. package/packages/core/dist/src/safety/conseca/integration.test.d.ts +0 -6
  366. package/packages/core/dist/src/safety/conseca/integration.test.js +0 -19
  367. package/packages/core/dist/src/safety/conseca/integration.test.js.map +0 -1
  368. package/packages/core/dist/src/safety/conseca/policy-enforcer.d.ts +0 -13
  369. package/packages/core/dist/src/safety/conseca/policy-enforcer.js +0 -135
  370. package/packages/core/dist/src/safety/conseca/policy-enforcer.js.map +0 -1
  371. package/packages/core/dist/src/safety/conseca/policy-enforcer.test.d.ts +0 -6
  372. package/packages/core/dist/src/safety/conseca/policy-enforcer.test.js +0 -141
  373. package/packages/core/dist/src/safety/conseca/policy-enforcer.test.js.map +0 -1
  374. package/packages/core/dist/src/safety/conseca/policy-generator.d.ts +0 -15
  375. package/packages/core/dist/src/safety/conseca/policy-generator.js +0 -144
  376. package/packages/core/dist/src/safety/conseca/policy-generator.js.map +0 -1
  377. package/packages/core/dist/src/safety/conseca/policy-generator.test.d.ts +0 -6
  378. package/packages/core/dist/src/safety/conseca/policy-generator.test.js +0 -84
  379. package/packages/core/dist/src/safety/conseca/policy-generator.test.js.map +0 -1
  380. package/packages/core/dist/src/safety/conseca/types.d.ts +0 -15
  381. package/packages/core/dist/src/safety/conseca/types.js +0 -7
  382. package/packages/core/dist/src/safety/conseca/types.js.map +0 -1
  383. package/packages/core/dist/src/telemetry/conseca-logger.d.ts +0 -9
  384. package/packages/core/dist/src/telemetry/conseca-logger.js +0 -91
  385. package/packages/core/dist/src/telemetry/conseca-logger.js.map +0 -1
  386. package/packages/core/dist/src/telemetry/conseca-logger.test.d.ts +0 -6
  387. package/packages/core/dist/src/telemetry/conseca-logger.test.js +0 -89
  388. package/packages/core/dist/src/telemetry/conseca-logger.test.js.map +0 -1
  389. package/packages/core/dist/src/tools/mcpImportTool.d.ts +0 -31
  390. package/packages/core/dist/src/tools/mcpImportTool.js +0 -143
  391. package/packages/core/dist/src/tools/mcpImportTool.js.map +0 -1
  392. package/packages/core/dist/src/utils/contextMemory.d.ts +0 -67
  393. package/packages/core/dist/src/utils/contextMemory.js +0 -493
  394. package/packages/core/dist/src/utils/contextMemory.js.map +0 -1
  395. package/packages/core/dist/src/utils/contextMemory.test.d.ts +0 -6
  396. package/packages/core/dist/src/utils/contextMemory.test.js +0 -183
  397. package/packages/core/dist/src/utils/contextMemory.test.js.map +0 -1
  398. /package/{bundle/docs/core → packages/core/dist/docs/reference}/memport.md +0 -0
  399. /package/{bundle/docs/core → packages/core/dist/docs/reference}/tools-api.md +0 -0
  400. /package/{bundle/docs/cli → packages/core/dist/docs/resources}/uninstall.md +0 -0
@@ -1,416 +0,0 @@
1
- # Termux-API Integration Plan
2
-
3
- **Project**: gemini-cli-termux **Version**: 0.22.0-termux **Author**: DioNanos
4
- **Date**: 2025-12-17 **Status**: Planning Phase
5
-
6
- ---
7
-
8
- ## Executive Summary
9
-
10
- This document describes the plan to integrate native Termux-API commands into
11
- the `gemini-cli-termux` fork, allowing Gemini CLI to leverage Android hardware
12
- and software APIs through Termux.
13
-
14
- ## Table of Contents
15
-
16
- 1. [Current Architecture](#current-architecture)
17
- 2. [Termux-API Commands](#termux-api-commands)
18
- 3. [Integration Approaches](#integration-approaches)
19
- 4. [Recommendation](#recommendation)
20
- 5. [Implementation Roadmap](#implementation-roadmap)
21
- 6. [Reference Files](#reference-files)
22
-
23
- ---
24
-
25
- ## Current Architecture
26
-
27
- ### Monorepo Structure
28
-
29
- ```
30
- gemini-cli-termux/
31
- ├── packages/
32
- │ ├── core/ # Logic core, tools, config
33
- │ │ └── src/
34
- │ │ ├── tools/ # Tool implementations
35
- │ │ ├── mcp/ # MCP support
36
- │ │ └── config/ # Configuration
37
- │ ├── cli/ # CLI interface
38
- │ ├── a2a-server/ # Agent-to-Agent server
39
- │ └── vscode-ide-companion/
40
- └── bundle/ # Built executable
41
- ```
42
-
43
- ### Tool System
44
-
45
- Tools in Gemini CLI follow a well-defined pattern:
46
-
47
- 1. **BaseDeclarativeTool**: Base class for defining tools
48
- 2. **BaseToolInvocation**: Class for tool execution
49
- 3. **ToolRegistry**: Registers and manages all tools
50
-
51
- **Key files**:
52
-
53
- - `packages/core/src/tools/tools.ts` - Interfaces and base classes
54
- - `packages/core/src/tools/tool-registry.ts` - Tool registry
55
- - `packages/core/src/tools/shell.ts` - Example: ShellTool
56
-
57
- ### Tool Call Flow
58
-
59
- ```
60
- LLM → ToolRegistry.getTool() → DeclarativeTool.build() → ToolInvocation.execute()
61
- ```
62
-
63
- ### Discovery Mechanisms
64
-
65
- 1. **Built-in Tools**: Manually registered in the registry
66
- 2. **Discovered Tools**: Via `tool_discovery_command` in config
67
- 3. **MCP Tools**: Via Model Context Protocol servers
68
-
69
- ---
70
-
71
- ## Termux-API Commands
72
-
73
- ### Categorization by Functionality
74
-
75
- | Category | Commands | Complexity |
76
- | ------------------ | -------------------------------------------------------------------------------------------------------- | --------------- |
77
- | **System Info** | battery-status, audio-info, wifi-connectioninfo, wifi-scaninfo, telephony-deviceinfo, telephony-cellinfo | Low |
78
- | **Notifications** | notification, notification-remove, notification-list, toast | Low |
79
- | **Clipboard** | clipboard-get, clipboard-set | Low |
80
- | **Media** | camera-photo, camera-info, microphone-record, media-player, media-scan, tts-speak, speech-to-text | Medium |
81
- | **Location** | location | Medium |
82
- | **Sensors** | sensor, infrared-frequencies, infrared-transmit, torch, vibrate, brightness | Medium |
83
- | **Communication** | sms-send, sms-inbox, sms-list, telephony-call, call-log, contact-list | High (privacy) |
84
- | **Storage** | storage-get, download, share, open, open-url, saf-\* | Medium |
85
- | **Security** | fingerprint, keystore | High (security) |
86
- | **System Control** | volume, wake-lock, wake-unlock, wallpaper, wifi-enable | Medium |
87
- | **Dialogs** | dialog | Medium |
88
- | **NFC** | nfc | High |
89
- | **USB** | usb | High |
90
- | **Job Scheduler** | job-scheduler | Medium |
91
-
92
- ### Priority Commands (Phase 1)
93
-
94
- 1. **termux-battery-status** - Battery info (JSON output)
95
- 2. **termux-clipboard-get/set** - Clipboard operations
96
- 3. **termux-toast** - Toast notifications
97
- 4. **termux-notification** - Persistent notifications
98
- 5. **termux-tts-speak** - Text-to-Speech
99
- 6. **termux-vibrate** - Haptic feedback
100
- 7. **termux-torch** - Flashlight control
101
- 8. **termux-location** - GPS location
102
- 9. **termux-wifi-connectioninfo** - Network info
103
- 10. **termux-audio-info** - Audio info
104
-
105
- ---
106
-
107
- ## Integration Approaches
108
-
109
- ### Approach A: Native Dedicated Tools
110
-
111
- **Description**: Create dedicated TypeScript classes for each category of Termux
112
- commands.
113
-
114
- **Proposed Structure**:
115
-
116
- ```
117
- packages/core/src/tools/termux/
118
- ├── index.ts
119
- ├── termux-base.ts
120
- ├── termux-system.ts # battery, wifi, audio, telephony
121
- ├── termux-notification.ts # toast, notification
122
- ├── termux-clipboard.ts # clipboard operations
123
- ├── termux-media.ts # camera, microphone, tts, speech
124
- ├── termux-location.ts # GPS
125
- ├── termux-sensors.ts # sensor, torch, vibrate
126
- └── termux-storage.ts # download, share, open
127
- ```
128
-
129
- **Pros**:
130
-
131
- - Deep integration with Gemini
132
- - Type-safe parameter validation
133
- - LLM-optimized descriptions
134
- - Specific error handling
135
- - Granular user confirmation
136
-
137
- **Cons**:
138
-
139
- - Much code to write (~50 tools)
140
- - Ongoing maintenance
141
- - Strong coupling
142
-
143
- **Estimated Effort**: High (2-3 weeks)
144
-
145
- ---
146
-
147
- ### Approach B: MCP Server for Termux-API
148
-
149
- **Description**: Create a standalone MCP server that exposes all Termux commands
150
- as MCP tools.
151
-
152
- **Proposed Structure**:
153
-
154
- ```
155
- termux-mcp-server/
156
- ├── package.json
157
- ├── src/
158
- │ ├── index.ts # MCP server entry
159
- │ ├── tools/ # Tool definitions
160
- │ └── utils/ # Helper functions
161
- └── README.md
162
- ```
163
-
164
- **Configuration**:
165
-
166
- ```json
167
- // settings.json
168
- {
169
- "mcpServers": {
170
- "termux": {
171
- "command": "npx",
172
- "args": ["@mmmbuto/termux-mcp-server"]
173
- }
174
- }
175
- }
176
- ```
177
-
178
- **Pros**:
179
-
180
- - Reusable with other MCP clients
181
- - Separation of concerns
182
- - Easy to update independently
183
- - Widely supported MCP standard
184
- - Publishable to npm separately
185
-
186
- **Cons**:
187
-
188
- - Communication overhead
189
- - Separate process dependency
190
- - More complex debugging
191
-
192
- **Estimated Effort**: Medium (1-2 weeks)
193
-
194
- ---
195
-
196
- ### Approach C: Tool Discovery Script
197
-
198
- **Description**: Create a script that generates FunctionDeclarations for Termux
199
- commands, leveraging the existing tool discovery mechanism.
200
-
201
- **Implementation**:
202
-
203
- ```bash
204
- # termux-tool-discovery.sh
205
- #!/bin/bash
206
- cat << 'EOF'
207
- [
208
- {
209
- "name": "termux_battery_status",
210
- "description": "Get battery status including percentage, health, and charging state",
211
- "parametersJsonSchema": {
212
- "type": "object",
213
- "properties": {}
214
- }
215
- },
216
- ...
217
- ]
218
- EOF
219
- ```
220
-
221
- **Configuration**:
222
-
223
- ```json
224
- // settings.json
225
- {
226
- "tool_discovery_command": "bash ~/.config/gemini/termux-tool-discovery.sh",
227
- "tool_call_command": "bash ~/.config/gemini/termux-tool-call.sh"
228
- }
229
- ```
230
-
231
- **Pros**:
232
-
233
- - Leverages existing infrastructure
234
- - Zero core modifications
235
- - User configurable
236
- - Easy to extend
237
-
238
- **Cons**:
239
-
240
- - Less control over validation
241
- - Depends on external scripts
242
- - Limited error handling
243
-
244
- **Estimated Effort**: Low (3-5 days)
245
-
246
- ---
247
-
248
- ### Approach D: Shell Allowlist Extension
249
-
250
- **Description**: Extend shell permissions to auto-approve `termux-*` commands.
251
-
252
- **Implementation**:
253
-
254
- ```typescript
255
- // packages/core/src/utils/shell-permissions.ts
256
- const TERMUX_COMMANDS = [
257
- 'termux-battery-status',
258
- 'termux-clipboard-get',
259
- 'termux-clipboard-set',
260
- // ...
261
- ];
262
-
263
- export function isTermuxCommand(command: string): boolean {
264
- return TERMUX_COMMANDS.some((tc) => command.startsWith(tc));
265
- }
266
- ```
267
-
268
- **Pros**:
269
-
270
- - Minimal code impact
271
- - Uses existing ShellTool
272
- - Quick win
273
-
274
- **Cons**:
275
-
276
- - No additional semantics
277
- - LLM must know the syntax
278
- - No parameter validation
279
- - No description for LLM
280
-
281
- **Estimated Effort**: Minimal (1-2 days)
282
-
283
- ---
284
-
285
- ### Approach E: Hybrid (Recommended)
286
-
287
- **Description**: Combine approaches B and C for maximum flexibility.
288
-
289
- **Phase 1**: Tool Discovery Script (quick win)
290
-
291
- - Generates declarations for all commands
292
- - Allows Gemini to use Termux immediately
293
-
294
- **Phase 2**: MCP Server (production)
295
-
296
- - Implements complete MCP server
297
- - Robust validation
298
- - Publishable to npm
299
-
300
- **Phase 3**: Native Tools (optional)
301
-
302
- - Only for critical/frequent commands
303
- - Optimized integration
304
-
305
- ---
306
-
307
- ## Recommendation
308
-
309
- **Recommended Approach: E (Hybrid)**
310
-
311
- ### Rationale
312
-
313
- 1. **Quick Win**: Tool Discovery allows starting immediately
314
- 2. **Scalability**: MCP Server is the standard for extensions
315
- 3. **Flexibility**: Native tools only where needed
316
- 4. **Maintainability**: Each phase can be developed independently
317
-
318
- ### Implementation Priority
319
-
320
- | Phase | Approach | Commands | Priority |
321
- | ----- | ---------------- | ------------------------------- | -------- |
322
- | 1 | Discovery Script | All | High |
323
- | 2 | MCP Server | System, Clipboard, Notification | Medium |
324
- | 3 | Native Tools | TTS, Location | Low |
325
-
326
- ---
327
-
328
- ## Implementation Roadmap
329
-
330
- ### Phase 1: Tool Discovery (Quick Win)
331
-
332
- **Files to create**:
333
-
334
- - `scripts/termux-tool-discovery.sh`
335
- - `scripts/termux-tool-call.sh`
336
- - `docs/termux-api/DISCOVERY_SETUP.md`
337
-
338
- **Tasks**:
339
-
340
- 1. [ ] Create discovery script with all FunctionDeclarations
341
- 2. [ ] Create call script with command dispatch
342
- 3. [ ] Document user configuration
343
- 4. [ ] Test on Termux
344
- 5. [ ] Update README
345
-
346
- ### Phase 2: MCP Server
347
-
348
- **Files to create**:
349
-
350
- - New package `packages/termux-mcp/`
351
- - Or separate repository `termux-mcp-server`
352
-
353
- **Tasks**:
354
-
355
- 1. [ ] Scaffold MCP server
356
- 2. [ ] Implement System tools (battery, wifi, audio)
357
- 3. [ ] Implement Clipboard tools
358
- 4. [ ] Implement Notification tools
359
- 5. [ ] Implement Media tools
360
- 6. [ ] Test integration
361
- 7. [ ] Publish to npm
362
-
363
- ### Phase 3: Native Tools (Optional)
364
-
365
- **Files to modify**:
366
-
367
- - `packages/core/src/tools/` - New tool files
368
- - `packages/core/src/index.ts` - Export tools
369
-
370
- **Tasks**:
371
-
372
- 1. [ ] Implement TermuxTTSTool
373
- 2. [ ] Implement TermuxLocationTool
374
- 3. [ ] Implement TermuxClipboardTool
375
- 4. [ ] Register tools in registry
376
- 5. [ ] Test and documentation
377
-
378
- ---
379
-
380
- ## Reference Files
381
-
382
- ### Core Architecture
383
-
384
- | File | Description |
385
- | ------------------------------------------ | ---------------------- |
386
- | `packages/core/src/tools/tools.ts` | Base tool interfaces |
387
- | `packages/core/src/tools/tool-registry.ts` | Registry and discovery |
388
- | `packages/core/src/tools/shell.ts` | Example ShellTool |
389
- | `packages/core/src/tools/mcp-tool.ts` | MCP tool wrapper |
390
- | `packages/core/src/tools/mcp-client.ts` | MCP client |
391
-
392
- ### Configuration
393
-
394
- | File | Description |
395
- | -------------------------------------- | --------------- |
396
- | `packages/core/src/config/config.ts` | Config loader |
397
- | `packages/core/src/config/settings.ts` | Settings schema |
398
-
399
- ### Existing Documentation
400
-
401
- | File | Description |
402
- | ---------------- | ---------------- |
403
- | `docs/TERMUX.md` | Setup Termux |
404
- | `README.md` | Project Overview |
405
-
406
- ---
407
-
408
- ## Appendices
409
-
410
- - [COMMANDS.md](./COMMANDS.md) - Termux-API commands detail
411
- - [DISCOVERY_SETUP.md](./DISCOVERY_SETUP.md) - Tool Discovery setup guide
412
- - [MCP_SERVER.md](./MCP_SERVER.md) - MCP Server specifications
413
-
414
- ---
415
-
416
- _Author: DioNanos_
@@ -1,96 +0,0 @@
1
- # Gemini CLI: License, Terms of Service, and Privacy Notices
2
-
3
- Gemini CLI is an open-source tool that lets you interact with Google's powerful
4
- AI services directly from your command-line interface. The Gemini CLI software
5
- is licensed under the
6
- [Apache 2.0 license](https://github.com/google-gemini/gemini-cli/blob/main/LICENSE).
7
- When you use Gemini CLI to access or use Google’s services, the Terms of Service
8
- and Privacy Notices applicable to those services apply to such access and use.
9
-
10
- Your Gemini CLI Usage Statistics are handled in accordance with Google's Privacy
11
- Policy.
12
-
13
- **Note:** See [quotas and pricing](/docs/quota-and-pricing.md) for the quota and
14
- pricing details that apply to your usage of the Gemini CLI.
15
-
16
- ## Supported authentication methods
17
-
18
- Your authentication method refers to the method you use to log into and access
19
- Google’s services with Gemini CLI. Supported authentication methods include:
20
-
21
- - Logging in with your Google account to Gemini Code Assist.
22
- - Using an API key with Gemini Developer API.
23
- - Using an API key with Vertex AI GenAI API.
24
-
25
- The Terms of Service and Privacy Notices applicable to the aforementioned Google
26
- services are set forth in the table below.
27
-
28
- If you log in with your Google account and you do not already have a Gemini Code
29
- Assist account associated with your Google account, you will be directed to the
30
- sign up flow for Gemini Code Assist for individuals. If your Google account is
31
- managed by your organization, your administrator may not permit access to Gemini
32
- Code Assist for individuals. Please see the
33
- [Gemini Code Assist for individuals FAQs](https://developers.google.com/gemini-code-assist/resources/faqs)
34
- for further information.
35
-
36
- | Authentication Method | Service(s) | Terms of Service | Privacy Notice |
37
- | :----------------------- | :--------------------------- | :------------------------------------------------------------------------------------------------------ | :-------------------------------------------------------------------------------------------- |
38
- | Google Account | Gemini Code Assist services | [Terms of Service](https://developers.google.com/gemini-code-assist/resources/privacy-notices) | [Privacy Notices](https://developers.google.com/gemini-code-assist/resources/privacy-notices) |
39
- | Gemini Developer API Key | Gemini API - Unpaid Services | [Gemini API Terms of Service - Unpaid Services](https://ai.google.dev/gemini-api/terms#unpaid-services) | [Google Privacy Policy](https://policies.google.com/privacy) |
40
- | Gemini Developer API Key | Gemini API - Paid Services | [Gemini API Terms of Service - Paid Services](https://ai.google.dev/gemini-api/terms#paid-services) | [Google Privacy Policy](https://policies.google.com/privacy) |
41
- | Vertex AI GenAI API Key | Vertex AI GenAI API | [Google Cloud Platform Terms of Service](https://cloud.google.com/terms/service-terms/) | [Google Cloud Privacy Notice](https://cloud.google.com/terms/cloud-privacy-notice) |
42
-
43
- ## 1. If you have logged in with your Google account to Gemini Code Assist
44
-
45
- For users who use their Google account to access
46
- [Gemini Code Assist](https://codeassist.google), these Terms of Service and
47
- Privacy Notice documents apply:
48
-
49
- - Gemini Code Assist for individuals:
50
- [Google Terms of Service](https://policies.google.com/terms) and
51
- [Gemini Code Assist for individuals Privacy Notice](https://developers.google.com/gemini-code-assist/resources/privacy-notice-gemini-code-assist-individuals).
52
- - Gemini Code Assist with Google AI Pro or Ultra subscription:
53
- [Google Terms of Service](https://policies.google.com/terms),
54
- [Google One Additional Terms of Service](https://one.google.com/terms-of-service)
55
- and [Google Privacy Policy\*](https://policies.google.com/privacy).
56
- - Gemini Code Assist Standard and Enterprise editions:
57
- [Google Cloud Platform Terms of Service](https://cloud.google.com/terms) and
58
- [Google Cloud Privacy Notice](https://cloud.google.com/terms/cloud-privacy-notice).
59
-
60
- _\* If your account is also associated with an active subscription to Gemini
61
- Code Assist Standard or Enterprise edition, the terms and privacy policy of
62
- Gemini Code Assist Standard or Enterprise edition will apply to all your use of
63
- Gemini Code Assist._
64
-
65
- ## 2. If you have logged in with a Gemini API key to the Gemini Developer API
66
-
67
- If you are using a Gemini API key for authentication with the
68
- [Gemini Developer API](https://ai.google.dev/gemini-api/docs), these Terms of
69
- Service and Privacy Notice documents apply:
70
-
71
- - Terms of Service: Your use of the Gemini CLI is governed by the
72
- [Gemini API Terms of Service](https://ai.google.dev/gemini-api/terms). These
73
- terms may differ depending on whether you are using an unpaid or paid service:
74
- - For unpaid services, refer to the
75
- [Gemini API Terms of Service - Unpaid Services](https://ai.google.dev/gemini-api/terms#unpaid-services).
76
- - For paid services, refer to the
77
- [Gemini API Terms of Service - Paid Services](https://ai.google.dev/gemini-api/terms#paid-services).
78
- - Privacy Notice: The collection and use of your data is described in the
79
- [Google Privacy Policy](https://policies.google.com/privacy).
80
-
81
- ## 3. If you have logged in with a Gemini API key to the Vertex AI GenAI API
82
-
83
- If you are using a Gemini API key for authentication with a
84
- [Vertex AI GenAI API](https://cloud.google.com/vertex-ai/generative-ai/docs/reference/rest)
85
- backend, these Terms of Service and Privacy Notice documents apply:
86
-
87
- - Terms of Service: Your use of the Gemini CLI is governed by the
88
- [Google Cloud Platform Service Terms](https://cloud.google.com/terms/service-terms/).
89
- - Privacy Notice: The collection and use of your data is described in the
90
- [Google Cloud Privacy Notice](https://cloud.google.com/terms/cloud-privacy-notice).
91
-
92
- ## Usage statistics opt-out
93
-
94
- You may opt-out from sending Gemini CLI Usage Statistics to Google by following
95
- the instructions available here:
96
- [Usage Statistics Configuration](https://github.com/google-gemini/gemini-cli/blob/main/docs/get-started/configuration.md#usage-statistics).
@@ -1,31 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import type { InProcessChecker } from '../built-in.js';
7
- import type { SafetyCheckInput, SafetyCheckResult } from '../protocol.js';
8
- import type { Config } from '../../config/config.js';
9
- import type { SecurityPolicy } from './types.js';
10
- export declare class ConsecaSafetyChecker implements InProcessChecker {
11
- private static instance;
12
- private currentPolicy;
13
- private activeUserPrompt;
14
- private config;
15
- /**
16
- * Private constructor to enforce singleton pattern.
17
- * Use `getInstance()` to access the instance.
18
- */
19
- private constructor();
20
- static getInstance(): ConsecaSafetyChecker;
21
- /**
22
- * Resets the singleton instance. Use only in tests.
23
- */
24
- static resetInstance(): void;
25
- setConfig(config: Config): void;
26
- check(input: SafetyCheckInput): Promise<SafetyCheckResult>;
27
- getPolicy(userPrompt: string, trustedContent: string, config: Config): Promise<SecurityPolicy>;
28
- private extractUserPrompt;
29
- getCurrentPolicy(): SecurityPolicy | null;
30
- getActiveUserPrompt(): string | null;
31
- }
@@ -1,105 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { SafetyCheckDecision } from '../protocol.js';
7
- import { logConsecaPolicyGeneration, ConsecaPolicyGenerationEvent, logConsecaVerdict, ConsecaVerdictEvent, } from '../../telemetry/index.js';
8
- import { debugLogger } from '../../utils/debugLogger.js';
9
- import { generatePolicy } from './policy-generator.js';
10
- import { enforcePolicy } from './policy-enforcer.js';
11
- export class ConsecaSafetyChecker {
12
- static instance;
13
- currentPolicy = null;
14
- activeUserPrompt = null;
15
- config = null;
16
- /**
17
- * Private constructor to enforce singleton pattern.
18
- * Use `getInstance()` to access the instance.
19
- */
20
- constructor() { }
21
- static getInstance() {
22
- if (!ConsecaSafetyChecker.instance) {
23
- ConsecaSafetyChecker.instance = new ConsecaSafetyChecker();
24
- }
25
- return ConsecaSafetyChecker.instance;
26
- }
27
- /**
28
- * Resets the singleton instance. Use only in tests.
29
- */
30
- static resetInstance() {
31
- ConsecaSafetyChecker.instance = undefined;
32
- }
33
- setConfig(config) {
34
- this.config = config;
35
- }
36
- async check(input) {
37
- debugLogger.debug(`[Conseca] check called. History is: ${JSON.stringify(input.context.history)}`);
38
- if (!this.config) {
39
- debugLogger.debug('[Conseca] check failed: Config not initialized');
40
- return {
41
- decision: SafetyCheckDecision.ALLOW,
42
- reason: 'Config not initialized',
43
- };
44
- }
45
- if (!this.config.enableConseca) {
46
- debugLogger.debug('[Conseca] check skipped: Conseca is not enabled.');
47
- return {
48
- decision: SafetyCheckDecision.ALLOW,
49
- reason: 'Conseca is disabled',
50
- };
51
- }
52
- const userPrompt = this.extractUserPrompt(input);
53
- let trustedContent = '';
54
- const toolRegistry = this.config.getToolRegistry();
55
- if (toolRegistry) {
56
- const tools = toolRegistry.getFunctionDeclarations();
57
- trustedContent = JSON.stringify(tools, null, 2);
58
- }
59
- if (userPrompt) {
60
- await this.getPolicy(userPrompt, trustedContent, this.config);
61
- }
62
- else {
63
- debugLogger.debug(`[Conseca] Skipping policy generation because userPrompt is null`);
64
- }
65
- let result;
66
- if (!this.currentPolicy) {
67
- result = {
68
- decision: SafetyCheckDecision.ALLOW, // Fallback if no policy generated yet
69
- reason: 'No security policy generated.',
70
- error: 'No security policy generated.',
71
- };
72
- }
73
- else {
74
- result = await enforcePolicy(this.currentPolicy, input.toolCall, this.config);
75
- }
76
- logConsecaVerdict(this.config, new ConsecaVerdictEvent(userPrompt || '', JSON.stringify(this.currentPolicy || {}), JSON.stringify(input.toolCall), result.decision, result.reason || '', 'error' in result ? result.error : undefined));
77
- return result;
78
- }
79
- async getPolicy(userPrompt, trustedContent, config) {
80
- if (this.activeUserPrompt === userPrompt && this.currentPolicy) {
81
- return this.currentPolicy;
82
- }
83
- const { policy, error } = await generatePolicy(userPrompt, trustedContent, config);
84
- this.currentPolicy = policy;
85
- this.activeUserPrompt = userPrompt;
86
- logConsecaPolicyGeneration(config, new ConsecaPolicyGenerationEvent(userPrompt, trustedContent, JSON.stringify(policy), error));
87
- return policy;
88
- }
89
- extractUserPrompt(input) {
90
- const prompt = input.context.history?.turns.at(-1)?.user.text;
91
- if (prompt) {
92
- return prompt;
93
- }
94
- debugLogger.debug(`[Conseca] extractUserPrompt failed.`);
95
- return null;
96
- }
97
- // Helper methods for testing state
98
- getCurrentPolicy() {
99
- return this.currentPolicy;
100
- }
101
- getActiveUserPrompt() {
102
- return this.activeUserPrompt;
103
- }
104
- }
105
- //# sourceMappingURL=conseca.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"conseca.js","sourceRoot":"","sources":["../../../../src/safety/conseca/conseca.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- export {};