Files
autoreg-skills-max/references/REVIEW-chatgpt-outlook-autoreg-2026-10.md

16 KiB
Raw Blame History

Ревью ChatGPT/Outlook авторег-репозиториев (октябрь 2026)

Deep code-review 6 реп. Вердикты + что забирать в стек. Все пути локальные: tmp/plotnyj_autoreg/.

1. gptfree-register (hyhang915) — ЦЕННОСТЬ: ВЫСОКАЯ, донор кода №1

Протокольный регистратор ChatGPT, последний коммит 2026-07-23. Flask-консоль :8866.

Механика:

  1. NextAuth CSRF → chatgpt.com/api/auth/signin/openai
  2. auth.openai.com/api/accounts/passwordless/send-otp → /api/accounts/email-otp/validate → /api/accounts/create_account с заголовками openai-sentinel-token / openai-sentinel-so-token
  3. Sentinel-токен генерируется ЛОКАЛЬНО: bootstrap sentinel.openai.com/backend-api/sentinel/sdk.js → динамический fetch актуального sdk.js → исполнение в Node jsdom VM (core/sentinel_vm/runtime_worker.js, core/gpt_trial_protocol/sentinel_http.py). Эмуляция антибот-SDK OpenAI без платных решалок — ключевой трюк репо.

«SKIP SMS» = режим Agent Identity (core/agent_identity.py): телефон не обходится, а становится НЕ НУЖЕН для Codex-пути. После create_account: генерация Ed25519-ключа → POST auth.openai.com/api/accounts/v1/agent/register c Bearer access_token + {abom:{agent_version:'0.138.0-alpha.6', agent_harness_id:'codex-cli', running_location:'local'}, agent_public_key:'ssh-ed25519 ...'} → agent_runtime_id → auth.json {auth_mode:'agent_identity'} → авто-импорт в sub2api POST /api/v1/admin/accounts/import/codex-session.

Полный HTTP add-phone тоже есть (core/chatgpt_register.py:224-310): /api/accounts/add-phone/send {phone_number}, /phone-otp/resend, /phone-otp/validate + core/sms_provider.py — sms-activate-протокольный клиент (smsbower/smshub/tiger-sms/onlinesim, динамический прайс через getPrices).

Зависимости: Python 3.11+, Node.js. Почта: НЕ темп-почты, а пул Outlook-аккаунтов email----password----ms-client-id----ms-refresh-token (чтение OTP через Microsoft Graph, публичный Thunderbird client_id 9e5f94bc-e8a4-4e73-b8be-63364c29d753) или iCloud Hide-My-Email relay. Прокси: HTTP-пул. YesCaptcha — только для браузерного режима (в протокольном не нужна).

Экспорт (12+ форматов, core/account_exports.py): sub2api JSON, codex RT txt, at_5parts/at_5dashes/at_6dashes (email|password|access_token|client_id|refresh_token), CPA zip, any2api admin.json, json/csv. Codex refresh_token — отдельный OAuth PKCE флоу, публичный Codex CLI client_id app_EMoamEEZ73f0CkXaXp7hrann.

Риски (октябрь 2026): хардкод agent_version 0.138.0-alpha.6 (OpenAI поднимет мин. версию Codex — отвалится); fallback sentinel sdk 20260219f9f6 (митигируется динамическим fetch); главный неизвестный — проходит ли create_account без phone-gate (в pipeline.py:620 уже было состояние add_phone_required). Проверяется только живым прогоном 1–2 аккаунтов с Outlook-RT + резидентным прокси.

Red flags: чисто. Все внешние домены: openai/chatgpt/sentinel, graph.microsoft, login.microsoftonline, sms-платформы, yescaptcha, stripe/paypal, meiguodizhi.com (фейк-адреса США), ip-api/ipify, npmjs. Телеметрии/чужих ключей нет; обфускация только в вендоренном sdk.js самого OpenAI.

