Gemini-Nexus

yeahhe365MIT活跃维护

一款浏览器 AI 助手扩展,把 Gemini 网页版、Gemini API 和 OpenAI 兼容接口统一到侧边栏,能读取网页上下文、处理图片、调用工具并通过 MCP 控制浏览器。

Gemini Nexus 是一款面向浏览器场景的 AI 助手扩展,集成 Gemini Web、Gemini API 与 OpenAI 兼容接口,支持网页上下文、图像处理、工具调用和 MCP 浏览器控制。

v5.5.0发布于 2026-10-14 09:55 UTC1,129star +1 / 7 天151fork同步于 2026-11-10 17:52 UTC

怎么上手

由 README 提炼,执行前请确认
npm install
npm run package:extension
硬件要求按 README 说明

README 未说明硬件要求;这是 Chrome MV3 扩展,在浏览器内运行,模型推理在云端完成。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

给浏览器加一层原生 AI 的 Chrome 扩展,聚合多家模型并支持网页上下文与浏览器控制

一款浏览器 AI 助手扩展,把 Gemini 网页版、Gemini API 和 OpenAI 兼容接口统一到侧边栏,能读取网页上下文、处理图片、调用工具并通过 MCP 控制浏览器。

核心能力

  • 聚合 Gemini Web、Gemini API、OpenAI 兼容及多家第三方 API 供应商
  • 注入浮动工具栏,对选中文本翻译、总结、解释、修语法并回填表单
  • 基于 Chrome DevTools Protocol 执行浏览器控制任务并用原生标签组标记
  • 支持外部 MCP 工具,按 serverId__toolName 路由到多服务器
  • 用摘要压缩与近期轮次裁剪管理上下文,避免超出模型上限

容易踩的坑

