10 KiB
title, type, tags, sources, updated
| title | type | tags | sources | updated | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ForgetMeAI: семейство бесплатных web-chat прокси (DeepSeek/Qwen/GLM/Kimi) — паттерны обхода анти-бот | concept |
|
|
2026-08-22 |
ForgetMeAI: бесплатные web-chat прокси — что там есть для lwp
Обзор GitHub-аккаунта ForgetMeAI (8 репозиториев, автор t.me/forgetmeai) 2026-08-22. Весь аккаунт — ровно та же ниша, что lwp (llm-web-proxy): локальные прокси, превращающие бесплатные веб-чаты LLM в OpenAI/Anthropic-совместимые API. Часть репов — прямые аналоги комбо lwp, их подходы к анти-боту — готовый референс для разблокировки qwen-web и укрепления deepseek-web.
Репозитории (по теме)
| Репо | ⭐ | Что это | Отношение к lwp |
|---|---|---|---|
| FreeDeepseekAPI | 318 | deepseek web-chat → OpenAI/Anthropic API. PoW-солвер (lib/pow.js) + Chrome-расширение-экспортёр сессии |
прямой аналог комбо deepseek-web; PoW уже портирован в lwp (src/vendor/deepseek-pow.ts) |
| FreeQwenApi | 212 (форк) | qwen web-chat → OpenAI API. Работает через браузер (stealth-пуппетеер, fetch внутри page.evaluate) |
ключ к разблокировке [llm-web-proxy-qwen-web]: baxia-WAF проходится браузерным фингерпринтом |
| FreeGLMKimiAPI | 67 | GLM/Z.ai + Kimi прокси. Прямой fetch + browser-fallback, CloakBrowser (патченый Chromium), классификация капчи (Aliyun WAF, FRONTEND_CAPTCHA_REQUIRED, 人机验证失败, punish) |
референс: классификаторы капчи, cloakbrowser-заметки |
| FreeKimiAPI | 27 | Kimi cfbt endpoint прокси, circuit-breaker на browser_signature_banned (1010) |
простейший аналог, паттерн circuit-breaker уже есть в lwp |
| FreeNIMAPI | 11 | мост к NVIDIA NIM (trial) | не про капчу |
| grok_account_checker | 0 | мониторинг X-аккаунтов/SuperGrok: официальный OAuth 2.0 PKCE (Playwright) | честно: не обходит Turnstile/CAPTCHA/2FA |
Главный паттерн аккаунта: НЕ решать капчу, а обходить через реальную браузерную сессию
Универсальный приём у ForgetMeAI (и у всех живых free-chat прокси):
- Один раз логинишься в реальном Chrome (видимый режим, persistent-профиль) → капчу/2FA проходишь руками.
- Сессия захватывается одним из способов:
- Chrome-расширение читает куки + localStorage из залогиненной вкладки (FreeDeepseekAPI:
token,ds_session_id,smidV2, localStoragehif_dliq/hif_leim); - экспорт полного cookie-заголовка / cookie-файла и вставка в конфиг;
- persistent browser profile (профиль переживает рестарты, куки живут).
- Chrome-расширение читает куки + localStorage из залогиненной вкладки (FreeDeepseekAPI:
- Дальше прокси ходит с живой сессией: прямой fetch с cookie-jar, ИЛИ fetch внутри браузерного контекста (
page.evaluate) — когда WAF привязан к device-фингерпринту, а не к кукам.
Исключение из «не решать»: DeepSeek PoW — его решают локально (WASM-солвер, см. ниже).
PoW-солвер DeepSeek (FreeDeepseekAPI/lib/pow.js)
- Грузит WASM-модуль челленджа по URL, компилирует один раз и кэширует
WebAssembly.Module(по URL), каждый solve — свежий Instance (чистая линейная память). - Префикс челленджа:
salt + '_' + expire_at + '_', затемchallenge + prefixв память WASM, вызовwasm_solve(sp, cBytes, cBytes.length, pBytes, pBytes.length, difficulty), ответ —float64(ans) →Math.floor. - Жёсткий таймаут на fetch WASM (15s), неудачная загрузка не кэшируется.
- В lwp PoW уже есть (
src/vendor/deepseek-pow.ts+deepseek-pow-solver.cjs), deepseek-комбо работает — ничего не портировать. Сравнить подходы при желании: lwp-версия из omniroute (TS), ForgetMeAI-версия автономная (CJS, 54 строки) — пригодна как fallback/референс.
qwen-web: браузерный путь через baxia-WAF (главное для lwp)
Наш вывод из сессии 2026-08-22 (omniroute-combo-deepseek-web-tuning): капча Alibaba baxia-WAF привязана к device-фингерпринту (bx-umidtoken минтится JS из sg-wum.alibaba.com), не к cookie; Node-fetch и даже CDP-запросы мимо страницы виснут.
FreeQwenApi подтверждает и даёт рабочий путь:
src/browser/browser.js— puppeteer-extra + stealth-плагин + тяжёлый фингерпринт-спуфинг вpage.evaluateOnNewDocument:navigator.platform='Win32',hardwareConcurrency=8,deviceMemory=8, фейкplugins(Chrome PDF Plugin),connection(4g/50ms/10Mbps),getBattery, шум вHTMLCanvasElement.toDataURL(±2 на пиксель — бьёт canvas-фингерпринт), обёртки-задержки наmousemove/mousedown/mouseup(человечность). Launch args:--disable-blink-features=AutomationControlled,--disable-web-securityи др.src/api/chat.js— чат-запрос исполняется внутри страницы:page.evaluate(async (data) => fetch(data.apiUrl, {...})). Так запрос несёт настоящий umidtoken + canvas-фингерпринт + same-origin → WAF пропускает. Node-стриминг пробуется первым, при анти-бот (antiBot детект:rgv587|fail_sys_user_validate|_____tmd_____|purecaptcha) — fallback на browser-fetch.- Детект анти-бот-эневелопов на HTTP 200:
lower.includes('/_____tmd_____/punish') || (window._config_ && captcha) || purecaptcha. - Первичная авторизация — ручная (видимый браузер,
startManualAuthenticationPuppeteer), сессия — cookies вsessions/accounts/.
Вывод для lwp: рабочий сценарий qwen-web = браузерный executor (puppeteer/playwright + stealth + фингерпринт-спуфинг + fetch в page.evaluate), а не реплей cookie-jar через undici. Референс-код закоммичен в lwp: docs/reference/forgetmeai/.
CloakBrowser-заметки (FreeGLMKimiAPI/docs/cloakbrowser-notes.md)
Пропатченный Chromium против анти-бот (CloakHQ/CloakBrowser + Manager):
- Настоящий патченый браузер (не JS-инъекции): stealth на уровне бинаря, Playwright-совместимый
launchPersistentContext(). - Persistent не-incognito профили обязательны: сохраняются куки/localStorage, меньше детекта.
- Humanize-слой: печать/клики/скролл с реалистичными задержками через доверенные input-пути.
- Согласованность locale/timezone/proxy: флаги браузера + geoip-сверка с IP прокси (в lwp-контексте — per-account proxy уже есть).
- Очистка lock-файлов профиля (
SingletonLock/SingletonCookie/SingletonSocket) после падений. - Ограничение: патченый браузер не решает уже сработавшую капчу — один раз пройти руками в видимом профиле.
Классификация капчи/анти-бот (референс-регэкспы)
- DeepSeek: PoW-челлендж (salt/expire_at/difficulty), 503
chat_admission_busy= capacity (не капча). - Qwen (baxia-WAF):
FAIL_SYS_USER_VALIDATE,RGV587_ERROR::SM::...,_____tmd_____/punish,x5secdata,rgv587,purecaptcha,success:falseна 200. - Z.ai (GLM):
FRONTEND_CAPTCHA_REQUIRED,人机验证失败,请重新验证,刷新页面以更新应用,aliyun,waf,punish. - Kimi cfbt:
browser_signature_banned(1010),access denied. - Общий маркер WAF-страницы:
text/htmlв ответе API +aliyun_waf|baxia|<html.
Что берём в lwp (статус)
- PoW-солвер — уже портирован (
src/vendor/deepseek-pow.ts). - Классификаторы капчи qwen — уже в
src/lib/qwen-web-executor.ts(isQwenErrorEnvelope: FAIL_SYS_USER_VALIDATE/punish/x5secdata). - Референс-код браузерного пути qwen —
docs/reference/forgetmeai/(коммит 2026-08-22). - Браузерный executor qwen (puppeteer + фингерпринт-спуфинг + fetch в page.evaluate) — следующий шаг для [llm-web-proxy-qwen-web], см. qwen-waf-browser-path в вики lwp.
- (опция) CloakBrowser как запасной движок для z.ai/kimi, если понадобятся.
Связанное
- omniroute-combo-deepseek-web-tuning — диагноз web-комбо, baxia-WAF, план lwp
- llm-web-proxy (таска) — спек lwp
- lwp/.wiki: qwen-waf-browser-path, forgetmeai-qwen-browser-fetch (sources)