Забрать в стек: sentinel_http.py + core/sentinel_vm/*, agent_identity.py, add-phone endpoints, sms_provider.py, gateway_push.py + account_exports.py, email_provider.py.

2. chatgpt2api (yukkcat) — ВНЕДРЯТЬ как upstream пул-шлюза

v3.2.3, коммит 2026-09-09 (свежий, CHANGELOG активен август–сентябрь; v3.2.3 добавил gpt-image-2.5/flare/sunburst). AGPL-3.0 (внутреннее использование ок). FastAPI + curl_cffi + SQLAlchemy, docker.

  • Пул: БД (SQLite/Postgres), аккаунт = access_token (ключ) + refresh_token + id_token + email/plan/quota/status/proxy/group. Auto-refresh: JWT-skew 24ч, POST auth.openai.com/oauth/token grant_type=refresh_token, client_id app_2SKx67EdpoN0G6j64rFvigXD (публичный ChatGPT web). Ротация round-robin, 429/Retry-After обрабатываются, «限流»-статус после подтверждения.
  • Антибот: PoW (OpenAI-Sentinel-Proof-Token, скрипт chatgpt.com sentinel/sdk.js) + turnstile-эмуляция + impersonate chrome110 / Chrome 142 UA.
  • Модели: текст gpt-5.6, auto (годятся любые живые аккаунты включая free); картинки gpt-image-2, gpt-image-2.5, -flare, -sunburst, codex-gpt-image-2 + план-префиксы (только Plus/Team/Pro codex-аккаунты); PPT/PSD: /v1/ppt/generations, /v1/psd/generations, /v1/editable-file-tasks. Эндпоинты: /v1/chat/completions, /v1/responses, /v1/messages (Anthropic-compat), /v1/search, /v1/images/generations|edits (до 10 референсов).
  • Импорт наших токенов: POST /api/accounts (Bearer CHATGPT2API_AUTH_KEY) {"accounts":[{"access_token","refresh_token","email","type":"free|Plus","proxy","source_type":"web"}], "target_group_id":...} или просто {"tokens":[AT,...]}. Также умеет тянуть из CPA (/v0/management/auth-files) и sub2api (login → batch-export).
  • Запуск: docker compose up -d, порт 3000, CHATGPT2API_AUTH_KEY = админ-ключ и дефолтный Bearer для /v1. Python ≥3.13 без докера тоже.
  • Требования к аккаунтам: OAuth AT+RT (cookies не принимаются), phone не проверяется; для картинок нужны аккаунты с image-квотой (Plus); прокси на аккаунт обязательны при массовом пуле (бан-риск в README).
  • Red flags: минимум — только публичные client_id/auth0Client, апдейты с github allowlist, коммерческие ссылки автора в README. Секреты при импорте маскируются в логах.

Вердикт: готовый пул-шлюз. Схема: наши авторег-аккаунты (free на текст, Plus на картинки) → POST /api/accounts → /v1 канал в общий ротатор.

3. gpt-auto-register (7836246) — МУСОР

Selenium + undetected-chromedriver, коммит 2026-07-31. SMS-модуля нет вообще (grep phone/sms = 0) — только email-OTP с Cloudflare temp-email worker. Phone-gate не обрабатывается. Мёртвые маркеры: chat.openai.com (редиректит с 2023), Chrome/120 UA, expiry_year: 2025. Plus-trial через Stripe требует РЕАЛЬНУЮ карту (plaintext в config.yaml). Экспорт только email----password----дата----статус — токенов нет. Забирать нечего, кроме селекторной цепочки Stripe checkout + cancel_subscription (browser.py:651-1450) если понадобится авто-отмена Plus.

4. outlook-auto-register (lxf746) — единственный живой Outlook-протокол

Создан 2026-08-24, последний коммит 2026-09-23 (метод жив на момент клона). 989⭐ за месяц — возможен star-бот; shallow-клон 1 коммит.

Протокол: OAuth PKCE → signup.live.com/signup?lic=1 (ServerData) → API/CheckAvailableSigninName → login.microsoftonline.com/9188040d-6c67-4c5b-b112-36a304b66dad/api/v1.0/risk/initialize → preload humanSensorUrl + PX-коллектора (collector-pxzc5j78di.hsprotect.net, PerimeterX app PXzC5j78di) → risk/verify #1 (px metadata + msaRiskVerifySignature) → при riskChallengeRequired: captcha press/silent → risk/verify #2 (challengeSolution) → API/CreateAccount → login.live.com/oauth20_authorize.srf + ppsecure/post.srf → proofs (recovery email: IMAP-пул или Cloudflare catch-all worker; скип = мёртвые аккаунты) → опционально Passkey-skip + mail OAuth refresh_token (Graph/REST/login_exe Thunderbird scope). Arkose pubkey B7D8911C-5CC8-A9A3-35B0-554ACEE604DA. Web-консоль FastAPI :8890 (SSE-логи, dry-run default), SQLite-пул прокси (sticky, success-rate), keepalive/rescue.

SMS не нужен — вместо него recovery-email proofs. Но ANTIBAN.md: на свежем аккаунте Microsoft может запросить phone при триггере риск-контроля.

Критично: «чистый протокол без браузера» — маркетинг. Их же исследование (docs/px_hold_research.md, 2026-08): _px3 press-токен криптографически не подделать (AES-CBC+PBKDF2 на сервере PX, HMAC от UA, WASM PoW), silent-путь MS не пускает. Нужен либо платный солвер — captcha.run (press-фаза ОБЯЗАНА идти через ту же живую sticky-прокси, иначе списание без результата), CapSolver (AntiPerimeterXTask + FunCaptchaTask), EzCaptcha, OffCaptcha — либо бесплатный локальный harvester (их px_swiftshader_solver: headless Chromium + SwiftShader + CDP-клик 1–3с; тестировался на macOS) или BitBrowser-путь (Windows-friendly, локальный API :54345). 2captcha и Turnstile/reCAPTCHA-сайдкары НЕ подходят — тут PerimeterX + Arkose.

Экспорт: email----password----client_id----refresh_token (graph) / 6 сегментов (+recovery_email----recovery_password, Thunderbird scope IMAP/POP/SMTP+EWS+Mail.Read/Send — «формат продавцов») / dual (+login RT). Keepalive ротационно обновляет RT, пишет .refreshed/.dead.

Red flags: встроенные реферальные отчисления (CAPTCHA_RUN_DEVELOPER_ID, дефолтный OFFCAPTCHA_SOFT_ID, IPWO реф-код) — автор монетизирует ваши captcha-траты; часть тулов macOS-only (Swift).

Запуск сегодня (~30 мин): captcha-ключ или BitBrowser + CF catch-all worker под proofs + жилые {sid}-прокси (страна выхода = mkt/lc), 1 акк = 1 IP, ≤2 акка/IP/день, concurrency 1–2, jitter 3–8с, dry-run первым прогоном.

5. freeAgentIdentity (asz798838958) — это aBaiAutoplus

Коммит 2026-08-25, AGPL-3.0, 1487⭐. Outlook НЕ регистрирует — регистрирует ChatGPT (чистый протокол: curl_cffi + Sentinel в локальном Node V8 пуле, Codex client_id/scope → токены) и Cursor/Kiro (Camoufox). Outlook-ящики только ПОТРЕБЛЯЕТ как почтовый пул (local_ms_pool: Graph, fallback IMAP; api_mailbox HTTP; domain_imap_catchall; Inbucket). Авто-привязка TOTP 2FA, 401-верификация живости, протокольный recovery-логин, refresh токенов. Прокси: Mihomo-пул с pulse-расписанием. Экспорт: JSON/CSV/sub2api/agent-identity sub2api/CPA/Any2API (Kiro-Go, Grok). 2captcha — нативный провайдер; свой бесплатный Turnstile-солвер на :8889 (Camoufox/patchright, GET /turnstile?url&sitekey → taskId, GET /result?id → token) — совместим с нашим sidecar :8877 по API. Запустится сегодня (Python 3.11 venv + Node 18 + Camoufox fetch ~100MB + APP_PASSWORD), но t-online пул 17K подключается только через IMAP→HTTP-шим под api_mailbox.

6. outlookEmailPlus (ZeroPointSix) — ВНЕДРЯТЬ как mail-слой

v2.9.10, Apache-2.0, 2017⭐, активная разработка. Mail-менеджер для регистраций: Flask + Ant Design Pro фронт + MV3 extension.

  • Outlook через MS Graph (graph.microsoft.com/v1.0/me/messages, $batch) c OAuth refresh_token (встроенный token tool, «Get Authorization Link»), не ломающийся IMAP; Gmail/QQ/163/custom — generic IMAP (connection reuse).
  • HTTP API /api/external/* с X-API-Key — ровно то, что нужно фермам: GET verification-code (regex + AI-fallback), GET verification-link, GET wait-message (sync/async probe), messages/latest, health/capabilities/account-status.
  • Mail pool: POST pool/claim-random|claim-domain|claim-release|claim-complete, GET pool/stats — project_key-изоляция + success-reuse (успешный ящик сразу обратно в available). Идеально под фермы conol/miarouter/llmtr/omnirush.
  • Temp-mail плагины (CF Worker multi-domain, GPTMail, Moemail, hot-reload), Telegram-push, APScheduler polling, Docker+Watchtower hot-update.
  • Риски: фронт требует Node-сборки (API работает headless), demo-пароль в доках.

План: docker-compose → external_api_key → перевод ферм с ad-hoc IMAP-ридеров на /api/external/*.

Captcha-solver (waguriagentic) — обновить sidecar

Наш клон на 3dc52fe (20.07), upstream d68510df (14.10), ~21 коммит вперёд (сентябрь мёртвый, активность 07–14.10). Приоритет подтянуть:

  1. 2c642cfa fix(turnstile): interactive widget render + telemetry abort — прямо повышает acceptance бесплатных Turnstile-токенов
  2. d68510df port CloakBrowser → 154.0.8037.57.2
  3. aliyun-фиксы: x-region header (токен переносим между сессиями!), real_page mode, page-mount waits
  4. deploy: container image + geoip extra, PyPI mirror/fallback, resume partial wheels, resource-aware concurrency

Новых типов капч нет (arkose FunCaptcha ONNX был до нашего клона).

СТАТУС 14.10 — ВЫПОЛНЕНО: cs_sidecar подтянут 3dc52fe → d68510d (stash/pop, локальные патчи сохранены: mistral→:16432 qwen3-vl-plus, HUMANIZE=0), доустановлены geoip2+socksio. ВНИМАНИЕ: новая версия ввела Bearer-auth гейт на все API-пути — без SOLVER_ALLOW_UNAUTHENTICATED=1 все фармы ловили бы 401. Watchdog tmp/tk_watchdog.py пропатчен (добавлены SOLVER_ALLOW_UNAUTHENTICATED=1 + SOLVER_BIND_HOST=127.0.0.1), перезапущен. Пруф: /health 200, 11 типов, единственный listener 127.0.0.1:8877.

Итоговая схема стека

Outlook-ящики: outlook-auto-register (PX captcha.run/BitBrowser + CF catch-all proofs)
                    ↓ email----pass----client_id----refresh_token
Mail-слой:    outlookEmailPlus /api/external/* (claim pool + verification-code)
                    ↓
ChatGPT-рег:  gptfree-register (sentinel VM + Agent Identity → Codex auth.json без phone)
                    ↓ access_token + refresh_token
Пул-шлюз:     chatgpt2api docker :3000 (POST /api/accounts, auto-refresh, gpt-5.6 + gpt-image-2.5)
                    ↓ /v1 OpenAI-compat
Ротатор:      общий gateway (карантин по chat-403, не models-200)