Gemini Web 供应商靠逆向内部 RPC 与页面令牌实现,可能违反 Google 服务条款且接口随时可能失效;npm run build 只产出 dist/ 的 UI,必须用 npm run package:extension 并加载 artifacts/chrome-extension 才是完整扩展;Gemini Web 仅支持图片附件,PDF/文本文档需改用 Gemini API。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v5.5.0
  1. v5.5.0最新正式版2026-10-14 · 2026-10-14 09:55 UTC

    Models

    • Gemini 4 Argon 适配:全面上线 Google 官方最新首选模型 Gemini 4 Argon(95a4c0abcba24364,RPC 模式 mode: 8),用于处理复杂任务与深度推理,支持快速(低点)与深度(高点)思考等级切换。
    • Web 逆向渠道别名补齐:新增 gemini-4-argon、gemini-4、4-argon 等别名映射;将最新 Flash-Lite 探测 hash 8c46e95b1a07cecc 纳入别名解析保证平滑兼容。

    Fixed

    • 图片工具黑名单与水印开关不再丢失:view.getFormData() 漏传这两个字段,导致黑名单输入重载即失效,且每次点击保存都会把「移除生成图水印」静默重置为开启。
    • 独立设置页恢复加载 GitHub 元数据:原先调用重命名后已不存在的 fetchGithubData,被可选链静默吞掉,star 数与更新状态从不刷新。
    • TTS 失败提示本地化:错误文案原为硬编码中文,英文界面用户会收到中文报错;现统一走工具栏词典(中/英双语)。
    • 页面快照能力标记重复:快照格式化器对 editable/modal/required/readonly/multiselectable 会输出两遍同一能力 token。
    • Provider 错误信息统一抽取:官方 API 渠道此前直接抛出原始响应体,现与 Anthropic、OpenAI 兼容渠道一致解析 {error:{message}}。

    Security

    • downloadText 对来自 sandbox 消息的文件名执行与 downloadFile 同级的净化(此前仅后者处理该不可信输入)。

    Removed

    • 清理可读性审计遗留死代码:未使用的工具栏图标、孤儿 i18n key、仅供本模块使用的导出、签名相同的纯转发包装(含 shared/media/youtube.js 空壳,其测试改为直接覆盖全局实现,覆盖率保留)。
    • 删除与代码不符的注释:payload 索引写错、把 CDP 控制管理器标注为 MCP、承诺但未绑定的 pointerup 监听、声称「为测试保留」却无任何测试读取的门面。
    • 移除恒真分支、被包含的正则分支、无调用方传入的参数,以及不可达的兜底抛出。
    • 移除样式表与 CSS-in-JS 中的装饰性分节横幅;原有 hygiene 规则只覆盖 // 形式,现已扩展到 /* */ 并补上测试。

    Chore

    • 版本号升级至 5.5.0。

    Full Changelog: https://github.com/yeahhe365/Gemini-Nexus/compare/v5.3.0...v5.5.0

  2. v5.3.02026-09-03 · 2026-09-03 03:37 UTC
    查看更新说明

    Models

    • Gemini 3.8 Flash 适配:全面上线 Google 官方最新首选模型 Gemini 3.8 Flash。
      • Web 逆向免 Key 渠道:默认 Flash 模型标签升级为 3.8 Flash(哈希 56fdd199312815e2),新增 gemini-3.8-flash 别名映射,向后兼容 gemini-3.7-flash。
      • 官方 API 渠道:默认模型更新为 gemini-3.8-flash,默认模型列表更新为 gemini-3.8-flash, gemini-3.5-flash-lite, gemini-3.1-pro-preview。

    UI & Style

    • 复刻 AMC-WebUI 发送按钮:
      • 采用紧凑尺寸 36px × 36px、全圆角 border-radius: 9999px 与 translateY(-2px) 微调居中。
      • 浅色模式背景 #3964fe(悬停 #3358e0),深色模式背景 #679efe(悬停 #5a8de0)。
      • 空输入状态保持底色并启用 40% 透明度(opacity: 0.4)。
      • 生成/停止状态采用实心危险红(浅色 #dc2626 / 深色 #7f1d1d),移除多余外圈旋转动画。
      • 图标全面替换为 AMC 16×16 向上箭头(发送)与实心圆角方块(停止)。
    • 界面设计语言统一与重构:
      • 顶栏模型选择器改为药丸型(Pill)设计,优化下拉选择器宽度计算与响应式适配。
      • 历史会话恢复时抑制重复淡入动效,解决批量还原时的界面闪烁。
      • 修复动作卡片、Markdown 表格样式与 Token 变量层。

    Chore

    • 版本号升级至 5.3.0。

    Full Changelog: https://github.com/yeahhe365/Gemini-Nexus/compare/v5.2.4...v5.3.0

  3. v5.2.42026-08-24 · 2026-08-24 04:15 UTC
    查看更新说明

    Style

    • 内容脚本暗色自适应:新增 --gnx-* token 层(styles/core.js),.toolbar / .ask-window / .image-btn 全部接通 prefers-color-scheme: dark —— 悬浮面板、AI 菜单、markdown 正文/代码块/hljs 高亮在暗色系统下不再是刺眼纯白;浅色下工具条由永久黑改为白底描边,与页面融合。
    • 统一三代蓝:侧栏拖拽高亮 var(--accent-color,#1a73e8) → var(--primary),面板芯片 #e8f0fe/#d2e3fc 与各处 #0b57d0/#0842a0 收敛为 --gnx-primary/-hover/-chip 单一来源。
    • 一致性清理:合并 widget.js 重复 .btn 块、删除 footer.js 重复 border 行、transition: all 改具体属性并补 easing、菜单项补 :focus-visible 焦点环、拖拽把手灰阶入 token、.ai-tool-menu 字体栈对齐 toolbar、hljs 增加暗色配色。
    • token 化:--radius-bubble(用户气泡 16px 入册)、--accent-gold(星标金)、空态标题 font-weight 650→600(CJK 稳定)、提示字号 12.5→13px、消息容器 transition 对齐 --ease-standard。

    Chore

    • 版本号 5.2.3 → 5.2.4。

    Full Changelog: https://github.com/yeahhe365/Gemini-Nexus/compare/v5.2.0...v5.2.4

  4. v5.2.02026-08-22 · 2026-08-22 10:18 UTC
    查看更新说明

    Models

    • Removed Gemini 3.6 Flash (fbb127bbb056c959) from Web model catalog; default now 3.7 Flash (56fdd199312815e2) with legacyMode: 2 and extended capabilities, DEFAULT_STORED_GEMINI_MODEL updated and DEFAULT_OFFICIAL_MODELS now gemini-3.7-flash, gemini-3.5-flash-lite, gemini-3.1-pro-preview; removed gemini-3-flash-thinking alias and its thinking check.

    UI

    • Aligned toolbar Generate Image icon to Cherry Studio lucide Image (m21 15-3.086-3.086...).
    • Aligned Live Artifacts icon to AMC-WebUI Wand2/WandSparkles (m21.64 3.64...).
    • Aligned Explain icon to AMC FileQuestion (M12 17h.01 / M15 2H6... / M9.1 9a3...).
    • Aligned New Chat icon to AMC/Cherry Studio IconNewChat (bubble + plus M13 4H6a2... with scale(1.1)).
    • Added quick hover tooltip for toolbar buttons: custom data-tooltip appears in 0.12s centered above button, suppressing native delayed title via WidgetView.initTooltips.

    Full Changelog: https://github.com/yeahhe365/Gemini-Nexus/compare/v5.1.0...v5.2.0

  5. v5.1.02026-07-22 · 2026-07-22 14:14 UTC
    查看更新说明

    Models

    • Updated reverse Gemini Web model catalog for the 2026-07-21 GA lineup: default 3.6 Flash (fbb127bbb056c959), 3.5 Flash-Lite (cf41b0e0dd7d53e5), and 3.1 Pro (e6fa609c3fa255c0). Removed 3.5 Flash and legacy 3.1 Flash-Lite.
    • Updated Official API defaults to gemini-3.6-flash, gemini-3.5-flash-lite, and gemini-3.1-pro-preview. Dropped gemini-3-flash / gemini-3-flash-preview aliases.

    Removed

    • Removed the experimental Browser MCP server surface (mcp-server/, npm run mcp:http, extension browser_mcp RPC bridge). Side-panel browser control remains internal (ControlManager); external MCP client settings for third-party tools are unchanged.

    Full Changelog: https://github.com/yeahhe365/Gemini-Nexus/compare/v5.0.24...v5.1.0

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Gemini Nexus

    Give your browser a native AI layer


    Project Overview

    Gemini Nexus gives your browser a native AI layer by combining Gemini Web, the Google Gemini API, OpenAI-compatible APIs, and dedicated third-party API providers in one Chrome extension. It is more than a side panel: the extension includes an injected floating toolbar, image and screenshot input, Chrome DevTools Protocol based browser-control tools, and optional external MCP tools for browser-native AI workflows.

    Reverse Engineering & Data Flow Disclosure

    Gemini Web Provider: This extension accesses Google Gemini Web (gemini.google.com) by reverse-engineering internal RPC endpoints and extracting authentication tokens (atValue, blValue, f.sid) from the page HTML. These tokens are stored locally and used to mimic browser requests, enabling access without an official API key. This approach likely violates Google's Terms of Service and may be considered unauthorized access. Requests are sent to Google's servers (gemini.google.com, push.clients6.google.com) with your session credentials.

    Watermark Removal: For Gemini-generated images, the extension removes embedded watermarks (metadata markers) to enable direct download. This strips attribution/signature from AI-generated content. Users should be aware of copyright implications and Google's policies on generated content usage.

    Data Flow: User text, images, and uploaded files are sent to the configured provider's API endpoint. For Gemini Web, data flows to Google servers; for other providers, data flows to their respective endpoints (including user-configured MCP servers). API keys are stored locally in Chrome extension storage and are not transmitted to any third-party beyond the chosen provider.

    Use at your own risk: By using the Gemini Web or watermark removal features, you acknowledge potential ToS violations and assume responsibility for any consequences. The extension authors provide these features for research/experimental purposes and disclaim liability for misuse.

    Capability Overview

    Gemini Nexus currently focuses on these browser AI workflows:

    • Switch among Gemini Web, Gemini API, OpenAI Compatible API, OpenAI Official API, DeepSeek API, OpenRouter API, Qwen / DashScope API, Anthropic API, and Zhipu API, with provider-specific Base URL, API Key, and Model IDs.
    • Enable Gemini Web temporary chats so Web-provider requests are not added to Gemini Recent chats.
    • Use Gemini API Google Search grounding and show web sources in responses.
    • Use OpenAI-compatible web search through Responses API web_search or Chat Completions web_search_options, depending on the current endpoint.
    • Limit side-panel scope by tab to reduce distraction on pages where the assistant is not needed.
    • Re-edit historical user messages and continue from that point; this feature is enabled for API providers only.
    • Manage context with summary compression and recent-turn trimming to reduce the risk of exceeding model context limits.
    • Mark browser-control tasks with Chrome native tab groups and keep list_pages / select_page focused on the controlled scope.
    • Open external links in new browser tabs to avoid failed third-party loading inside the side panel.
    • Preserve settings as much as possible across extension identity and local upgrade paths.

    Provider Comparison

    The project includes provider drivers under services/providers and adapts behavior dynamically in code:

    ProviderEntryModelsStrengthRequirement
    Web Clientweb.jsCurrent Gemini Web chat modesNo API key; reuses the Gemini web session; optional temporary chatsKeep a Google account signed in
    Official APIofficial.jsGemini 3.8 Flash / 3.5 Flash-LiteFast responses with Thinking and Google Search groundingGoogle AI Studio key
    OpenAI Compatibleopenai_compatible.jsGPT, Claude, and compatible modelsHighly extensible; supports Chat Completions / Responses API and optional web searchThird-party service key
    OpenAI Officialopenai_compatible.jsGPT reasoning/search modelsDedicated Responses API path with reasoning summary and optional web searchOpenAI API key
    DeepSeek APIopenai_compatible.jsDeepSeek chat/reasoning modelsDedicated defaults for DeepSeek Chat Completions and reasoning_content displayDeepSeek API key
    OpenRouter APIopenai_compatible.jsOpenRouter model IDsFetches /models, supports provider routing JSON, and sends native reasoningOpenRouter API key
    Qwen / DashScopeopenai_compatible.jsQwen text and VL modelsDedicated DashScope compatible endpoint with enable_thinking and VL image inputDashScope API key
    Anthropic APIanthropic.jsClaude modelsNative Messages API adapter with image input and extended-thinking stream displayAnthropic API key
    Zhipu APIopenai_compatible.jsGLM modelsDedicated GLM Chat Completions profile with native thinking toggle payloadsZhipu API key

    Browser Control

    Built on background/control/ and Chrome DevTools Protocol, Gemini Nexus lets AI perform agentic browser tasks through a local tool loop:

    CategoryCore commandsImplementation
    Navigationnavigate_page, new_page, close_page, list_pages, select_pageManages page lifecycle through chrome.tabs
    Interactionclick, hover, fill, fill_form, press_key, type_textUses Accessibility Tree UIDs for precise actions, hover, batch form fill, shortcuts, and input
    Observationtake_snapshot, wait_for, handle_dialogExtracts reusable accessibility-tree UIDs, waits for target text, and handles blocking dialogs
    Script executionevaluate_scriptRuns custom JavaScript in the page context

    After browser control is enabled, Gemini Nexus locks onto a target tab and uses a Chrome native tab group to show the current task title. select_page switches inside the controlled tab group by default; regular new_page tabs join the group, while background: true opens a separate popup window to reduce focus interruption.

    External MCP Tools

    Gemini Nexus can connect to one or more external MCP servers through SSE, streamable HTTP, or WebSocket, then expose their tools to the existing tool loop.

    Recommended Setup: Local Proxy for stdio Servers

    Chrome extensions cannot directly run stdio-based MCP servers, so the recommended setup is to run a local proxy, such as MCP SuperAssistant Proxy. Configure your MCP servers, including stdio servers, in the proxy, then connect Gemini Nexus to the proxy endpoint.

    Common proxy endpoints:

    • SSE: http://127.0.0.1:3006/sse
    • Streamable HTTP: http://127.0.0.1:3006/mcp
    • WebSocket: ws://127.0.0.1:3006/mcp
    Setup Steps
    1. Start your MCP proxy and configure MCP servers inside it.

    2. In Settings -> Connection -> External MCP Tools:

      • Enable External MCP Tools.
      • Add or select a server entry. Active Server means the entry currently being edited; conversations use all enabled servers.
      • Choose the transport and set the server URL: SSE, streamable HTTP, or WebSocket.
      • Use SSE or streamable HTTP if you need custom request headers; browser-extension WebSocket transport does not support custom headers.
      • Click Test Connection and Refresh Tools.
    3. Optional, and recommended when many tools exist: set Expose Tools to Selected tools only, then enable only the tools you want the model to see or use.

    4. Start a normal conversation. When the model needs tools, it outputs a JSON tool block like the one below. In multi-server mode, the model may use unique tool names in the serverId__toolName format to route calls to a specific server:

      { "tool": "tool_name", "args": { "key": "value" } }
      

    Key Features

    • Smart side panel: Built on the sidePanel API for fast conversation access and full-text history search.
    • Selection toolbar: Injected content scripts let selected text be translated, summarized, explained, grammar-fixed, or inserted back into forms.
    • Image and screenshot input:
      • OCR and screenshot translation: Canvas cropping extracts and translates selected image regions.
      • Screen or window capture: The side panel can use display-capture to select another screen or app window as image input.
      • Floating image detection: Detects page images and shows a floating AI analysis button.
      • Generated image display: Shows fetched Gemini images without local pixel rewriting.
      • Gemini Web currently supports image attachments through the reverse provider. Use Gemini API for PDF/text/document attachments.
    • Safe rendering: Markdown, LaTeX, and code blocks render inside the isolated sandbox environment.

    Gemini Web Maintenance

    Gemini Web is reverse-engineered and accesses Google's internal APIs without official authorization, which likely violates Google's Terms of Service. The contract can change without notice and is documented in docs/gemini-web-reverse.md, including the verified tokens, RPC paths, upload flow, model hashes, temporary-chat markers, unsupported image-preview model routes, and the manual drift check command.

    Quick Start

    Repository Structure

    The repository root is the runnable Chrome extension project root. package.json, manifest.json, Vite config, source code, tests, and packaging scripts all live at the root. Cross-runtime shared utilities live in shared/ and are grouped by capability under shared/attachments/, shared/config/, shared/dom/, shared/logging/, shared/mcp/, shared/media/, shared/messaging/, shared/models/, shared/settings/, shared/text/, shared/ui/, and shared/utils/; the project no longer keeps top-level shared/*.js compatibility entry points. Directory aggregation entry points consistently use an index.js inside the directory to avoid sibling foo.js and foo/ modules. Runtime entry points remain at each runtime root, such as background/index.js, content/index.js, sandbox/index.js, sidepanel/index.js, and the standalone settings page settings/index.js. Runtime code uses snake_case filenames, while repository tooling scripts and workflow files may use kebab-case.

    Install from Release
    1. Download the latest ZIP from Releases and unzip it.
    2. Open chrome://extensions/ in Chrome and enable Developer mode in the top-right corner.
    3. Click Load unpacked and select the extracted folder.
    Build and Package from Source
    npm install
    npm run package:extension
    

    After packaging, choose artifacts/chrome-extension when using Chrome Load unpacked. For development, you can also load the repository root directly, but releases and manual installs should use the packaged directory. npm run build only creates the Vite UI output in dist/; it is not a complete extension directory. The package step merges multiple content scripts into a single content/index.js in manifest.json order and rewrites the packaged manifest, avoiding reliance on a long manual script list in release artifacts.

    Publish to Chrome Web Store

    Chrome Web Store credentials should stay on your local machine and must not be committed:

    cp .env.chrome-webstore.example .env.chrome-webstore
    

    Edit .env.chrome-webstore and fill in CHROME_WEBSTORE_PUBLISHER_ID, CHROME_WEBSTORE_ITEM_ID, and CHROME_WEBSTORE_ACCESS_TOKEN with the https://www.googleapis.com/auth/chromewebstore scope. After preparing the ZIP, run:

    npm run publish:chrome-webstore
    

    The script uploads the ZIP pointed to by CHROME_WEBSTORE_ZIP_PATH through Chrome Web Store API v2, then submits it for review.

    Tech Stack

    • Build tools: Vite + TypeScript
    • Architecture protocols: Chrome MV3 + Chrome DevTools Protocol + local/external MCP tool calls
    • Core libraries: Marked.js, KaTeX, Highlight.js, Fuse.js

    License

    This project is open sourced under the MIT License.

    Acknowledgements

    This project has been shared in the LINUX DO community. Thanks to the community for support and feedback.