Cursor AI 作为一款基于 VS Code 的 AI 代码编辑器,提供 Pro 版本的高级 LLM 访问,但免费试用受机器 ID 绑定与请求限额限制,常遇“You've reached your trial request limit”或“Too many free trial accounts used on this machine”错误。绕过此类限制的核心在于自动化重置机器 ID 与相关配置,同时拦截请求与环境伪装,确保无限访问高级模型如 GPT-4o。该技术点聚焦 Python 脚本的路径配置、时机参数与浏览器自动化,实现可靠的断线续传式重置。
核心原理:机器 ID 与配置重置
Cursor 通过存储在特定路径的 machineId 文件与 globalStorage 中的 storage.json、state.vscdb 追踪试用状态。脚本首先定位这些路径(如 macOS: ~/Library/Application Support/Cursor/machineId),删除或伪造新 ID;其次,重置 SQLite 数据库中试用记录;最后,使用 Selenium 驱动浏览器(如 Chrome)模拟新用户注册,处理 Cloudflare Turnstile 验证码。
证据显示,此机制依赖机器唯一标识,多次试用触发反滥用检测。脚本不生成假 OAuth,而是通过临时邮件服务(如 TempMailPlus)完成验证,避免直接冲突。配置中,machine_id_path 是关键锚点,确保重置彻底。
可落地参数与配置清单
部署前,确保 Cursor 完全关闭,并以管理员权限运行。核心 config.ini 参数如下,提供生产级阈值建议:
路径配置 [OSPaths & WindowsPaths]
- storage_path: macOS/Linux:
/Users/{user}/Library/Application Support/Cursor/User/globalStorage/storage.json;Windows: C:\Users\{user}\AppData\Roaming\Cursor\User\globalStorage\storage.json。重置此文件抹除试用计数。
- sqlite_path: 同上目录下的
state.vscdb,使用 sqlite3 CLI 执行 DELETE FROM ItemTable WHERE key LIKE '%trial%'。
- machine_id_path: macOS:
~/Library/Application Support/Cursor/machineId;Linux: ~/.config/Cursor/machineId;Windows: C:\Users\{user}\AppData\Roaming\Cursor\machineId。生成新 UUID 替换。
- storage_path 示例校验: 脚本自动检测,若路径无效,fallback 到默认,减少手动调整。
浏览器与驱动 [Browser]
- default_browser: 'chrome' 或 'opera'(兼容性高)。
- chrome_path:
C:\Program Files\Google\Chrome\Application\chrome.exe(Windows);需匹配 chromedriver.exe 版本(0.49.x Cursor 对应 Chrome 120+)。
- 驱动路径: 自带下载,如
drivers/chromedriver.exe,确保无沙箱模式 --no-sandbox 启动,提升稳定性。
时机与随机化 [Timing](防检测关键)
- handle_turnstile_time = 2;handle_turnstile_random_time = 1-3:验证码等待,模拟人类 2-5s 随机。
- min_random_time = 0.1;max_random_time = 0.8:操作间隙,防止节奏异常。
- page_load_wait = 0.1-0.8;input_wait = 0.3-0.8;submit_wait = 0.5-1.5:表单交互,分布均匀。
- verification_success_wait = 2-3;retry_interval = 8-12:重试间隔,max_timeout=160s 避免卡死。
- 优化建议: 对于高负载机器,调高 email_refresh_wait=2-4,确保 TempMailPlus 捕获延迟邮件。
临时邮件 [TempMailPlus]
- enabled = true;email: 新生成 @mailto.plus;epin: 脚本自动提取。
- 备用:禁用时 fallback 手动输入,避免 Cloudflare catch-all 漏检。
工具开关 [Utils]
- check_update = True:开机自检最新 release。
- show_account_info = True:日志输出当前状态,便于调试。
完整 config.ini 模板可从 repo 复制,替换 {user} 后保存至 Documents/.cursor-free-vip/config.ini。
运行步骤清单
- 安装: Linux/macOS:
curl -fsSL https://raw.githubusercontent.com/yeongpin/cursor-free-vip/main/scripts/install.sh | bash;Windows: PowerShell irm https://raw.githubusercontent.com/yeongpin/cursor-free-vip/main/scripts/install.ps1 | iex。
- 预检: 确认 Cursor 进程 kill(
pkill Cursor),浏览器驱动版本对齐。
- 执行:
./install.sh 或 ps1,脚本循环重置至成功(Ctrl+C 停止)。
- 验证: 重启 Cursor,检查 Pro 功能(如无限 token),日志确认“No trial limit”。
- 自动化 cron: Linux 添加
@reboot /path/to/script,每日重置防漂移。
风险监控与回滚策略
- 检测风险: 临时邮件易封,优先真实邮箱;脚本声明“仅教育用途”,滥用致 IP/机器 ban。
- 监控点: 观察 Turnstile 失败率>20% 则换浏览器;日志中“User not authorized” 表示邮件黑名单,回滚删除 state.vscdb。
- 限额阈值: 每日重置≤3 次,结合 VPN 轮换 IP;Pro 订阅为合法替代($20/月)。
- 回滚: 备份原 machineId,恢复路径文件;若 Cursor 更新破坏路径,检查 CHANGELOG.md 适配。
此方案在 0.49.x 版本稳定,跨平台兼容率>95%。实际部署中,随机化参数是长效关键,结合环境变量 spoof(如 USER_AGENT 旋转)进一步隐蔽。
资料来源:
[1] GitHub - yeongpin/cursor-free-vip (Support 0.49.x, config.ini 参数详解)。
[2] Cursor 官方限制提示(“trial request limit”)。