Files
admin/.wiki/raw/forgetmeai-repo-analysis-2026-08-22.md

5.1 KiB
Raw Blame History

ForgetMeAI — анализ репозиториев (2026-08-22)

Первичная запись: анализ GitHub-аккаунта https://github.com/ForgetMeAI (id 76566648) по теме lwp (бесплатные web-chat LLM прокси, обход капчи/анти-бот). Собрано 2026-08-22 из GitHub API

  • shallow-clone всех репов (коммиты не фиксировались — референс на дату анализа).

Список репозиториев (GitHub API, sort=updated)

name stars language fork pushed_at description
FreeDeepseekAPI 318 JavaScript no 2026-07-13 Локальный API-прокси для DeepSeek Web Chat с поддержкой OpenAI/Anthropic API, streaming, tool calling, Responses API и Open WebUI
FreeQwenApi 212 JavaScript yes 2026-07-13 Локальный API-прокси для Qwen AI с поддержкой сохранения контекста диалогов и управления сессиями
FreeGLMKimiAPI 67 JavaScript no 2026-06-20 OpenAI/Anthropic-совместимый локальный прокси для бесплатных веб-моделей GLM/Z.ai и Kimi
FreeKimiAPI 27 JavaScript no 2026-06-20 Локальный OpenAI/Anthropic/Responses-compatible прокси для бесплатного Kimi endpoint cfbt
FreeNIMAPI 11 JavaScript no 2026-07-17 мост к NVIDIA NIM
design-harness 0 JavaScript no 2026-08-07 Approval-gated web design workflow (не в тему)
local-inference-optimizer-skill 8 Python no 2026-06-28 Skill для Hermes/Claude Code/Codex: выбор LLM inference (не в тему)
grok_account_checker 0 Python no 2026-07-14 мониторинг X-аккаунтов / SuperGrok

Ключевые файлы (по репо)

FreeDeepseekAPI

  • lib/pow.js (54 строки) — PoW-солвер DeepSeek Web API: WASM compile-once cache по URL, префикс salt_expire_at_, wasm_solve(sp, c, cLen, p, pLen, difficulty), ответ float64 → floor.
  • chrome-extension/background.js — экспортёр сессии: куки chat.deepseek.com (token, ds_session_id, smidV2) + localStorage (hif_dliq, hif_leim) из залогиненной вкладки.
  • scripts/deepseek_chrome_auth.js — auth через отдельный Chrome-профиль, deepseek-auth.json 0600, импорт cookie export, перенос auth-файла на VPS (scp).

FreeQwenApi (форк, main.js — qwen v2 API)

  • src/browser/browser.js — puppeteer-extra + stealth-плагин + page.evaluateOnNewDocument фингерпринт-спуфинг: platform=Win32, hardwareConcurrency=8, deviceMemory=8, plugins (Chrome PDF), connection 4g/50ms, getBattery, canvas-noise (±2) в toDataURL, задержки mousemove/mousedown/mouseup. Launch args: --disable-blink-features=AutomationControlled, --disable-web-security, и др.
  • src/api/chat.js — чат: Node-fetch пробуется первым; при анти-бот (детект rgv587|fail_sys_user_validate|_____tmd_____|purecaptcha, punish-URL) — fallback на browser fetch через page.evaluate(fetch(apiUrl,...)) (настоящий фингерпринт → WAF пропускает). credentials:'omit' по умолчанию. Детект анти-бот на 200: /_____tmd_____/punish, window._config_+captcha, purecaptcha.
  • src/browser/session.js — cookies в sessions/accounts/acc_<ts>/cookies.json.
  • src/browser/auth.jsstartManualAuthenticationPuppeteer: видимый браузер, ручной логин.

FreeGLMKimiAPI

  • src/providers/zaiBrowser.js (341 строка) — browser fallback для Z.ai:
    • isZaiCaptchaError: /captcha|FRONTEND_CAPTCHA_REQUIRED|verify again|verification failed|refresh the page to update the app|人机验证失败|请重新验证|刷新页面以更新应用|aliyun|waf|punish/i
    • движки: puppeteer-extra+stealth (default) | cloakbrowser (опция ZAI_BROWSER_ENGINE=cloak)
    • persistent-профиль, humanize, locale/timezone/proxy/geoip env, чистка SingletonLock/Cookie/Socket
  • docs/cloakbrowser-notes.md (52 строки) — выводы по CloakHQ/CloakBrowser: патченый Chromium, launchPersistentContext, persistent профили, humanize, geoip-согласование, ограничение (не решает уже сработавшую капчу).

FreeKimiAPI

  • src/upstream.js — классификация: capacity_exceeded (3040/capacity), blocked_by_upstream (1010/browser_signature_banned/access denied), rate_limited, circuit-breaker.

grok_account_checker

  • auth.py + grok_checker.py — официальный OAuth 2.0 PKCE (Playwright), локальный callback-сервер. Явно: не обходит Turnstile/CAPTCHA/2FA, только authorized use.

Ссылки