@google/gemini-cli-a2a-server 0.29.3 → 0.29.4
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.
- package/dist/a2a-server.mjs +64 -28
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
package/dist/a2a-server.mjs
CHANGED
|
@@ -328727,6 +328727,8 @@ function getResponseText(response) {
|
|
|
328727
328727
|
|
|
328728
328728
|
// packages/core/dist/src/config/models.js
|
|
328729
328729
|
var PREVIEW_GEMINI_MODEL = "gemini-3-pro-preview";
|
|
328730
|
+
var PREVIEW_GEMINI_3_1_MODEL = "gemini-3.1-pro-preview";
|
|
328731
|
+
var PREVIEW_GEMINI_3_1_CUSTOM_TOOLS_MODEL = "gemini-3.1-pro-preview-customtools";
|
|
328730
328732
|
var PREVIEW_GEMINI_FLASH_MODEL = "gemini-3-flash-preview";
|
|
328731
328733
|
var DEFAULT_GEMINI_MODEL = "gemini-2.5-pro";
|
|
328732
328734
|
var DEFAULT_GEMINI_FLASH_MODEL = "gemini-2.5-flash";
|
|
@@ -328739,18 +328741,20 @@ var GEMINI_MODEL_ALIAS_FLASH = "flash";
|
|
|
328739
328741
|
var GEMINI_MODEL_ALIAS_FLASH_LITE = "flash-lite";
|
|
328740
328742
|
var DEFAULT_GEMINI_EMBEDDING_MODEL = "gemini-embedding-001";
|
|
328741
328743
|
var DEFAULT_THINKING_MODE = 8192;
|
|
328742
|
-
function resolveModel(requestedModel) {
|
|
328744
|
+
function resolveModel(requestedModel, useGemini3_1 = false, useCustomToolModel = false) {
|
|
328743
328745
|
switch (requestedModel) {
|
|
328744
|
-
case
|
|
328746
|
+
case PREVIEW_GEMINI_MODEL:
|
|
328747
|
+
case PREVIEW_GEMINI_MODEL_AUTO:
|
|
328748
|
+
case GEMINI_MODEL_ALIAS_AUTO:
|
|
328749
|
+
case GEMINI_MODEL_ALIAS_PRO: {
|
|
328750
|
+
if (useGemini3_1) {
|
|
328751
|
+
return useCustomToolModel ? PREVIEW_GEMINI_3_1_CUSTOM_TOOLS_MODEL : PREVIEW_GEMINI_3_1_MODEL;
|
|
328752
|
+
}
|
|
328745
328753
|
return PREVIEW_GEMINI_MODEL;
|
|
328746
328754
|
}
|
|
328747
328755
|
case DEFAULT_GEMINI_MODEL_AUTO: {
|
|
328748
328756
|
return DEFAULT_GEMINI_MODEL;
|
|
328749
328757
|
}
|
|
328750
|
-
case GEMINI_MODEL_ALIAS_AUTO:
|
|
328751
|
-
case GEMINI_MODEL_ALIAS_PRO: {
|
|
328752
|
-
return PREVIEW_GEMINI_MODEL;
|
|
328753
|
-
}
|
|
328754
328758
|
case GEMINI_MODEL_ALIAS_FLASH: {
|
|
328755
328759
|
return PREVIEW_GEMINI_FLASH_MODEL;
|
|
328756
328760
|
}
|
|
@@ -328762,7 +328766,7 @@ function resolveModel(requestedModel) {
|
|
|
328762
328766
|
}
|
|
328763
328767
|
}
|
|
328764
328768
|
}
|
|
328765
|
-
function resolveClassifierModel(requestedModel, modelAlias) {
|
|
328769
|
+
function resolveClassifierModel(requestedModel, modelAlias, useGemini3_1 = false, useCustomToolModel = false) {
|
|
328766
328770
|
if (modelAlias === GEMINI_MODEL_ALIAS_FLASH) {
|
|
328767
328771
|
if (requestedModel === DEFAULT_GEMINI_MODEL_AUTO || requestedModel === DEFAULT_GEMINI_MODEL) {
|
|
328768
328772
|
return DEFAULT_GEMINI_FLASH_MODEL;
|
|
@@ -328772,10 +328776,10 @@ function resolveClassifierModel(requestedModel, modelAlias) {
|
|
|
328772
328776
|
}
|
|
328773
328777
|
return resolveModel(GEMINI_MODEL_ALIAS_FLASH);
|
|
328774
328778
|
}
|
|
328775
|
-
return resolveModel(requestedModel);
|
|
328779
|
+
return resolveModel(requestedModel, useGemini3_1, useCustomToolModel);
|
|
328776
328780
|
}
|
|
328777
328781
|
function isPreviewModel(model) {
|
|
328778
|
-
return model === PREVIEW_GEMINI_MODEL || model === PREVIEW_GEMINI_FLASH_MODEL || model === PREVIEW_GEMINI_MODEL_AUTO;
|
|
328782
|
+
return model === PREVIEW_GEMINI_MODEL || model === PREVIEW_GEMINI_3_1_MODEL || model === PREVIEW_GEMINI_FLASH_MODEL || model === PREVIEW_GEMINI_MODEL_AUTO;
|
|
328779
328783
|
}
|
|
328780
328784
|
function isGemini3Model(model) {
|
|
328781
328785
|
const resolved = resolveModel(model);
|
|
@@ -329195,7 +329199,7 @@ var __filename = fileURLToPath5(import.meta.url);
|
|
|
329195
329199
|
var __dirname3 = path22.dirname(__filename);
|
|
329196
329200
|
async function getVersion() {
|
|
329197
329201
|
const pkgJson = await getPackageJson(__dirname3);
|
|
329198
|
-
return "0.29.
|
|
329202
|
+
return "0.29.4";
|
|
329199
329203
|
}
|
|
329200
329204
|
|
|
329201
329205
|
// packages/core/dist/src/code_assist/experiments/client_metadata.js
|
|
@@ -332740,8 +332744,8 @@ var Float64Vector = import_vector.default.Float64Vector;
|
|
|
332740
332744
|
var PointerVector = import_vector.default.PointerVector;
|
|
332741
332745
|
|
|
332742
332746
|
// packages/core/dist/src/generated/git-commit.js
|
|
332743
|
-
var GIT_COMMIT_INFO = "
|
|
332744
|
-
var CLI_VERSION = "0.29.
|
|
332747
|
+
var GIT_COMMIT_INFO = "069641f65";
|
|
332748
|
+
var CLI_VERSION = "0.29.4";
|
|
332745
332749
|
|
|
332746
332750
|
// packages/core/dist/src/ide/detect-ide.js
|
|
332747
332751
|
var IDE_DEFINITIONS = {
|
|
@@ -336221,7 +336225,7 @@ async function createContentGenerator(config3, gcConfig, sessionId2) {
|
|
|
336221
336225
|
return new LoggingContentGenerator(fakeGenerator, gcConfig);
|
|
336222
336226
|
}
|
|
336223
336227
|
const version4 = await getVersion();
|
|
336224
|
-
const model = resolveModel(gcConfig.getModel());
|
|
336228
|
+
const model = resolveModel(gcConfig.getModel(), config3.authType === AuthType2.USE_GEMINI || config3.authType === AuthType2.USE_VERTEX_AI || (await gcConfig.getGemini31Launched?.() ?? false));
|
|
336225
336229
|
const customHeadersEnv = process.env["GEMINI_CLI_CUSTOM_HEADERS"] || void 0;
|
|
336226
336230
|
const userAgent = `GeminiCLI/${version4}/${model} (${process.platform}; ${process.arch})`;
|
|
336227
336231
|
const customHeadersMap = parseCustomHeaders(customHeadersEnv);
|
|
@@ -374571,7 +374575,7 @@ function resolvePolicyChain(config3, preferredModel, wrapsAround = false) {
|
|
|
374571
374575
|
const modelFromConfig = preferredModel ?? config3.getActiveModel?.() ?? config3.getModel();
|
|
374572
374576
|
const configuredModel = config3.getModel();
|
|
374573
374577
|
let chain2;
|
|
374574
|
-
const resolvedModel = resolveModel(modelFromConfig);
|
|
374578
|
+
const resolvedModel = resolveModel(modelFromConfig, config3.getGemini31LaunchedSync?.() ?? false);
|
|
374575
374579
|
const isAutoPreferred = preferredModel ? isAutoModel(preferredModel) : false;
|
|
374576
374580
|
const isAutoConfigured = isAutoModel(configuredModel);
|
|
374577
374581
|
if (resolvedModel === DEFAULT_GEMINI_FLASH_LITE_MODEL) {
|
|
@@ -386851,9 +386855,10 @@ var GeminiChat = class {
|
|
|
386851
386855
|
const getAvailabilityContext = createAvailabilityContextProvider(this.config, () => lastModelToUse);
|
|
386852
386856
|
const initialActiveModel = this.config.getActiveModel();
|
|
386853
386857
|
const apiCall = async () => {
|
|
386854
|
-
|
|
386858
|
+
const useGemini3_1 = await this.config.getGemini31Launched?.() ?? false;
|
|
386859
|
+
let modelToUse = resolveModel(lastModelToUse, useGemini3_1);
|
|
386855
386860
|
if (this.config.getActiveModel() !== initialActiveModel) {
|
|
386856
|
-
modelToUse = resolveModel(this.config.getActiveModel());
|
|
386861
|
+
modelToUse = resolveModel(this.config.getActiveModel(), useGemini3_1);
|
|
386857
386862
|
}
|
|
386858
386863
|
if (modelToUse !== lastModelToUse) {
|
|
386859
386864
|
const { generateContentConfig: newConfig } = this.config.modelConfigService.getResolvedConfig({
|
|
@@ -388737,7 +388742,7 @@ var PromptProvider = class {
|
|
|
388737
388742
|
const toolNames = config3.getToolRegistry().getAllToolNames();
|
|
388738
388743
|
const enabledToolNames = new Set(toolNames);
|
|
388739
388744
|
const approvedPlanPath = config3.getApprovedPlanPath();
|
|
388740
|
-
const desiredModel = resolveModel(config3.getActiveModel());
|
|
388745
|
+
const desiredModel = resolveModel(config3.getActiveModel(), config3.getGemini31LaunchedSync?.() ?? false);
|
|
388741
388746
|
const isGemini3 = isPreviewModel(desiredModel);
|
|
388742
388747
|
const activeSnippets = isGemini3 ? snippets_exports : snippets_legacy_exports;
|
|
388743
388748
|
const contextFilenames = getAllGeminiMdFilenames();
|
|
@@ -388826,7 +388831,7 @@ ${mcpToolsList}`;
|
|
|
388826
388831
|
return sanitizedPrompt;
|
|
388827
388832
|
}
|
|
388828
388833
|
getCompressionPrompt(config3) {
|
|
388829
|
-
const desiredModel = resolveModel(config3.getActiveModel());
|
|
388834
|
+
const desiredModel = resolveModel(config3.getActiveModel(), config3.getGemini31LaunchedSync?.() ?? false);
|
|
388830
388835
|
const isGemini3 = isPreviewModel(desiredModel);
|
|
388831
388836
|
const activeSnippets = isGemini3 ? snippets_exports : snippets_legacy_exports;
|
|
388832
388837
|
return activeSnippets.getCompressionPrompt();
|
|
@@ -389340,6 +389345,7 @@ function findCompressSplitPoint(contents, fraction) {
|
|
|
389340
389345
|
function modelStringToModelConfigAlias(model) {
|
|
389341
389346
|
switch (model) {
|
|
389342
389347
|
case PREVIEW_GEMINI_MODEL:
|
|
389348
|
+
case PREVIEW_GEMINI_3_1_MODEL:
|
|
389343
389349
|
return "chat-compression-3-pro";
|
|
389344
389350
|
case PREVIEW_GEMINI_FLASH_MODEL:
|
|
389345
389351
|
return "chat-compression-3-flash";
|
|
@@ -390111,7 +390117,7 @@ var GeminiClient = class {
|
|
|
390111
390117
|
if (this.currentSequenceModel) {
|
|
390112
390118
|
return this.currentSequenceModel;
|
|
390113
390119
|
}
|
|
390114
|
-
return resolveModel(this.config.getActiveModel());
|
|
390120
|
+
return resolveModel(this.config.getActiveModel(), this.config.getGemini31LaunchedSync?.() ?? false);
|
|
390115
390121
|
}
|
|
390116
390122
|
async *processTurn(request3, signal, prompt_id, boundedTurns, isInvalidStreamRetry, displayContent) {
|
|
390117
390123
|
let turn = new Turn(this.getChat(), prompt_id);
|
|
@@ -395390,7 +395396,7 @@ var ModelAvailabilityService = class {
|
|
|
395390
395396
|
var DefaultStrategy = class {
|
|
395391
395397
|
name = "default";
|
|
395392
395398
|
async route(_context, config3, _baseLlmClient) {
|
|
395393
|
-
const defaultModel = resolveModel(config3.getModel());
|
|
395399
|
+
const defaultModel = resolveModel(config3.getModel(), config3.getGemini31LaunchedSync?.() ?? false);
|
|
395394
395400
|
return {
|
|
395395
395401
|
model: defaultModel,
|
|
395396
395402
|
metadata: {
|
|
@@ -395524,7 +395530,9 @@ var ClassifierStrategy = class {
|
|
|
395524
395530
|
const routerResponse = ClassifierResponseSchema.parse(jsonResponse);
|
|
395525
395531
|
const reasoning = routerResponse.reasoning;
|
|
395526
395532
|
const latencyMs = Date.now() - startTime;
|
|
395527
|
-
const
|
|
395533
|
+
const useGemini3_1 = await config3.getGemini31Launched?.() ?? false;
|
|
395534
|
+
const useCustomToolModel = useGemini3_1 && config3.getContentGeneratorConfig().authType === AuthType2.USE_GEMINI;
|
|
395535
|
+
const selectedModel = resolveClassifierModel(model, routerResponse.model_choice, useGemini3_1, useCustomToolModel);
|
|
395528
395536
|
return {
|
|
395529
395537
|
model: selectedModel,
|
|
395530
395538
|
metadata: {
|
|
@@ -395658,7 +395666,9 @@ var NumericalClassifierStrategy = class {
|
|
|
395658
395666
|
const routerResponse = ClassifierResponseSchema2.parse(jsonResponse);
|
|
395659
395667
|
const score = routerResponse.complexity_score;
|
|
395660
395668
|
const { threshold, groupLabel, modelAlias } = await this.getRoutingDecision(score, config3, config3.getSessionId() || "unknown-session");
|
|
395661
|
-
const
|
|
395669
|
+
const useGemini3_1 = await config3.getGemini31Launched?.() ?? false;
|
|
395670
|
+
const useCustomToolModel = useGemini3_1 && config3.getContentGeneratorConfig().authType === AuthType2.USE_GEMINI;
|
|
395671
|
+
const selectedModel = resolveClassifierModel(model, modelAlias, useGemini3_1, useCustomToolModel);
|
|
395662
395672
|
const latencyMs = Date.now() - startTime;
|
|
395663
395673
|
return {
|
|
395664
395674
|
model: selectedModel,
|
|
@@ -395750,7 +395760,7 @@ var FallbackStrategy = class {
|
|
|
395750
395760
|
name = "fallback";
|
|
395751
395761
|
async route(context2, config3, _baseLlmClient) {
|
|
395752
395762
|
const requestedModel = context2.requestedModel ?? config3.getModel();
|
|
395753
|
-
const resolvedModel = resolveModel(requestedModel);
|
|
395763
|
+
const resolvedModel = resolveModel(requestedModel, config3.getGemini31LaunchedSync?.() ?? false);
|
|
395754
395764
|
const service = config3.getModelAvailabilityService();
|
|
395755
395765
|
const snapshot = service.snapshot(resolvedModel);
|
|
395756
395766
|
if (snapshot.available) {
|
|
@@ -395780,7 +395790,7 @@ var OverrideStrategy = class {
|
|
|
395780
395790
|
return null;
|
|
395781
395791
|
}
|
|
395782
395792
|
return {
|
|
395783
|
-
model: resolveModel(overrideModel),
|
|
395793
|
+
model: resolveModel(overrideModel, config3.getGemini31LaunchedSync?.() ?? false),
|
|
395784
395794
|
metadata: {
|
|
395785
395795
|
source: this.name,
|
|
395786
395796
|
latencyMs: 0,
|
|
@@ -405356,7 +405366,8 @@ var ExperimentFlags = {
|
|
|
405356
405366
|
ENABLE_ADMIN_CONTROLS: 45752213,
|
|
405357
405367
|
MASKING_PROTECTION_THRESHOLD: 45758817,
|
|
405358
405368
|
MASKING_PRUNABLE_THRESHOLD: 45758818,
|
|
405359
|
-
MASKING_PROTECT_LATEST_TURN: 45758819
|
|
405369
|
+
MASKING_PROTECT_LATEST_TURN: 45758819,
|
|
405370
|
+
GEMINI_3_1_PRO_LAUNCHED: 45760185
|
|
405360
405371
|
};
|
|
405361
405372
|
|
|
405362
405373
|
// packages/core/dist/src/config/config.js
|
|
@@ -409277,6 +409288,9 @@ var Config = class {
|
|
|
409277
409288
|
this.geminiClient.stripThoughtsFromHistory();
|
|
409278
409289
|
}
|
|
409279
409290
|
this.modelAvailabilityService.reset();
|
|
409291
|
+
if (this.contentGeneratorConfig) {
|
|
409292
|
+
this.contentGeneratorConfig.authType = void 0;
|
|
409293
|
+
}
|
|
409280
409294
|
const newContentGeneratorConfig = await createContentGeneratorConfig(this, authMethod);
|
|
409281
409295
|
this.contentGenerator = await createContentGenerator(newContentGeneratorConfig, this, this.getSessionId());
|
|
409282
409296
|
this.contentGeneratorConfig = newContentGeneratorConfig;
|
|
@@ -409458,7 +409472,7 @@ var Config = class {
|
|
|
409458
409472
|
if (pooled.remaining !== void 0) {
|
|
409459
409473
|
return pooled.remaining;
|
|
409460
409474
|
}
|
|
409461
|
-
const primaryModel = resolveModel(this.getModel());
|
|
409475
|
+
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync());
|
|
409462
409476
|
return this.modelQuotas.get(primaryModel)?.remaining;
|
|
409463
409477
|
}
|
|
409464
409478
|
getQuotaLimit() {
|
|
@@ -409466,7 +409480,7 @@ var Config = class {
|
|
|
409466
409480
|
if (pooled.limit !== void 0) {
|
|
409467
409481
|
return pooled.limit;
|
|
409468
409482
|
}
|
|
409469
|
-
const primaryModel = resolveModel(this.getModel());
|
|
409483
|
+
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync());
|
|
409470
409484
|
return this.modelQuotas.get(primaryModel)?.limit;
|
|
409471
409485
|
}
|
|
409472
409486
|
getQuotaResetTime() {
|
|
@@ -409474,7 +409488,7 @@ var Config = class {
|
|
|
409474
409488
|
if (pooled.resetTime !== void 0) {
|
|
409475
409489
|
return pooled.resetTime;
|
|
409476
409490
|
}
|
|
409477
|
-
const primaryModel = resolveModel(this.getModel());
|
|
409491
|
+
const primaryModel = resolveModel(this.getModel(), this.getGemini31LaunchedSync());
|
|
409478
409492
|
return this.modelQuotas.get(primaryModel)?.resetTime;
|
|
409479
409493
|
}
|
|
409480
409494
|
getEmbeddingModel() {
|
|
@@ -410083,6 +410097,28 @@ var Config = class {
|
|
|
410083
410097
|
await this.ensureExperimentsLoaded();
|
|
410084
410098
|
return this.experiments?.flags[ExperimentFlags.BANNER_TEXT_CAPACITY_ISSUES]?.stringValue ?? "";
|
|
410085
410099
|
}
|
|
410100
|
+
/**
|
|
410101
|
+
* Returns whether Gemini 3.1 has been launched.
|
|
410102
|
+
* This method is async and ensures that experiments are loaded before returning the result.
|
|
410103
|
+
*/
|
|
410104
|
+
async getGemini31Launched() {
|
|
410105
|
+
await this.ensureExperimentsLoaded();
|
|
410106
|
+
return this.getGemini31LaunchedSync();
|
|
410107
|
+
}
|
|
410108
|
+
/**
|
|
410109
|
+
* Returns whether Gemini 3.1 has been launched.
|
|
410110
|
+
*
|
|
410111
|
+
* Note: This method should only be called after startup, once experiments have been loaded.
|
|
410112
|
+
* If you need to call this during startup or from an async context, use
|
|
410113
|
+
* getGemini31Launched instead.
|
|
410114
|
+
*/
|
|
410115
|
+
getGemini31LaunchedSync() {
|
|
410116
|
+
const authType = this.contentGeneratorConfig?.authType;
|
|
410117
|
+
if (authType === AuthType2.USE_GEMINI || authType === AuthType2.USE_VERTEX_AI) {
|
|
410118
|
+
return true;
|
|
410119
|
+
}
|
|
410120
|
+
return this.experiments?.flags[ExperimentFlags.GEMINI_3_1_PRO_LAUNCHED]?.boolValue ?? false;
|
|
410121
|
+
}
|
|
410086
410122
|
async ensureExperimentsLoaded() {
|
|
410087
410123
|
if (!this.experimentsPromise) {
|
|
410088
410124
|
return;
|