@google/gemini-cli 0.40.0-preview.4 → 0.41.0-nightly.20260427.g42587de73

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 (69) hide show
  1. package/README.md +2 -0
  2. package/bundle/{chunk-F73F75XM.js → chunk-6YXSPC34.js} +15 -2
  3. package/bundle/{chunk-BV2W6YE6.js → chunk-AAGEU3BL.js} +2 -2
  4. package/bundle/{chunk-M76FWZ5L.js → chunk-AN7B4FAU.js} +90 -2
  5. package/bundle/{chunk-4XVBQQNJ.js → chunk-DIBSCCT7.js} +38 -11
  6. package/bundle/{chunk-CJQVVQSH.js → chunk-DIGDAAM2.js} +90 -2
  7. package/bundle/{chunk-G356GKHH.js → chunk-DXV2GNZK.js} +1 -1
  8. package/bundle/{chunk-PRZIW6SM.js → chunk-E2PVGI7T.js} +2 -2
  9. package/bundle/{chunk-H7F2VOIJ.js → chunk-EBIQLUW4.js} +38 -11
  10. package/bundle/{chunk-WSTHO4WR.js → chunk-EDS2U2K6.js} +3 -3
  11. package/bundle/{chunk-LMVZLINC.js → chunk-JBPYZI4D.js} +3 -3
  12. package/bundle/{chunk-H4NQBTXN.js → chunk-LFQEL3VY.js} +90 -2
  13. package/bundle/{chunk-KG7ZFMJL.js → chunk-MAZR7GNG.js} +2108 -1100
  14. package/bundle/{chunk-UHHRGNIO.js → chunk-MTD736U4.js} +15 -2
  15. package/bundle/{chunk-LODNDE3S.js → chunk-MWLCQDAR.js} +90 -2
  16. package/bundle/{chunk-547AWTTH.js → chunk-NVZUCT4Q.js} +38 -11
  17. package/bundle/{chunk-CIO3GUGQ.js → chunk-PZYK66PS.js} +2051 -1085
  18. package/bundle/{chunk-HGFADN5A.js → chunk-QAPWMN3Q.js} +1 -1
  19. package/bundle/{chunk-SYPUOR3U.js → chunk-QP7T3P6C.js} +2 -2
  20. package/bundle/{chunk-NV6UCR4K.js → chunk-QU37OIJC.js} +2051 -1085
  21. package/bundle/{chunk-HF7X35D3.js → chunk-QYUVW7FS.js} +38 -11
  22. package/bundle/{chunk-LVHUYMBU.js → chunk-SEC46BJI.js} +2 -2
  23. package/bundle/{chunk-VQ7N6NVX.js → chunk-SVPUDLWF.js} +1 -1
  24. package/bundle/{chunk-63PTTRTA.js → chunk-TIAUGLTD.js} +3 -3
  25. package/bundle/{chunk-ATGIEBEB.js → chunk-UXOWV6CJ.js} +1 -1
  26. package/bundle/{chunk-RENFZ63F.js → chunk-XCXC2RZD.js} +2051 -1085
  27. package/bundle/{chunk-ZQNX6OWU.js → chunk-ZZD6EUQN.js} +3 -3
  28. package/bundle/{cleanup-4EFDM2N7.js → cleanup-5PASNNC4.js} +3 -3
  29. package/bundle/{cleanup-4RRVO4GO.js → cleanup-PWIRVAHI.js} +3 -3
  30. package/bundle/{cleanup-DNS7PXYC.js → cleanup-UX5NEMHM.js} +3 -3
  31. package/bundle/{cleanup-DXHNV2J6.js → cleanup-WBATOWCX.js} +3 -3
  32. package/bundle/{core-WQSFCPEO.js → core-WGFYLLRK.js} +20 -2
  33. package/bundle/{devtoolsService-LPEBYJVD.js → devtoolsService-HNKMOA2D.js} +3 -3
  34. package/bundle/{devtoolsService-S2LBUUZU.js → devtoolsService-PQ7YMVWH.js} +3 -3
  35. package/bundle/{devtoolsService-YCRNWWXE.js → devtoolsService-RNGSRQOZ.js} +3 -3
  36. package/bundle/{devtoolsService-JWET4G6G.js → devtoolsService-Z2MCWSBF.js} +3 -3
  37. package/bundle/{dist-ANTOB3YW.js → dist-D34AS2GG.js} +20 -2
  38. package/bundle/{dist-RIVCP5ZD.js → dist-F2OAYYD2.js} +20 -2
  39. package/bundle/{dist-UH565MTG.js → dist-Q5VBZUT5.js} +20 -2
  40. package/bundle/docs/changelogs/index.md +18 -0
  41. package/bundle/docs/changelogs/latest.md +243 -255
  42. package/bundle/docs/cli/settings.md +19 -13
  43. package/bundle/docs/reference/configuration.md +71 -0
  44. package/bundle/docs/reference/keyboard-shortcuts.md +1 -0
  45. package/bundle/{gemini-JAZVYRDD.js → gemini-BS6JGNC2.js} +24 -179
  46. package/bundle/{gemini-27FQ5BI4.js → gemini-CXXHYL4F.js} +24 -179
  47. package/bundle/{gemini-57EC2ZF7.js → gemini-MWN6XEN7.js} +24 -179
  48. package/bundle/{gemini-TQZRS37Q.js → gemini-R6JM2CNM.js} +24 -179
  49. package/bundle/gemini.js +3 -3
  50. package/bundle/{interactiveCli-L3EK4XEX.js → interactiveCli-ACDBXCG6.js} +1640 -1041
  51. package/bundle/{interactiveCli-MVHR4VV7.js → interactiveCli-FT2L7RG2.js} +1640 -1041
  52. package/bundle/{interactiveCli-E35R6QQC.js → interactiveCli-IRAPLA3H.js} +1640 -1041
  53. package/bundle/{interactiveCli-FPHSBRV3.js → interactiveCli-QIIVZL7W.js} +1640 -1041
  54. package/bundle/{liteRtServerManager-LXEAYAUP.js → liteRtServerManager-2CTTNDIB.js} +4 -4
  55. package/bundle/{liteRtServerManager-ORSW3R4F.js → liteRtServerManager-2LYBQPVS.js} +4 -4
  56. package/bundle/{liteRtServerManager-PI4ZNFB5.js → liteRtServerManager-4DF3SCTA.js} +4 -4
  57. package/bundle/{liteRtServerManager-YYXO5Q3I.js → liteRtServerManager-IU3WCNE6.js} +4 -4
  58. package/bundle/{memoryDiscovery-CZURD35O.js → memoryDiscovery-FPAA4X4J.js} +1 -1
  59. package/bundle/{memoryDiscovery-GZLXKRGB.js → memoryDiscovery-NSOLCG4U.js} +1 -1
  60. package/bundle/node_modules/@google/gemini-cli-devtools/package.json +1 -1
  61. package/bundle/{oauth2-provider-B3NTBNAM.js → oauth2-provider-6TVMKDRI.js} +2 -2
  62. package/bundle/{oauth2-provider-ENF2D4Q7.js → oauth2-provider-HNCA53KG.js} +2 -2
  63. package/bundle/{oauth2-provider-I3G773GE.js → oauth2-provider-V267DDF5.js} +2 -2
  64. package/bundle/{oauth2-provider-WTF7AHQ2.js → oauth2-provider-ZU6AP7MT.js} +2 -2
  65. package/bundle/{start-CRIFZ3SW.js → start-CZ5EM6AM.js} +6 -6
  66. package/bundle/{start-KVFKS3IT.js → start-GOO2DWTA.js} +6 -6
  67. package/bundle/{start-OTLGMCNH.js → start-OVFDMBOO.js} +6 -6
  68. package/bundle/{start-S3REI3X2.js → start-P6Q5N7CP.js} +6 -6
  69. package/package.json +1 -1
