feat: complete rebranding to Gemini Nexus with improved UI, proxies and documentation

This commit is contained in:
Gemini Nexus Bot committed 2026-04-22 00:00:56 -03:00
1 parent e524a340cb
commit 433dccbaa9
108 files changed
+1004 -1139

No files matched your search

@@ -2,7 +2,7 @@ import { Injectable, Logger } from '@nestjs/common';
import axios, { AxiosProxyConfig, AxiosRequestConfig, AxiosResponse } from 'axios';
import { isEmpty, isFunction, isNil, isObjectLike, isString } from 'lodash-es';
import { GeminiRequest, GeminiResponse } from '../interfaces/request-interfaces';
import { GeminiInternalRequest } from '../../../../lib/antigravity/types';
import { GeminiInternalRequest } from '../../../../lib/geminiNexus/types';
import { getServerConfig } from '../../../server-config';
import { resolveRequestUserAgent } from '../request-user-agent';
import { UpstreamRequestError } from './upstream-error';
@@ -18,7 +18,7 @@ import { ProxyGuard } from './proxy.guard';
import { ProxyService } from './proxy.service';
import { GeminiRequest, GeminiResponse } from './interfaces/request-interfaces';
import { getServerConfig } from '../../server-config';
import { getAllDynamicModels } from '../../../lib/antigravity/ModelMapping';
import { getAllDynamicModels } from '../../../lib/geminiNexus/ModelMapping';
import { TokenManagerService } from './token-manager.service';
type GeminiModelMetadata = {
+1 -1
View File
@@ -28,7 +28,7 @@ import {
getAllDynamicModels,
MODEL_LIST_CREATED_AT,
MODEL_LIST_OWNER,
} from '../../../lib/antigravity/ModelMapping';
} from '../../../lib/geminiNexus/ModelMapping';
import { getServerConfig } from '../../server-config';
import { TokenManagerService } from './token-manager.service';
+9 -9
View File
@@ -4,18 +4,18 @@ import { TokenManagerService } from './token-manager.service';
import { GeminiClient } from './clients/gemini.client';
import { v4 as uuidv4 } from 'uuid';
import { Observable } from 'rxjs';
import { transformClaudeRequestIn } from '../../../lib/antigravity/ClaudeRequestMapper';
import { transformResponse } from '../../../lib/antigravity/ClaudeResponseMapper';
import { StreamingState, PartProcessor } from '../../../lib/antigravity/ClaudeStreamingMapper';
import { transformClaudeRequestIn } from '../../../lib/geminiNexus/ClaudeRequestMapper';
import { transformResponse } from '../../../lib/geminiNexus/ClaudeResponseMapper';
import { StreamingState, PartProcessor } from '../../../lib/geminiNexus/ClaudeStreamingMapper';
import {
ClaudeRequest,
ClaudeResponse,
GeminiInternalRequest,
GeminiPart as InternalGeminiPart,
} from '../../../lib/antigravity/types';
import { calculateRetryDelay, sleep } from '../../../lib/antigravity/retry-utils';
import { normalizeObjectJsonSchema } from '../../../lib/antigravity/JsonSchemaUtils';
import { classifyStreamError } from '../../../lib/antigravity/stream-error-utils';
} from '../../../lib/geminiNexus/types';
import { calculateRetryDelay, sleep } from '../../../lib/geminiNexus/retry-utils';
import { normalizeObjectJsonSchema } from '../../../lib/geminiNexus/JsonSchemaUtils';
import { classifyStreamError } from '../../../lib/geminiNexus/stream-error-utils';
import {
OpenAIChatRequest,
AnthropicChatRequest,
@@ -29,8 +29,8 @@ import { getServerConfig } from '../../server-config';
import {
normalizeGeminiModelAlias,
resolveModelRoute,
} from '../../../lib/antigravity/ModelMapping';
import { getMaxOutputTokens, getThinkingBudget } from '../../../lib/antigravity/ModelSpecs';
} from '../../../lib/geminiNexus/ModelMapping';
import { getMaxOutputTokens, getThinkingBudget } from '../../../lib/geminiNexus/ModelSpecs';
import { resolveRequestUserAgent } from './request-user-agent';
import { UpstreamRequestError } from './clients/upstream-error';
@@ -1,10 +1,10 @@
import axios from 'axios';
import { isString } from 'lodash-es';
import { getAntigravityVersion } from '../../../utils/antigravityVersion';
import { getGeminiNexusVersion } from '../../../utils/geminiNexusVersion';
import { logger } from '../../../utils/logger';
const REMOTE_VERSION_URL = 'https://antigravity-auto-updater-974169037036.us-central1.run.app';
const CHANGELOG_URL = 'https://antigravity.google/changelog';
const REMOTE_VERSION_URL = 'https://geminiNexus-auto-updater-974169037036.us-central1.run.app';
const CHANGELOG_URL = 'https://geminiNexus.google/changelog';
export const FALLBACK_VERSION = '1.22.2';
const DEFAULT_REMOTE_TIMEOUT_MS = 2500;
const VERSION_REGEX = /\d+\.\d+\.\d+/g;
@@ -57,7 +57,7 @@ function getArchTag(): string {
}
export function buildUserAgent(version: string): string {
return `antigravity/${version} ${getPlatformTag()}/${getArchTag()}`;
return `geminiNexus/${version} ${getPlatformTag()}/${getArchTag()}`;
}
function compareSemverVersions(left: string, right: string): number {
@@ -103,7 +103,7 @@ function shouldSkipRemoteVersionLookup(): boolean {
export function resolveLocalInstalledVersion(): string | null {
let localVersionString: string;
try {
localVersionString = getAntigravityVersion().shortVersion;
localVersionString = getGeminiNexusVersion().shortVersion;
const rawVersion = normalizeNonEmptyString(localVersionString);
if (!rawVersion) {
return null;
@@ -5,7 +5,7 @@ import { CloudAccount, CloudQuotaData } from '../../../types/cloudAccount';
import { GoogleAPIService } from '../../../services/GoogleAPIService';
import { getServerConfig } from '../../server-config';
import { RateLimitReason, RateLimitTracker } from './rate-limit-tracker';
import { updateDynamicForwardingRules } from '../../../lib/antigravity/ModelMapping';
import { updateDynamicForwardingRules } from '../../../lib/geminiNexus/ModelMapping';
interface TokenData {
email: string;