설명 없음

chendeben 4e2e7f2cdd feat: add Gmail API polling and verification fixes 4 달 전
content 4e2e7f2cdd feat: add Gmail API polling and verification fixes 4 달 전
data 4e2e7f2cdd feat: add Gmail API polling and verification fixes 4 달 전
icons 387e177e00 chore: pre-release cleanup 4 달 전
sidepanel 4e2e7f2cdd feat: add Gmail API polling and verification fixes 4 달 전
README.md 4e2e7f2cdd feat: add Gmail API polling and verification fixes 4 달 전
background.js 4e2e7f2cdd feat: add Gmail API polling and verification fixes 4 달 전
manifest.json 4e2e7f2cdd feat: add Gmail API polling and verification fixes 4 달 전

README.md

Auto Register GPT Duck

批量自动完成 ChatGPT OAuth 注册/登录流程的 Chrome 扩展。

通过侧边栏控制,支持单步执行、多轮自动运行、中途停止,以及多种验证码接收方式。

当前能力

  • 从 VPS 面板自动获取 OpenAI OAuth 授权链接
  • 自动打开 OpenAI 注册页并点击 Sign up
  • 自动填写邮箱与密码(支持自定义或自动生成强密码)
  • 自动获取注册验证码与登录验证码
  • 验证码来源支持:
    • Temp Email API(推荐)— 通过 HTTP API 直接轮询,无需打开邮件页面
    • QQ Mail / 163 Mail / Inbucket mailbox
  • DuckDuckGo Email Protection:
    • 首次运行自动提取 access_token 并保存
    • 后续运行直接调用 API 生成 @duck.com 地址,无需打开页面
  • Step 5 兼容 birthday 和 age 两种页面
  • Step 7 自动检测电话验证页面,跳过当前账号继续下一轮
  • Step 8 通过 content script 直接点击"继续"按钮,无需 debugger,不会触发浏览器"被控制调试"提示
  • 支持 Auto 多轮运行 + 中途 Stop

环境要求

  • Chrome 浏览器,开启扩展开发者模式
  • 你自己的 VPS 管理面板(页面结构需与脚本适配)
  • 至少准备一种验证码接收方式:
    • Temp Email API(推荐)
    • DuckDuckGo @duck.com + QQ / 163 / Inbucket 转发

安装

  1. 打开 chrome://extensions/
  2. 开启"开发者模式"
  3. 点击"加载已解压的扩展程序"
  4. 选择本项目目录
  5. 打开扩展侧边栏

侧边栏配置

VPS

管理面板 OAuth 页面地址:

http(s)://<your-host>/management.html#/oauth

Step 1 和 Step 9 都依赖这个地址。

Mail

验证码来源,支持四种:

选项 说明
Temp Email API 通过 HTTP API 直接轮询邮件,粘贴完整 URL(含 JWT)即可,无需打开邮件页面
163 Mail 轮询 163 网页邮箱
QQ Mail 轮询 QQ 网页邮箱
Inbucket 通过自定义 host + mailbox 轮询

Temp Email API(推荐)

选择后会出现 API URL 输入框,粘贴完整地址即可:

https://temp-email-api.xxx.cc/?jwt=eyJhbGci...

API 需要支持以下端点:

  • GET /api/mails?limit=N&offset=0(Authorization: Bearer JWT)
  • 返回格式:{ results: [{ id, source, raw, created_at }] }

Inbucket

需要填写 host 和 mailbox 名称,脚本会打开 https://<host>/m/<mailbox>/ 轮询。

Email

Step 3 使用的注册邮箱:

  • 手动粘贴
  • 点击 Auto — 通过 DuckDuckGo API 自动生成 @duck.com 地址

首次使用 Auto 需要打开 DuckDuckGo 页面提取 token,之后直接调 API 生成。

Password

  • 留空:自动生成强密码
  • 手动输入:使用自定义密码
  • 可通过 Show/Hide 切换显示

工作流(9 步)

步骤 名称 说明
1 Get OAuth Link 从 VPS 面板获取 OAuth 授权链接
2 Open Signup 打开授权链接,点击注册
3 Fill Email/Password 填写邮箱和密码,提交注册
4 Get Signup Code 轮询邮箱获取注册验证码并填入
5 Fill Name/Birthday 随机生成姓名和生日/年龄并填写
6 Login via OAuth 用注册账号登录 OAuth
7 Get Login Code 轮询邮箱获取登录验证码并填入
8 OAuth Auto Confirm 点击 OAuth 同意页"继续",捕获 localhost 回调
9 VPS Verify 回到 VPS 面板提交回调 URL,等待认证成功

Auto 模式

点击 Auto 后自动执行完整流程,支持多轮运行。每轮:

  1. 获取 OAuth 链接 + 打开注册页
  2. 自动生成 Duck 邮箱(API 方式,无需开页面)
  3. 执行 Step 3 ~ Step 9
  4. 失败自动跳到下一轮,手动 Stop 才会终止

遇到电话验证页面会自动跳过当前账号。

Duck 邮箱自动获取

采用两阶段策略:

  1. 首次运行:打开 DuckDuckGo Email Protection 设置页,通过 content script 调用 dashboard API 提取 access_token,保存到持久化存储
  2. 后续运行:直接调用 quack.duckduckgo.com/api/email/addresses 生成新地址,不再打开页面

token 失效时会自动回退到页面方式重新提取。

停止机制

  • 侧边栏点击 Stop
  • Background 广播 STOP_FLOW
  • 各 content script 在等待、轮询、sleep 中尽量中断

项目结构

background.js              后台主控,编排 1~9 步、Tab 复用、状态管理
manifest.json              扩展清单
data/names.js              随机姓名、生日数据
content/utils.js           通用工具:等待元素、点击、日志、停止控制
content/vps-panel.js       VPS 面板步骤:Step 1 / Step 9
content/signup-page.js     OpenAI 注册/登录页步骤:Step 2 / 3 / 5 / 6 / 8
content/duck-mail.js       Duck 邮箱获取 + token 提取
content/qq-mail.js         QQ 邮箱验证码轮询
content/mail-163.js        163 邮箱验证码轮询
content/inbucket-mail.js   Inbucket mailbox 验证码轮询
sidepanel/                 侧边栏 UI

状态与数据

  • 运行时状态使用 chrome.storage.session
  • VPS 地址、邮件配置、Duck token 等持久化到 chrome.storage.local
  • 所有数据仅存在本地浏览器中,无外部上报

调试建议

  • 侧边栏 Console 区域查看实时日志
  • Service Worker 控制台查看 background 日志
  • 目标页面的 DevTools Console 查看 content script 日志
  • 某一步频繁失败时,优先检查页面选择器是否匹配