@@ -43501,6 +43501,8 @@ var PREVIEW_GEMINI_3_1_FLASH_LITE_MODEL = "gemini-3.1-flash-lite-preview";
43501
43501
  var DEFAULT_GEMINI_MODEL = "gemini-2.5-pro";
43502
43502
  var DEFAULT_GEMINI_FLASH_MODEL = "gemini-2.5-flash";
43503
43503
  var DEFAULT_GEMINI_FLASH_LITE_MODEL = "gemini-2.5-flash-lite";
43504
+ var GEMMA_4_31B_IT_MODEL = "gemma-4-31b-it";
43505
+ var GEMMA_4_26B_A4B_IT_MODEL = "gemma-4-26b-a4b-it";
43504
43506
  var VALID_GEMINI_MODELS = /* @__PURE__ */ new Set([
43505
43507
  PREVIEW_GEMINI_MODEL,
43506
43508
  PREVIEW_GEMINI_3_1_MODEL,
@@ -43509,7 +43511,9 @@ var VALID_GEMINI_MODELS = /* @__PURE__ */ new Set([
43509
43511
  PREVIEW_GEMINI_3_1_FLASH_LITE_MODEL,
43510
43512
  DEFAULT_GEMINI_MODEL,
43511
43513
  DEFAULT_GEMINI_FLASH_MODEL,
43512
- DEFAULT_GEMINI_FLASH_LITE_MODEL
43514
+ DEFAULT_GEMINI_FLASH_LITE_MODEL,
43515
+ GEMMA_4_31B_IT_MODEL,
43516
+ GEMMA_4_26B_A4B_IT_MODEL
43513
43517
  ]);
43514
43518
  var PREVIEW_GEMINI_MODEL_AUTO = "auto-gemini-3";
43515
43519
  var DEFAULT_GEMINI_MODEL_AUTO = "auto-gemini-2.5";
@@ -43631,6 +43635,10 @@ function getDisplayString(model, config) {
43631
43635
  return "Auto (Gemini 3)";
43632
43636
  case DEFAULT_GEMINI_MODEL_AUTO:
43633
43637
  return "Auto (Gemini 2.5)";
43638
+ case GEMMA_4_31B_IT_MODEL:
43639
+ return GEMMA_4_31B_IT_MODEL;
43640
+ case GEMMA_4_26B_A4B_IT_MODEL:
43641
+ return GEMMA_4_26B_A4B_IT_MODEL;
43634
43642
  case GEMINI_MODEL_ALIAS_PRO:
43635
43643
  return PREVIEW_GEMINI_MODEL;
43636
43644
  case GEMINI_MODEL_ALIAS_FLASH:
@@ -43690,10 +43698,13 @@ function supportsMultimodalFunctionResponse(model, config) {
43690
43698
  }
43691
43699
  return model.startsWith("gemini-3-");
43692
43700
  }
43693
- function isActiveModel(model, useGemini3_1 = false, useGemini3_1FlashLite = false, useCustomToolModel = false) {
43701
+ function isActiveModel(model, useGemini3_1 = false, useGemini3_1FlashLite = false, useCustomToolModel = false, experimentalGemma = false) {
43694
43702
  if (!VALID_GEMINI_MODELS.has(model)) {
43695
43703
  return false;
43696
43704
  }
43705
+ if (model === GEMMA_4_31B_IT_MODEL || model === GEMMA_4_26B_A4B_IT_MODEL) {
43706
+ return experimentalGemma;
43707
+ }
43697
43708
  if (model === PREVIEW_GEMINI_3_1_FLASH_LITE_MODEL) {
43698
43709
  return useGemini3_1FlashLite;
43699
43710
  }
@@ -52643,6 +52654,8 @@ export {
52643
52654
  DEFAULT_GEMINI_MODEL,
52644
52655
  DEFAULT_GEMINI_FLASH_MODEL,
52645
52656
  DEFAULT_GEMINI_FLASH_LITE_MODEL,
52657
+ GEMMA_4_31B_IT_MODEL,
52658
+ GEMMA_4_26B_A4B_IT_MODEL,
52646
52659
  VALID_GEMINI_MODELS,
52647
52660
  PREVIEW_GEMINI_MODEL_AUTO,
52648
52661
  DEFAULT_GEMINI_MODEL_AUTO,
@@ -21,7 +21,7 @@ import {
21
21
  require_strip_json_comments,
22
22
  sanitizeFilenamePart,
23
23
  stripAnsi
24
- } from "./chunk-RENFZ63F.js";
24
+ } from "./chunk-QU37OIJC.js";
25
25
  import {
26
26
  CoreEvent,
27
27
  FatalConfigError,
@@ -32,7 +32,7 @@ import {
32
32
  external_exports,
33
33
  getErrorMessage,
34
34
  homedir
35
- } from "./chunk-F73F75XM.js";
35
+ } from "./chunk-6YXSPC34.js";
36
36
  import {
37
37
  __commonJS,
38
38
  __require,
@@ -14598,6 +14598,94 @@ var SETTINGS_SCHEMA = {
14598
14598
  description: "Setting to enable experimental features",
14599
14599
  showInDialog: false,
14600
14600
  properties: {
14601
+ gemma: {
14602
+ type: "boolean",
14603
+ label: "Gemma Models",
14604
+ category: "Experimental",
14605
+ requiresRestart: true,
14606
+ default: false,
14607
+ description: "Enable access to Gemma 4 models (experimental).",
14608
+ showInDialog: true
14609
+ },
14610
+ voiceMode: {
14611
+ type: "boolean",
14612
+ label: "Voice Mode",
14613
+ category: "Experimental",
14614
+ requiresRestart: false,
14615
+ default: false,
14616
+ description: "Enable experimental voice dictation and commands (/voice, /voice model).",
14617
+ showInDialog: true
14618
+ },
14619
+ voice: {
14620
+ type: "object",
14621
+ label: "Voice",
14622
+ category: "Experimental",
14623
+ requiresRestart: false,
14624
+ default: {},
14625
+ description: "Settings for voice mode and transcription.",
14626
+ showInDialog: false,
14627
+ properties: {
14628
+ activationMode: {
14629
+ type: "enum",
14630
+ label: "Voice Activation Mode",
14631
+ category: "Experimental",
14632
+ requiresRestart: false,
14633
+ default: "push-to-talk",
14634
+ description: "How to trigger voice recording with the Space key.",
14635
+ showInDialog: true,
14636
+ options: [
14637
+ { value: "push-to-talk", label: "Push-To-Talk (Hold Space)" },
14638
+ { value: "toggle", label: "Toggle (Press Space to start/stop)" }
14639
+ ]
14640
+ },
14641
+ backend: {
14642
+ type: "enum",
14643
+ label: "Voice Transcription Backend",
14644
+ category: "Experimental",
14645
+ requiresRestart: false,
14646
+ default: "gemini-live",
14647
+ description: "The backend to use for voice transcription.",
14648
+ showInDialog: true,
14649
+ options: [
14650
+ { value: "gemini-live", label: "Gemini Live API (Cloud)" },
14651
+ { value: "whisper", label: "Whisper (Local)" }
14652
+ ]
14653
+ },
14654
+ whisperModel: {
14655
+ type: "enum",
14656
+ label: "Whisper Model",
14657
+ category: "Experimental",
14658
+ requiresRestart: false,
14659
+ default: "ggml-base.en.bin",
14660
+ description: "The Whisper model to use for local transcription.",
14661
+ showInDialog: true,
14662
+ options: [
14663
+ { value: "ggml-tiny.en.bin", label: "Tiny (EN) - Fast (~75MB)" },
14664
+ {
14665
+ value: "ggml-base.en.bin",
14666
+ label: "Base (EN) - Balanced (~142MB)"
14667
+ },
14668
+ {
14669
+ value: "ggml-large-v3-turbo-q5_0.bin",
14670
+ label: "Large v3 Turbo (Q5_0) - High Accuracy (~547MB)"
14671
+ },
14672
+ {
14673
+ value: "ggml-large-v3-turbo-q8_0.bin",
14674
+ label: "Large v3 Turbo (Q8_0) - Max Accuracy (~834MB)"
14675
+ }
14676
+ ]
14677
+ },
14678
+ stopGracePeriodMs: {
14679
+ type: "number",
14680
+ label: "Voice Stop Grace Period (ms)",
14681
+ category: "Experimental",
14682
+ requiresRestart: false,
14683
+ default: 1e3,
14684
+ description: "How long to wait for final transcription after stopping recording.",
14685
+ showInDialog: true
14686
+ }
14687
+ }
14688
+ },
14601
14689
  adk: {
14602
14690
  type: "object",
14603
14691
  label: "ADK",
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  exitCli,
8
8
  require_source
9
- } from "./chunk-HGFADN5A.js";
9
+ } from "./chunk-QAPWMN3Q.js";
10
10
  import {
11
11
  DEFAULT_BACKGROUND_OPACITY,
12
12
  DEFAULT_BORDER_OPACITY,
@@ -59,10 +59,10 @@ import {
59
59
  stripUnsafeCharacters,
60
60
  toCodePoints,
61
61
  validateCustomTheme
62
- } from "./chunk-LODNDE3S.js";
62
+ } from "./chunk-MWLCQDAR.js";
63
63
  import {
64
64
  runExitCleanup
65
- } from "./chunk-SYPUOR3U.js";
65
+ } from "./chunk-AAGEU3BL.js";
66
66
  import {
67
67
  AsyncFzf,
68
68
  AuthType,
@@ -208,7 +208,7 @@ import {
208
208
  stripAnsi,
209
209
  tokenLimit,
210
210
  uiTelemetryService
211
- } from "./chunk-RENFZ63F.js";
211
+ } from "./chunk-QU37OIJC.js";
212
212
  import {
213
213
  ApprovalMode,
214
214
  CoreEvent,
@@ -235,7 +235,7 @@ import {
235
235
  shortenPath,
236
236
  tildeifyPath,
237
237
  unescapePath
238
- } from "./chunk-F73F75XM.js";
238
+ } from "./chunk-6YXSPC34.js";
239
239
  import {
240
240
  require_src
241
241
  } from "./chunk-RJTRUG2J.js";
@@ -35421,6 +35421,7 @@ var Command = /* @__PURE__ */ ((Command2) => {
35421
35421
  Command2["RESTART_APP"] = "app.restart";
35422
35422
  Command2["SUSPEND_APP"] = "app.suspend";
35423
35423
  Command2["SHOW_SHELL_INPUT_UNFOCUS_WARNING"] = "app.showShellUnfocusWarning";
35424
+ Command2["VOICE_MODE_PTT"] = "app.voiceModePTT";
35424
35425
  Command2["BACKGROUND_SHELL_ESCAPE"] = "background.escape";
35425
35426
  Command2["BACKGROUND_SHELL_SELECT"] = "background.select";
35426
35427
  Command2["TOGGLE_BACKGROUND_SHELL"] = "background.toggle";
@@ -35684,9 +35685,7 @@ var defaultKeyBindingConfig = /* @__PURE__ */ new Map([
35684
35685
  ["app.restart" /* RESTART_APP */, [new KeyBinding("r"), new KeyBinding("shift+r")]],
35685
35686
  ["app.suspend" /* SUSPEND_APP */, [new KeyBinding("ctrl+z")]],
35686
35687
  ["app.showShellUnfocusWarning" /* SHOW_SHELL_INPUT_UNFOCUS_WARNING */, [new KeyBinding("tab")]],
35687
- ["app.dumpFrame" /* DUMP_FRAME */, [new KeyBinding("f8")]],
35688
- ["app.startRecording" /* START_RECORDING */, [new KeyBinding("f6")]],
35689
- ["app.stopRecording" /* STOP_RECORDING */, [new KeyBinding("f7")]],
35688
+ ["app.voiceModePTT" /* VOICE_MODE_PTT */, [new KeyBinding("space")]],
35690
35689
  // Background Shell Controls
35691
35690
  ["background.escape" /* BACKGROUND_SHELL_ESCAPE */, [new KeyBinding("escape")]],
35692
35691
  ["background.select" /* BACKGROUND_SHELL_SELECT */, [new KeyBinding("enter")]],
@@ -35698,7 +35697,10 @@ var defaultKeyBindingConfig = /* @__PURE__ */ new Map([
35698
35697
  ["background.unfocusWarning" /* SHOW_BACKGROUND_SHELL_UNFOCUS_WARNING */, [new KeyBinding("tab")]],
35699
35698
  // Extension Controls
35700
35699
  ["extension.update" /* UPDATE_EXTENSION */, [new KeyBinding("i")]],
35701
- ["extension.link" /* LINK_EXTENSION */, [new KeyBinding("l")]]
35700
+ ["extension.link" /* LINK_EXTENSION */, [new KeyBinding("l")]],
35701
+ ["app.dumpFrame" /* DUMP_FRAME */, [new KeyBinding("f8")]],
35702
+ ["app.startRecording" /* START_RECORDING */, [new KeyBinding("f6")]],
35703
+ ["app.stopRecording" /* STOP_RECORDING */, [new KeyBinding("f7")]]
35702
35704
  ]);
35703
35705
  var keybindingsSchema = external_exports.array(
35704
35706
  external_exports.object({
@@ -55004,7 +55006,7 @@ var authCommand = {
55004
55006
  import process29 from "node:process";
55005
55007
 
55006
55008
  // packages/cli/src/generated/git-commit.ts
55007
- var GIT_COMMIT_INFO = "31bdf112d";
55009
+ var GIT_COMMIT_INFO = "8b7b1394b";
55008
55010
 
55009
55011
  // packages/cli/src/ui/utils/historyExportUtils.ts
55010
55012
  import * as fsPromises from "node:fs/promises";
@@ -60489,7 +60491,7 @@ Use /mcp auth <server-name> to authenticate.`
60489
60491
  type: "info",
60490
60492
  text: `Starting OAuth authentication for MCP server '${serverName}'...`
60491
60493
  });
60492
- const { MCPOAuthProvider } = await import("./dist-RIVCP5ZD.js");
60494
+ const { MCPOAuthProvider } = await import("./dist-D34AS2GG.js");
60493
60495
  let oauthConfig = server.oauth;
60494
60496
  if (!oauthConfig) {
60495
60497
  oauthConfig = { enabled: false };
@@ -78865,6 +78867,30 @@ var gemmaStatusCommand = {
78865
78867
  }
78866
78868
  };
78867
78869
 
78870
+ // packages/cli/src/ui/commands/voiceCommand.ts
78871
+ var voiceCommand = {
78872
+ name: "voice",
78873
+ altNames: [],
78874
+ description: "Toggle voice dictation mode",
78875
+ kind: "built-in" /* BUILT_IN */,
78876
+ autoExecute: true,
78877
+ action: (context) => {
78878
+ context.ui.toggleVoiceMode();
78879
+ },
78880
+ subCommands: [
78881
+ {
78882
+ name: "model",
78883
+ description: "Manage voice transcription models",
78884
+ kind: "built-in" /* BUILT_IN */,
78885
+ autoExecute: true,
78886
+ action: async () => ({
78887
+ type: "dialog",
78888
+ dialog: "voice-model"
78889
+ })
78890
+ }
78891
+ ]
78892
+ };
78893
+
78868
78894
  // packages/cli/src/services/BuiltinCommandLoader.ts
78869
78895
  var BuiltinCommandLoader = class {
78870
78896
  constructor(config) {
@@ -79001,6 +79027,7 @@ var BuiltinCommandLoader = class {
79001
79027
  vimCommand,
79002
79028
  setupGithubCommand,
79003
79029
  terminalSetupCommand,
79030
+ ...this.config?.isVoiceModeEnabled() ? [voiceCommand] : [],
79004
79031
  ...this.config?.getContentGeneratorConfig()?.authType === AuthType.LOGIN_WITH_GOOGLE ? [upgradeCommand] : []
79005
79032
  ];
79006
79033
  handle?.end();