GP

Gem Prompt Extractor

通过对话反推 Google Gem 背后的系统指令

{{ agentConnected ? '本地代理已连接' : '等待本地代理' }} {{ isLocalHost ? statusText : (useLocalAgent ? statusText : (statusText + ' · 无头')) }}

推荐流程

网站在远程,Gem 在你本机 Chrome 里打开

本机开 VPN / 系统代理后,与平时用浏览器上谷歌一样即可,不要求远程服务器能访问 Google。下面保持「本机接管浏览器」勾选(默认已勾选),按顺序做即可。

  1. 本机开启 VPN(或你常用的翻墙方式),确认能正常打开 gemini.google.com
  2. 下载「本地代理」压缩包 → 解压 → 双击 start_local_agent.vbs(详见下方黄/绿提示)
  3. 回到本页,右上角显示 本地代理已连接 后,填 Gem 链接与 DeepSeek Key,点「开始提取」

首次若弹出 Chrome 登录 Google,登录一次即可;会话会保存在代理目录下的浏览器数据里,下次一般不再弹窗。

备用方案

若希望不跑本地代理脚本、把整站放在自己电脑上跑:下载一键包,解压后双击 一键启动.bat,用浏览器打开 http://127.0.0.1:8765 即可(与访问远程站是两套用法,二选一)。

下载一键启动包(整站本机)

本机模式(内嵌 http://127.0.0.1:8765 即可):登录状态保存在项目目录下的 .browser_data已登录过 Google 时全程后台无头;未登录 时会先弹出 Chrome 窗口,登录成功后自动切回无头,下次一般不再弹窗。系统已开 VPN 时与平时用浏览器访问谷歌一致。

已启用自动开始:请填写 Gem 链接(或由工作台打开带 ?autostart=1&gem=... 的地址)。

已启用自动开始:请填写 DeepSeek API Key(会保存在本机浏览器本地)。

粘贴别人分享的 Gem 链接

用于分析回复并合成指令

未勾选时:尝试在服务器上无头访问 Gem,仅适合服务器本身在海外、能直连 Google 的部署。国内或容器环境一般会失败,请改回勾选并运行本地代理。

{{ agentConnected ? '本地代理已连接' : '请先启动本地代理' }}

请确认本机已开 VPN,再下载压缩包、解压后双击 VBS。出于安全原因,网页不能替你自动启动本机程序。

下载本地代理压缩包

解压后双击 start_local_agent.vbs,右上角变绿再点「开始提取」。日志:agent.log

pip install websockets playwright
playwright install chromium

自动执行多种策略探测 Gem,全程不需要你参与对话

你亲自跟 Gem 对话,聊完后系统自动帮你反推系统指令

最短 {{ messageDelayMin }}s
最长 {{ messageDelayMax }}s

每发完一条探测消息后,在「最短~最长」之间均匀随机等待再发下一条;上下限可相同(固定间隔)。范围 0~50 秒。

{{ maxRounds }} 轮

每轮根据分析结果生成 7 条针对性追问(每轮用不同技巧),推荐 5 轮。置信度 ≥95% 时自动提前停止

{{ currentStatus }}
已对话 {{ manualMessages.length / 2 }} 轮
开始和 Gem 对话吧!输入你想问的问题,系统会通过浏览器帮你发送。
{{ m.text }}
{{ currentStatus }}
{{ (progress * 100).toFixed(0) }}%
已暂停 — 当前消息处理完毕后暂停,点击「继续」恢复

请在弹出的 Chrome 窗口中登录 Google 账号

登录完成后浏览器会自动关闭并切换到后台无头模式,全程不再弹窗。

{{ ex.strategy_id }} #{{ idx + 1 }}
SENT

{{ ex.prompt }}

RECV

{{ ex.response || '...' }}

本次没有记录到对话。若使用本地代理,请确认服务端已部署最新版本并重启;也可点击「重新开始」再试一次。 等待消息交换...

{{ idx === analysisResults.length - 1 && phase === 'done' ? '最终分析' : `第 ${idx} 轮分析` }}

置信度
{{ (r.confidence * 100).toFixed(0) }}%

直接提取到的片段

"{{ f }}"

推断出的规则

  • - {{ rule }}
等待分析结果...

重建的系统指令

置信度: {{ (finalResult.confidence * 100).toFixed(0) }}%
{{ finalResult.synthesized_prompt }}

验证依据 — 直接提取到的片段

"{{ f }}"

推断出的规则

  • - {{ rule }}
{{ phase === 'done' ? '未获得最终结果' : '提取完成后将在此显示结果...' }}