Open-source Grok free registration CLI, xai_enroller auth pipeline, local auth service, tests and docs.
125 lines
6.4 KiB
Plaintext
125 lines
6.4 KiB
Plaintext
# grok-free-register 配置模板
|
||
# 复制为 .env 后按需修改。未填写的项目会使用程序默认值。
|
||
|
||
# 邮箱模式
|
||
# tempmail: 免费临时邮箱,适合快速试跑。
|
||
# custom: 自建域名邮箱,需要 Cloudflare Email Routing 和本地收信服务。
|
||
EMAIL_MODE=tempmail
|
||
|
||
# custom 模式专用
|
||
# EMAIL_DOMAIN=example.com
|
||
# EMAIL_API=http://127.0.0.1:8080
|
||
|
||
# 认证账号来源
|
||
# auto: 配置 SSH 主机时读取远端,否则读取当前项目;一般保持默认即可。
|
||
# XAI_AUTH_SERVICE_SOURCE=auto # auto | local | ssh
|
||
# XAI_AUTH_SERVICE_REGISTER_ROOT=. # local 模式下的注册项目目录
|
||
|
||
# 注册与认证不在同一台机器时填写
|
||
# XAI_AUTH_SERVICE_SSH_HOST=user@server.example
|
||
# XAI_AUTH_SERVICE_SSH_IDENTITY=/path/to/key.pem
|
||
# XAI_AUTH_SERVICE_REMOTE_ROOT=/opt/grok-free-register
|
||
# XAI_AUTH_SERVICE_SYNC_SEC=30 # 同步新账号的间隔(秒)
|
||
|
||
# 认证节奏
|
||
# XAI_AUTH_SERVICE_MIN_INTERVAL_SEC=10 # 两次认证请求的基础最小间隔(秒)
|
||
# # 触发限流后会自动抬高(约18s起,最多约90s),成功连串后再缓慢回落
|
||
# XAI_AUTH_SERVICE_RETRY_SEC=60 # 被限流后的基础探测间隔(秒);连续撞限会按 1.5x 增长,上限 300s
|
||
# XAI_AUTH_SERVICE_LOG_MODE=user # user | debug
|
||
|
||
# 运行目标
|
||
# TARGET=0 # 成功 N 个后停止;0=不限
|
||
|
||
# 日志显示
|
||
# REGISTER_LOG_MODE=user # 默认:任务开始、结果、平均速度和限流等待
|
||
# REGISTER_LOG_MODE=debug # 额外显示 T/Q/并发/阶段耗时调试面板
|
||
|
||
# 浏览器并发容量
|
||
# PHYSICAL_CAP=0 # 0=按 CPU/内存自动估算;>0=手动指定
|
||
# PHYSICAL_PER_CPU=2 # 自动估算时每个 CPU 核心对应的并发参考值
|
||
# PHYSICAL_MEM_MB=512 # 自动估算时每个浏览器任务的内存预算(MB)
|
||
# MIN_FREE_MEM_MB=500 # 自动估算时保留的内存(MB)
|
||
# CAPACITY_PROFILE= # 可选:离线压测生成的静态 profile(JSON)
|
||
|
||
# 缓冲容量
|
||
# T_SLOT_CAP=8
|
||
# Q_SLOT_CAP=8
|
||
# Q_PENDING_CAP=12
|
||
|
||
# Worker 数量
|
||
# 通常不需要手动设置。0 表示根据容量自动派生。
|
||
# S_WORKERS=0
|
||
# P_WORKERS=0
|
||
# C_WORKERS=0
|
||
|
||
# 资源有效期
|
||
# T_MAX_AGE=300 # token 最大年龄(秒)
|
||
# Q_MAX_AGE=120 # 验证码最大年龄(秒)
|
||
|
||
# 阶段超时
|
||
# P_REQUEST_TIMEOUT=95 # 等待验证码返回超时(秒)
|
||
# C_CONSUME_TIMEOUT=60 # 最终提交阶段超时(秒)
|
||
|
||
# 局部门控和批量发送
|
||
# 这些项目默认会按容量派生。只有在压测定位后才建议覆盖。
|
||
# T_TARGET=4 # token 缓冲目标
|
||
# Q_TARGET=4 # 验证码缓冲目标
|
||
# T_HIGH_WATER= # token 生产高水位
|
||
# T_LOW_WATER= # token 生产恢复低水位
|
||
# Q_HIGH_WATER= # 验证码生产高水位
|
||
# Q_LOW_WATER= # 验证码生产恢复低水位
|
||
# P_BATCH_MAX=4 # 单个发送页面最多发送的验证码请求数
|
||
# P_SEND_CAP=0 # 0=不额外限制;>0=限制发送页面并发
|
||
|
||
# 页面和 token 获取
|
||
# SOLVER_REUSE=1 # token 页面复用
|
||
# MAX_SOLVER_REUSE=25 # 单个 token 页面最大复用次数
|
||
# SOLVER_INITIAL_WAIT_MS=500 # token 注入后的首次等待
|
||
# SOLVER_POLL_INTERVAL_MS=500 # token 轮询间隔
|
||
# SOLVER_POLL_ATTEMPTS=100 # token 最大轮询次数
|
||
# SOLVER_HARD_TIMEOUT=90 # 单次 solver 全链路硬截止(秒)
|
||
# SOLVER_CLEANUP_TIMEOUT=5 # 异常页回收最长等待(秒)
|
||
# SOLVER_FAST_CLICK=1 # 没有可见验证框时跳过慢点击
|
||
# SOLVER_MOUSE_CLICK_RETRIES=3 # token 验证框中心点击次数;0=关闭
|
||
# SOLVER_MOUSE_CLICK_INTERVAL_MS=600 # token 中心点击间隔(ms)
|
||
# PAGE_GOTO_WAIT_UNTIL=domcontentloaded # 页面导航等待策略
|
||
# PAGE_POST_WAIT_MS=500 # 页面导航后的短等待
|
||
|
||
# 可选性能开关
|
||
# PAGE_BLOCK_STATIC_ASSETS=0 # 阻断部分静态资源,降低页面准备成本
|
||
# C_HOT_PAGE_POOL=0 # 复用消费阶段页面,会增加常驻内存
|
||
# C_HOT_PAGE_POOL_SIZE=0 # 0=按启动期并发派生;>0=手动指定
|
||
# C_SET_COOKIE_VIA_REQUEST=0 # 用浏览器 request 访问 set-cookie URL;热页池开启时默认启用
|
||
|
||
# ---------------------------------------------------------------------------
|
||
# 代理(grok-free-register 本进程出口,给 Playwright + httpx)
|
||
# 与下面 FlareSolverr 清障栈是两套东西,不要混。
|
||
# Playwright 不会自动读环境变量,代码里会显式挂到 launch(proxy=...)。
|
||
# ---------------------------------------------------------------------------
|
||
# REGISTER_PROXY=http://127.0.0.1:40080 # 优先;指向本机 privoxy→WARP 时用这个
|
||
# HTTP_PROXY=http://127.0.0.1:7890 # 兜底(REGISTER_PROXY 未设时)
|
||
# HTTPS_PROXY=http://127.0.0.1:7890
|
||
|
||
# ---------------------------------------------------------------------------
|
||
# Cloudflare 清障预热(调用外部 FlareSolverr,不在本仓起 FS)
|
||
# 默认 FS: docker compose 暴露 127.0.0.1:8191
|
||
# 预热根域名(无 path 后缀): accounts.x.ai / x.ai / status.x.ai / console.x.ai / auth.x.ai
|
||
# CLEARANCE_PROXY 是 FS *容器内* 浏览器的出口,必须是容器可达地址;
|
||
# 不要把 host 的 127.0.0.1 塞进去。走 WARP 时用 docker 网内 privoxy。
|
||
# ---------------------------------------------------------------------------
|
||
# CLEARANCE_ENABLED=1
|
||
# FLARESOLVERR_URL=http://127.0.0.1:8191
|
||
# CLEARANCE_URLS=https://accounts.x.ai,https://x.ai,https://status.x.ai,https://console.x.ai,https://auth.x.ai
|
||
# CLEARANCE_PROXY=http://privoxy:8118
|
||
# CLEARANCE_TIMEOUT_SEC=60
|
||
# CLEARANCE_REFRESH_SEC=3000
|
||
|
||
# ---------------------------------------------------------------------------
|
||
# 本机注册 → 推 keys 到远端 auth(可选;scripts/push_keys_to_auth.sh)
|
||
# 无内置默认主机,必须显式填写。
|
||
# ---------------------------------------------------------------------------
|
||
# AUTH_SSH_HOST=user@auth-server.example
|
||
# AUTH_REMOTE_ROOT=/opt/grok-free-register
|
||
# AUTH_SSH_IDENTITY=
|
||
# AUTH_PUSH_INTERVAL=20
|