[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-82718":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":16,"stars30d":17,"stars90d":15,"forks30d":15,"starsTrendScore":18,"compositeScore":19,"rankGlobal":9,"rankLanguage":9,"license":20,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":23,"hasPages":21,"topics":24,"createdAt":9,"pushedAt":9,"updatedAt":25,"readmeContent":26,"aiSummary":27,"trendingCount":15,"starSnapshotCount":15,"syncStatus":13,"lastSyncTime":28,"discoverSource":29},82718,"aBaiAutoplus","asz798838958\u002FaBaiAutoplus","asz798838958","多平台 AI 账号自动注册与管理 · 协议化付款一键开通 ChatGPT Plus",null,"Python",1597,720,2,1,0,130,1031,11,86.57,"GNU Affero General Public License v3.0",false,"main",true,[],"2026-06-12 04:01:38","﻿# aBaiAutoplus\n\n\u003Cp align=\"center\">\n  \u003Cb>多平台 AI 账号自动注册与管理 · 协议化付款一键开通 ChatGPT Plus\u003C\u002Fb>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fasz798838958\u002FaBaiAutoplus\u002Fstargazers\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fasz798838958\u002FaBaiAutoplus?style=for-the-badge&logo=github&color=FFB003\" alt=\"Stars\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fasz798838958\u002FaBaiAutoplus\u002Fnetwork\u002Fmembers\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fasz798838958\u002FaBaiAutoplus?style=for-the-badge&logo=github&color=blue\" alt=\"Forks\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fasz798838958\u002FaBaiAutoplus\u002Freleases\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002Fasz798838958\u002FaBaiAutoplus?style=for-the-badge&logo=github&color=green\" alt=\"Release\" \u002F>\u003C\u002Fa>\n  \u003Ca href=\"LICENSE\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fasz798838958\u002FaBaiAutoplus?style=for-the-badge&color=orange\" alt=\"License\" \u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cb>ChatGPT plus的AI 平台账号自动注册与管理\u003C\u002Fb>\u003Cbr\u002F>\n  \u003Cb>协议 \u002F 浏览器双模式 · PayPal浏览器注册+内置 GoPay 协议付款 ChatGPT Plus · Mac \u002F Windows 桌面版一键启动\u003C\u002Fb>\n\u003C\u002Fp>\n\n> ⚠️ **免责声明**：本项目仅供学习和研究使用，不得用于任何商业用途，也不得用于违反目标平台服务条款（ToS）的行为。使用本项目所产生的一切后果由使用者自行承担。\n\n> 🙏 **致谢**：本项目基于 [`lxf746\u002Fany-auto-register`](https:\u002F\u002Fgithub.com\u002Flxf746\u002Fany-auto-register) 二次开发，在其插件化注册框架之上扩展了**PayPal 浏览器注册ChatGPT Plus** **GoPay 协议注册ChatGPT Plus** 等能力。感谢原作者的开源工作。本仓库与上游各自独立维护。\n\n多平台账号自动注册与管理系统，支持插件化扩展，内置 Web UI 与桌面客户端。\n\n## 目录\n\n- [相比上游的新增能力](#相比上游的新增能力)\n- [功能特性](#功能特性)\n- [支持的平台](#支持的平台)\n- [界面预览](#界面预览)\n- [技术栈](#技术栈)\n- [快速开始](#快速开始)\n- [桌面版下载](#桌面版下载)\n- [Docker 部署](#docker-部署)\n- [GoPay 付款 ChatGPT Plus](#gopay-付款-chatgpt-plus)\n- [邮箱服务配置](#邮箱服务配置)\n- [验证码服务配置](#验证码服务配置)\n- [代理池配置](#代理池配置)\n- [接码服务配置](#接码服务配置)\n- [账号生命周期管理](#账号生命周期管理)\n- [注册成功率仪表盘](#注册成功率仪表盘)\n- [Any2API 联动](#any2api-联动)\n- [项目结构](#项目结构)\n- [插件开发](#插件开发)\n- [安全说明](#安全说明)\n- [常见问题](#常见问题)\n- [参与贡献](#参与贡献)\n- [License](#license)\n\n## 相比上游的新增能力\n\n本项目在 [`any-auto-register`](https:\u002F\u002Fgithub.com\u002Flxf746\u002Fany-auto-register) 基础上重点扩展：\n\n| 新增能力                       | 说明                                                                          |\n| ------------------------------ | ----------------------------------------------------------------------------- |\n| � **PayPal日区\u002F美区 付款 ChatGPT Plus** | PayPal浏览器多线程付款，自动完成 ChatGPT Plus 订阅全链路 |\n| � **GoPay 付款 ChatGPT Plus** | 印尼 GoPay 协议化付款，自动完成 ChatGPT Plus 订阅的「生成支付链接 → Midtrans 收银台 → GoPay 14 步 API 付款」全链路 |\n| � **GoPay 账号自动注册**      | 印尼手机号 + PIN 协议注册 GoPay 账号，支持接码渠道轮换                         |\n| 🧾 **接码渠道扩展**            | 在原有 SMS-Activate \u002F HeroSMS 之外，新增 SMSPool、SMSBower 渠道                |\n| 🌐 **C 端 \u002F 管理端独立 API**   | `customer_portal_api\u002F` 提供可独立部署的多租户门户后端                          |\n\n> 其余平台注册、邮箱 \u002F 验证码 \u002F 代理 provider、生命周期管理、成功率仪表盘等能力沿用并兼容上游框架。\n\n## 功能特性\n\n- **多平台支持**：ChatGPT、Cursor、Kiro、Trae.ai、Tavily、Grok、Blink、Cerebras、OpenBlockLabs、Windsurf、GoPay，支持自定义插件扩展（Anything 通用适配器）\n- **多邮箱服务**：MoeMail（自建）、Laoudo、DuckMail、Testmail、Cloudflare Worker 自建邮箱、Freemail、TempMail.lol、Temp-Mail Web、DuckDuckGo Email\n- **多执行模式**：API 协议（无浏览器）、无头浏览器、有头浏览器（各平台按需支持）\n- **验证码服务**：YesCaptcha、2Captcha、本地 Solver（Camoufox）\n- **接码服务**：SMS-Activate、HeroSMS、SMSPool、SMSBower\n- **代理池管理**：静态代理轮询 + 动态代理 API 提取 + 旋转网关代理，成功率统计、自动禁用失效代理\n- **账号生命周期**：定时有效性检测、token 自动续期、trial 过期预警\n- **注册成功率仪表盘**：按平台、按天、按代理的成功率统计，错误聚合分析\n- **并发注册**：可配置并发数\n- **实时日志**：SSE 实时推送注册日志到前端\n- **账号导出**：支持 JSON、CSV、CPA、Sub2API、Kiro-Go、Any2API 多种格式\n- **Any2API 联动**：注册完成后自动推送账号到 Any2API 网关，注册即可用\n- **平台扩展操作**：各平台可自定义操作（如 Kiro 账号切换、Trae Pro 升级链接生成、GoPay 付款 Plus）\n\n## 支持的平台\n\n| 平台          | 协议模式 | 浏览器模式 | OAuth | 备注                         |\n| ------------- | :------: | :--------: | :---: | ---------------------------- |\n| ChatGPT       |    ✅    |     ✅     |  ✅   | Plus 支付链接 \u002F PayPal 结账  |\n| Cursor        |    ✅    |     ✅     |  ✅   | 需手机验证                   |\n| Kiro          |    ✅    |     ✅     |  ✅   | 支持账号切换                 |\n| Trae.ai       |    ✅    |     ✅     |  ✅   | Pro 升级链接生成             |\n| Grok          |    ✅    |     ✅     |  ✅   |                              |\n| Windsurf      |    ✅    |     ✅     |  ✅   | Trial 链接生成               |\n| Tavily        |    ✅    |     ✅     |  ✅   |                              |\n| Blink         |    ✅    |     ✅     |  ✅   |                              |\n| Cerebras      |    ✅    |     ✅     |  ✅   |                              |\n| OpenBlockLabs |    ✅    |     ✅     |  ✅   |                              |\n| GoPay         |    ✅    |     —      |  —    | 印尼 GoPay，手机 + PIN，付款 Plus |\n| Anything      |    ✅    |     ✅     |  —    | 通用适配器，配置即接入新平台 |\n\n> 各平台实际支持的执行器以插件 `supported_executors` 声明为准，可在 Web UI「平台能力」页查看与覆盖。\n\n## 界面预览\n\n> 📸 _截图将随版本迭代持续更新。_\n\n\n### gopay注册生成gptplus\n\n![gopay注册生成gptplus](assets\u002Fscreenshots\u002Fgopay注册生成gptplus.png)\n\n### PayPal注册gptplus\n\n![PayPal注册gptplus](assets\u002Fscreenshots\u002FPayPal注册gptplus.png)\n\n### PayPal注册gptplus\n\n![PayPal注册gptplus](assets\u002Fscreenshots\u002FPayPal注册gptplus2.png)\n\n### 设置\n\n![设置](assets\u002Fscreenshots\u002F设置2.png)\n![设置](assets\u002Fscreenshots\u002F设置.png)\n\n## 技术栈\n\n| 层级         | 技术                                    |\n| ------------ | --------------------------------------- |\n| 后端         | FastAPI + SQLite（SQLModel）            |\n| 前端         | React + TypeScript + Vite + TailwindCSS |\n| HTTP         | curl_cffi \u002F tls_client（浏览器指纹伪装） |\n| 浏览器自动化 | Playwright \u002F Camoufox \u002F BitBrowser      |\n| 桌面端       | Electron（内置后端 + 前端）             |\n\n## 快速开始\n\n### 环境要求\n\n- Python 3.11+\n- Node.js 18+\n\n### 安装\n\n#### macOS \u002F Linux\n\n```bash\n# 克隆项目\ngit clone https:\u002F\u002Fgithub.com\u002Fasz798838958\u002FaBaiAutoplus.git\ncd aBaiAutoplus\n\n# 创建虚拟环境\npython3 -m venv .venv\nsource .venv\u002Fbin\u002Factivate\n\n# 安装后端依赖\npip install -r requirements.txt\n\n# 构建前端\ncd frontend\nnpm install\nnpm run build\ncd ..\n```\n\n#### Windows\n\n```bat\n:: 克隆项目\ngit clone https:\u002F\u002Fgithub.com\u002Fasz798838958\u002FaBaiAutoplus.git\ncd aBaiAutoplus\n\n:: 创建虚拟环境\npython -m venv .venv\n.venv\\Scripts\\activate\n\n:: 安装后端依赖\npip install -r requirements.txt\n\n:: 构建前端\ncd frontend\nnpm install\nnpm run build\ncd ..\n```\n\n### 安装浏览器（可选，无头\u002F有头浏览器模式需要）\n\n```bash\n# Playwright 浏览器\npython3 -m playwright install chromium\n\n# Camoufox（用于本地 Turnstile Solver）\npython3 -m camoufox fetch\n```\n\n### 配置环境变量（可选）\n\n复制示例文件并按需填写：\n\n```bash\ncp .env.example .env\n```\n\n所有第三方 API key（接码、验证码、代理）均通过环境变量或 Web UI 配置，**仓库内不包含任何真实密钥**。\n\n### 启动\n\n#### macOS \u002F Linux\n\n```bash\n.venv\u002Fbin\u002Fpython3 -m uvicorn main:app --port 8000\n```\n\n#### Windows\n\n```bat\n.venv\\Scripts\\python -m uvicorn main:app --port 8000\n```\n\n浏览器访问 `http:\u002F\u002Flocalhost:8000`\n\n说明：\n\n- 启动入口统一为 `main:app`\n- 后端接口统一位于 `\u002Fapi\u002F*`\n- 生产模式下前端构建产物由后端直接托管，访问 `http:\u002F\u002Flocalhost:8000` 即可\n- 开发模式下前端独立运行在 `http:\u002F\u002Flocalhost:5173`，通过 Vite 代理转发 API 请求\n- C 端 \u002F 管理端独立 API 项目见 [customer_portal_api\u002FREADME.md](customer_portal_api\u002FREADME.md)\n\n### 开发模式（前端热更新）\n\n```bash\ncd frontend\nnpm run dev\n# 访问 http:\u002F\u002Flocalhost:5173\n```\n\n## 桌面版下载\n\n暂不提供安装包使用，没办法开箱即用\n\n如需源码运行或自行打包，参考上方 [快速开始](#快速开始) 与 `electron\u002F` 目录。\n\n## Docker 部署\n\n### 从源码构建\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fasz798838958\u002FaBaiAutoplus.git\ncd aBaiAutoplus\ndocker compose up -d --build\n```\n\n`docker-compose.yml` 示例：\n\n```yaml\nservices:\n  app:\n    build: .\n    ports:\n      - \"8000:8000\"   # FastAPI \u002F Web UI\n      - \"6080:6080\"   # noVNC (headed 浏览器预览)\n      - \"8889:8889\"   # Turnstile Solver\n    environment:\n      - DISPLAY=:99\n      - ACCOUNT_MANAGER_DATABASE_URL=sqlite:\u002F\u002F\u002F\u002Fapp\u002Fdata\u002Faccount_manager.db\n      # 可选：设置访问密码，不设置则无密码保护\n      # - APP_PASSWORD=changeme\n      # 可选：设置 VNC 密码\n      # - VNC_PASSWORD=changeme\n    volumes:\n      - .\u002Fdata:\u002Fapp\u002Fdata   # 持久化 SQLite 数据库\n    restart: unless-stopped\n```\n\n### 访问地址\n\n| 服务   | 地址                             | 说明                        |\n| ------ | -------------------------------- | --------------------------- |\n| Web UI | `http:\u002F\u002Flocalhost:8000`          | 主界面                      |\n| noVNC  | `http:\u002F\u002Flocalhost:6080\u002Fvnc.html` | 可视化浏览器（headed 模式） |\n| Solver | `http:\u002F\u002Flocalhost:8889`          | Turnstile 验证码求解器      |\n\n> 云服务器部署时，请确保安全组\u002F防火墙放行 8000、6080、8889 端口；公网部署务必设置 `APP_PASSWORD` 访问密码。\n\n### 常用命令\n\n```bash\ndocker compose logs -f      # 查看日志\ndocker compose restart      # 重启\ndocker compose down         # 停止\n```\n\n## GoPay 付款 ChatGPT Plus\n\n这是本项目相对上游的核心扩展功能：用印尼 GoPay 协议化付款，自动完成 ChatGPT Plus 订阅。\n\n### 流水线\n\n整条链路分三步（实现见 `application\u002Fgopay_pay_chatgpt.py`）：\n\n1. **协议** — 调用 `generate_plus_link(country=ID, currency=IDR)` 拿到 ChatGPT 的 `cashier_url`（Stripe hosted checkout）\n2. **浏览器** — 打开 `cashier_url`，等页面跳转到 Midtrans 收银台域，抓取 `midtrans_url`\n3. **协议** — 用 GoPay 账号调用 `GoPayPayment.pay(midtrans_url, account)` 完成 14 步 Midtrans API 付款\n\n付款成功后对应 ChatGPT 账号会被标记为 `subscribed`。\n\n### 使用方式\n\n在 Web UI 的「GoPay 付款 Plus」页面操作，或通过 API：\n\n- `POST \u002Fapi\u002Ftasks\u002Fgopay-pay-chatgpt` — 创建付款任务（任务类型 `gopay_pay_chatgpt`）\n\n主要参数：\n\n| 参数                   | 说明                                                              |\n| ---------------------- | ----------------------------------------------------------------- |\n| `chatgpt_account_ids`  | 要付款的 ChatGPT 账号 id 列表；留空且填了 `register_count` 时先注册 |\n| `register_count`       | 未选账号时，先注册 N 个 ChatGPT 账号再付款                         |\n| `gopay_account_id`     | 指定 GoPay 付款账号；留空按 `gopay_source` 策略自动选\u002F注册         |\n| `gopay_source`         | `auto`（先用池后注册）\u002F `pool`（只用池）\u002F `register`（强制注册）  |\n| `sms_provider`         | GoPay 注册接码渠道：`herosms` \u002F `smspool` \u002F `smsbower`            |\n| `country` \u002F `currency` | 默认 `ID` \u002F `IDR`                                                 |\n| `checkout_mode`        | 浏览器后端：`camoufox` \u002F `bitbrowser_*`                          |\n| `envelope_url`         | 可选，付款前先领红包补 GoPay 余额                                 |\n| `concurrency`          | 多账号并发数                                                      |\n\n> GoPay 账号注册与付款依赖印尼手机号接码（HeroSMS \u002F SMSPool \u002F SMSBower），请先在「全局配置」配置对应渠道的 API key。GoPay PIN 默认值可通过任务参数 `gopay_pin` 覆盖。\n\n## 邮箱服务配置\n\n注册时需要选择一种邮箱服务用于接收验证码。邮箱、验证码和接码配置都由后端 provider catalog 驱动，前端「全局配置」页采用列表式 CRUD：左侧显示已添加的 provider，右侧统一编辑名称、认证方式和字段；「新增 Provider」下拉框只展示后端已接入但尚未加入的 provider。\n\n### MoeMail（推荐）\n\n基于开源项目 [cloudflare_temp_email](https:\u002F\u002Fgithub.com\u002Fdreamhunter2333\u002Fcloudflare_temp_email) 自建的临时邮箱服务，无需配置任何参数，系统自动注册临时账号并生成邮箱。在注册页选择 **MoeMail**，填写你部署的实例地址（默认使用公共实例）。\n\n### Laoudo\n\n使用固定的自有域名邮箱，稳定性最高，适合长期使用。\n\n| 参数       | 说明                                         |\n| ---------- | -------------------------------------------- |\n| 邮箱地址   | 完整邮箱地址，如 `user@example.com`          |\n| Account ID | 邮箱账号 ID（在 Laoudo 面板查看）            |\n| JWT Token  | 登录后从浏览器 Cookie 或接口获取的认证 Token |\n\n### Cloudflare Worker 自建邮箱\n\n基于 [cloudflare_temp_email](https:\u002F\u002Fgithub.com\u002Fdreamhunter2333\u002Fcloudflare_temp_email) 自行部署的邮箱服务，完全自主可控。\n\n| 参数        | 说明                                                                  |\n| ----------- | --------------------------------------------------------------------- |\n| API URL     | Worker 的后端 API 地址，如 `https:\u002F\u002Fapi.your-domain.com`              |\n| Admin Token | 管理员密码，在 Worker 环境变量 `ADMIN_PASSWORDS` 中配置               |\n| 域名        | 收件邮箱的域名，如 `your-domain.com`（需配置 MX 记录指向 Cloudflare） |\n| Fingerprint | 可选，Worker 开启 fingerprint 验证时填写                              |\n\n### Freemail\n\n基于 Cloudflare Worker 自建的邮箱服务，支持管理员令牌和用户名密码两种认证方式。\n\n| 参数       | 说明                 |\n| ---------- | -------------------- |\n| API URL    | Freemail 服务地址    |\n| 管理员令牌 | 管理员认证令牌       |\n| 用户名     | 可选，用户名密码认证 |\n| 密码       | 可选，用户名密码认证 |\n\n### Testmail\n\n`testmail.app` 的 namespace 邮箱模式，自动生成 `{namespace}.{随机tag}@inbox.testmail.app`，适合并发任务。\n\n| 参数       | 说明                                     |\n| ---------- | ---------------------------------------- |\n| API URL    | 默认 `https:\u002F\u002Fapi.testmail.app\u002Fapi\u002Fjson` |\n| Namespace  | 你的 namespace，例如 `3xw8n`             |\n| Tag Prefix | 可选，给随机 tag 增加前缀                |\n| API Key    | testmail.app 控制台里的 API Key          |\n\n### 其他公共邮箱\n\n- **DuckMail \u002F TempMail.lol \u002F Temp-Mail Web**：公共临时邮箱，无需配置，部分地区需代理\n- **DuckDuckGo Email**：生成 `@duck.com` 私密别名，需在全局配置填写转发邮箱的 IMAP 信息\n\n## 验证码服务配置\n\n| 服务        | 说明                                                                    |\n| ----------- | ----------------------------------------------------------------------- |\n| YesCaptcha  | 需填写 Client Key，在 [yescaptcha.com](https:\u002F\u002Fyescaptcha.com) 注册获取 |\n| 2Captcha    | 需填写 API Key，在 [2captcha.com](https:\u002F\u002F2captcha.com) 注册获取        |\n| 本地 Solver | 使用 Camoufox 本地解码，需先执行 `python3 -m camoufox fetch`            |\n\n## 代理池配置\n\n### 静态代理\n\n在代理管理页手动添加固定代理地址，系统按成功率加权轮询。连续失败 5 次的代理自动禁用。\n\n### 动态代理驱动\n\n如果数据库中已配置并启用 `proxy` provider，注册时会优先尝试动态代理，失败或未配置时自动回退到静态代理池。\n\n| Provider     | 说明                                                                              |\n| ------------ | --------------------------------------------------------------------------------- |\n| API 提取代理 | 通过 HTTP API 动态提取代理 IP，适用于大多数代理商的 API 提取接口                  |\n| 旋转网关代理 | 固定入口地址，每次请求自动分配不同出口 IP，适用于 BrightData、Oxylabs、IPRoyal 等 |\n\n## 接码服务配置\n\n部分平台注册需要手机号验证（如 Cursor、GoPay），可配置接码服务自动完成：\n\n| 服务         | 说明                                                            |\n| ------------ | --------------------------------------------------------------- |\n| SMS-Activate | 需填写 API Key，可配置默认国家                                  |\n| HeroSMS      | 需填写 API Key，可配置服务代码、国家 ID、最高单价、号码复用策略 |\n| SMSPool      | 需填写 API Key，可配置国家 \u002F 服务 ID \u002F 价格上限                 |\n| SMSBower     | 需填写 API Key，可配置服务代码、国家 ID                         |\n\n添加方法：在 Web UI「全局配置 → 接码服务」点击「新增接码 Provider」，选择对应服务，填写 API Key 并按需设为默认。注册任务会优先使用任务参数里的 `sms_provider`，未指定时使用默认接码 Provider。\n\n> 🔐 接码 API key 通过环境变量（如 `OPAI_SMSPOOL_API_KEY`、`OPAI_SMSBOWER_API_KEY`）或 Web UI 配置，仓库内不含任何真实密钥。\n\n## 账号生命周期管理\n\n系统内置后台生命周期管理器，自动执行：\n\n- **有效性检测**：每 6 小时检测活跃账号是否仍有效，失效标记为 invalid\n- **Token 自动续期**：每 12 小时刷新即将过期的 token（当前支持 ChatGPT）\n- **Trial 过期预警**：扫描 trial 账号，即将过期的标记预警，已过期的自动更新状态\n\n手动触发 API：\n\n- `POST \u002Fapi\u002Flifecycle\u002Fcheck` — 有效性检测\n- `POST \u002Fapi\u002Flifecycle\u002Frefresh` — token 刷新\n- `POST \u002Fapi\u002Flifecycle\u002Fwarn` — 过期预警\n- `GET \u002Fapi\u002Flifecycle\u002Fstatus` — 查看管理器状态\n\n## 注册成功率仪表盘\n\n- `GET \u002Fapi\u002Fstats\u002Foverview` — 全局概览（总注册数、成功率、状态分布）\n- `GET \u002Fapi\u002Fstats\u002Fby-platform` — 按平台统计成功率\n- `GET \u002Fapi\u002Fstats\u002Fby-day?days=30` — 按天注册趋势\n- `GET \u002Fapi\u002Fstats\u002Fby-proxy` — 代理成功率排行\n- `GET \u002Fapi\u002Fstats\u002Ferrors?days=7` — 失败错误聚合\n\n## Any2API 联动\n\n配合 [Any2API](https:\u002F\u002Fgithub.com\u002Flxf746\u002Fany2api) 项目使用，注册完成后自动推送账号到网关，实现注册即可用。\n\n在全局配置中设置 `any2api_url`（如 `http:\u002F\u002Flocalhost:8099`）和 `any2api_password` 后，每次注册成功会自动推送：\n\n| 平台     | 推送目标                  |\n| -------- | ------------------------- |\n| Kiro     | `kiroAccounts` 账号池     |\n| Grok     | `grokTokens` token 池     |\n| Cursor   | `cursorConfig` cookie     |\n| ChatGPT  | `chatgptConfig` token     |\n| Blink    | `blinkConfig` 凭证        |\n| Windsurf | `windsurfAccounts` 账号池 |\n\n未配置 `any2api_url` 时此功能静默跳过。也可手动导出：\n\n- `POST \u002Fapi\u002Faccounts\u002Fexport\u002Fany2api` — 导出为 Any2API admin.json 格式\n- `POST \u002Fapi\u002Faccounts\u002Fexport\u002Fkiro-go` — 导出为 Kiro-Go config.json 格式\n\n## 项目结构\n\n```\n.\n├── main.py                 # FastAPI 入口\n├── Dockerfile              # Docker 构建\n├── docker-compose.yml      # Docker Compose 编排\n├── requirements.txt        # Python 依赖\n├── api\u002F                    # HTTP 路由层（账号 \u002F 任务 \u002F 配置 \u002F 代理 \u002F 统计 …）\n├── application\u002F            # 应用服务层\n│   ├── gopay_pay_chatgpt.py    # GoPay 付款 ChatGPT Plus 编排器（本项目扩展）\n│   ├── tasks.py \u002F task_commands.py  # 任务编排与执行\n│   └── ...\n├── domain\u002F                 # 领域模型\n├── infrastructure\u002F         # 仓储与运行时适配\n├── core\u002F                   # 基础能力\n│   ├── base_platform.py    # 平台基类\n│   ├── base_mailbox.py     # 邮箱服务基类\n│   ├── base_captcha.py     # 验证码服务基类\n│   ├── base_sms.py         # 接码服务基类\n│   ├── registration\u002F       # 注册流程编排（适配器 + 流程）\n│   ├── lifecycle.py        # 账号生命周期管理\n│   ├── proxy_pool.py       # 代理池（静态 + 动态）\n│   ├── registry.py         # 平台插件注册表\n│   └── any2api_sync.py     # Any2API 自动推送\n├── platforms\u002F              # 平台插件层\n│   ├── chatgpt\u002F            # ChatGPT（注册 \u002F Plus 支付 \u002F PayPal 结账）\n│   ├── gopay\u002F              # GoPay 注册 + 接码渠道（本项目扩展）\n│   ├── gopay-deploy\u002F       # GoPay 协议付款核心（Gojek \u002F Midtrans）\n│   └── {platform}\u002F         # 其他平台插件\n├── providers\u002F              # Provider 插件层（mailbox \u002F captcha \u002F sms \u002F proxy）\n├── services\u002F               # 后台服务（Solver 进程管理 \u002F 任务执行器）\n├── customer_portal_api\u002F    # C 端 \u002F 管理端独立 API\n├── electron\u002F               # Electron 桌面端打包\n├── tests\u002F                  # 测试\n└── frontend\u002F               # React 前端\n```\n\n## 插件开发\n\n添加新平台需要以下步骤：\n\n### 1. 新建平台目录\n\n在 `platforms\u002F` 下新建目录，必须包含 `__init__.py` 和 `plugin.py`（`pkgutil.iter_modules` 只扫描带 `__init__.py` 的 Python 包）：\n\n```\nplatforms\u002Fmyplatform\u002F\n├── __init__.py\n├── plugin.py              # 平台适配层（必须）\n├── protocol_mailbox.py    # 协议模式注册逻辑（按需）\n├── browser_register.py    # 浏览器注册逻辑（按需）\n└── browser_oauth.py       # 浏览器 OAuth 逻辑（按需）\n```\n\n### 2. 实现 plugin.py\n\n```python\nfrom core.base_platform import BasePlatform, Account, AccountStatus, RegisterConfig\nfrom core.base_mailbox import BaseMailbox\nfrom core.registration import ProtocolMailboxAdapter, OtpSpec, RegistrationResult\nfrom core.registry import register\n\n\n@register\nclass MyPlatform(BasePlatform):\n    name = \"myplatform\"\n    display_name = \"My Platform\"\n    version = \"1.0.0\"\n\n    def __init__(self, config: RegisterConfig = None, mailbox: BaseMailbox = None):\n        super().__init__(config)\n        self.mailbox = mailbox\n\n    def build_protocol_mailbox_adapter(self):\n        \"\"\"协议模式注册适配器\"\"\"\n        return ProtocolMailboxAdapter(\n            result_mapper=lambda ctx, result: RegistrationResult(\n                email=result[\"email\"],\n                password=result.get(\"password\", \"\"),\n                status=AccountStatus.REGISTERED,\n            ),\n            worker_builder=lambda ctx, artifacts: __import__(\n                \"platforms.myplatform.protocol_mailbox\",\n                fromlist=[\"MyWorker\"],\n            ).MyWorker(proxy=ctx.proxy, log_fn=ctx.log),\n            register_runner=lambda worker, ctx, artifacts: worker.run(\n                email=ctx.identity.email,\n                password=ctx.password,\n                otp_callback=artifacts.otp_callback,\n            ),\n            otp_spec=OtpSpec(wait_message=\"等待验证码邮件...\"),\n        )\n\n    def check_valid(self, account: Account) -> bool:\n        return bool(account.token)\n```\n\n### 3. 声明平台能力\n\n平台能力优先使用插件类属性声明，也可以在 Web UI 的「平台能力」页面覆盖：\n\n```python\nclass MyPlatform(BasePlatform):\n    supported_executors = [\"protocol\"]\n    supported_identity_modes = [\"mailbox\"]\n    supported_oauth_providers = []\n    capabilities = []\n```\n\n系统启动时会自动扫描 `platforms\u002F` 目录加载所有带 `@register` 装饰器的插件。\n\n## 安全说明\n\n本项目处理账号凭证、token 和第三方 API key，请遵循以下安全实践：\n\n- **不要提交真实凭证**：账号导出文件（`acc*.json`）、数据库（`*.db`）、抓包\u002F调试 dump（`*_inspect.txt`、`otp_*.txt`、`*.har`）均应在 `.gitignore` 中忽略，请勿强制提交。\n- **密钥走环境变量**：所有接码 \u002F 验证码 \u002F 代理的 API key 通过环境变量或 Web UI 配置，不要写死进源码。参考 [.env.example](.env.example)。\n- **公网部署加固**：Docker 部署务必设置 `APP_PASSWORD`；`customer_portal_api` 生产环境必须修改默认 `PORTAL_JWT_SECRET` 与管理员密码，并收敛 `PORTAL_CORS_ORIGINS`。\n- **凭证轮换**：若怀疑凭证泄露，第一时间在对应平台后台吊销 \u002F 重置。\n\n## 常见问题\n\n### 验证码失败怎么办？\n\n1. 确认验证码 provider 已正确配置（YesCaptcha Client Key 或本地 Solver）\n2. 协议模式下优先使用远程验证码服务（YesCaptcha \u002F 2Captcha）\n3. 浏览器模式下 Camoufox 会自动尝试点击 Turnstile checkbox，失败时回退到远程 Solver\n4. 持续失败时检查代理 IP 质量——高风险 IP 会触发更严格的验证\n\n### 代理被封 \u002F 注册失败率高？\n\n1. 在代理管理页查看各代理的成功率，禁用低成功率代理\n2. 使用住宅代理而非数据中心代理，通过率显著更高\n3. 降低并发数，避免同一 IP 短时间内大量请求\n4. 不同平台对 IP 的敏感度不同，可按平台分配代理池\n\n### 浏览器模式需要什么额外配置？\n\n```bash\npython3 -m playwright install chromium   # Playwright 浏览器\npython3 -m camoufox fetch                # Camoufox（反指纹浏览器）\n```\n\n浏览器模式支持 `headless`（无头）和 `headed`（有头）两种，在注册页的执行器选项中选择。\n\n### 用 BitBrowser（比特浏览器）替代 Camoufox\n\nChatGPT 注册 \u002F 生成支付链接 \u002F PayPal 自动结账全程都支持把浏览器后端从 Camoufox 切换到 [BitBrowser](https:\u002F\u002Fwww.bitbrowser.cn\u002F)。其 profile 持久化（cookie \u002F localStorage \u002F 浏览历史）能让风险评分更友好。\n\n**前提**：本机安装并启动 BitBrowser 客户端（默认 API 端口 `127.0.0.1:54345`），在 GUI 里手工创建 profile 并记录 profile ID。\n\n**使用**：注册任务页或「生成支付链接」表单选择执行器 `bitbrowser_headed` \u002F `bitbrowser_hidden` \u002F `bitbrowser_headless`，填 `bit_profile_id`。\n\n| 模式                  | 行为                                 | 反爬通过率              |\n| --------------------- | ------------------------------------ | ----------------------- |\n| `bitbrowser_headed`   | 显示真实窗口（最像人）               | 高                      |\n| `bitbrowser_hidden`   | 窗口移到屏幕外但仍真实渲染（占 GPU） | 高（推荐 PayPal）       |\n| `bitbrowser_headless` | 真 `--headless=new`（性能最好）      | 中（hCaptcha 容易识别） |\n\n环境变量：`BIT_PROFILE_ID`（默认 profile）、`BIT_API_URL`（默认 `http:\u002F\u002F127.0.0.1:54345`）、`BIT_API_TOKEN`（企业版需要，社区版留空）。\n\n### Solver 启动超时怎么办？\n\n`[Solver] 启动超时` 表示本地 Turnstile Solver 在 30 秒内没通过健康检查，主服务仍会继续启动。\n\n1. 本地先执行 `python3 -m camoufox fetch`，再在「全局配置」页点击「重启 Solver」\n2. 不依赖本地 Solver 时，配置 YesCaptcha 或 2Captcha，注册任务里选远程验证码服务\n3. 检查 8889 端口是否被占用\n\n### ARM 镜像构建失败怎么办？\n\n若日志出现 `src\u002Fpages\u002F*.tsx ... TS6133\u002FTS7006`，实际失败点是前端 TypeScript 构建。先本地 `cd frontend && npm run build` 确认通过，再 `docker compose build --no-cache`。\n\n## 参与贡献\n\n欢迎提交 Issue 和 Pull Request。\n\n1. Fork 本仓库\n2. 创建特性分支：`git checkout -b feature\u002Fmy-feature`\n3. 提交更改：`git commit -m 'feat: add my feature'`\n4. 推送分支：`git push origin feature\u002Fmy-feature`\n5. 提交 Pull Request\n\n提交规范建议使用 [Conventional Commits](https:\u002F\u002Fwww.conventionalcommits.org\u002F)：`feat:` \u002F `fix:` \u002F `docs:` \u002F `refactor:` \u002F `test:`。详见 [CONTRIBUTING.md](CONTRIBUTING.md)。\n\n## License\n\n本项目采用 [AGPL-3.0](LICENSE) 许可证。个人学习和研究可自由使用；商业使用需遵守 AGPL-3.0 条款（衍生作品须开源）。\n\n本项目基于 [`lxf746\u002Fany-auto-register`](https:\u002F\u002Fgithub.com\u002Flxf746\u002Fany-auto-register)（同样为 AGPL-3.0）二次开发，衍生代码遵循相同许可证。\n\n\n## 使用提示\n\n- 使用者应自行遵守目标平台服务条款、适用法律及其所在地区的监管要求\n\n## 友情链接\n\n- [LINUX DO - 新的理想型社区](https:\u002F\u002Flinux.do\u002F)","aBaiAutoplus 是一个用于多平台 AI 账号自动注册与管理的工具，特别支持通过协议化付款一键开通 ChatGPT Plus。其核心功能包括使用 PayPal 和 GoPay 进行自动化支付以订阅 ChatGPT Plus 服务，以及插件化扩展能力，允许用户自定义增加更多平台的支持。该工具提供了Web UI和桌面客户端（适用于Mac\u002FWindows），便于操作。它采用Python开发，并基于任何自动注册框架进行二次开发，增加了对多种邮箱服务、验证码服务及代理池的支持。此项目非常适合需要批量管理和创建AI服务账号的研究人员或开发者使用，但请注意仅限于学习和研究目的，不得用于商业用途。","2026-06-06 04:10:25","CREATED_QUERY"]