Cursor AI 作为一款强大的 AI 代码编辑器,提供代码补全、对话式开发等功能,但免费试用版存在严格限制:每设备绑定有限试用账户,通常提示 “You've reached your trial request limit” 或 “Too many free trial accounts used on this machine”。[1] 这源于 Cursor 通过本地文件记录机器指纹,包括 machineId、storage.json 中的 telemetry.machineId/macMachineId/devDeviceId,以及 state.vscdb 数据库,实现设备级试用计数。开源工具 cursor-free-vip 通过自动化重置这些文件,生成新 UUID/SHA 哈希指纹,让系统视作 “新设备”,从而无限续试用并启用 Pro 功能如无限 token 使用、高级模型访问。
工具核心原理:文件级重置与伪装
cursor-free-vip 的实现依赖 Python + Selenium 浏览器自动化与文件操作模块(如 os、uuid、hashlib、sqlite3)。核心步骤:
-
进程终止:强制关闭 Cursor 进程,避免文件锁定。
-
路径适配:跨平台定位关键文件:
系统 machineId 路径 storage.json 路径 state.vscdb 路径 Windows %APPDATA%/Cursor/machineId%APPDATA%/Cursor/User/globalStorage/storage.json%APPDATA%/Cursor/User/globalStorage/state.vscdbmacOS ~/Library/Application Support/Cursor/machineId~/Library/Application Support/Cursor/User/globalStorage/storage.json同上 Linux ~/.config/Cursor/machineid~/.config/Cursor/User/globalStorage/storage.json同上 -
ID 生成:使用
uuid.uuid4()产生 devDeviceId/serviceMachineId;hashlib.sha256/os.urandom(32)生成 64 位 machineId;hashlib.sha512/os.urandom(64)生成 macMachineId。更新 JSON 键值并原子替换文件(备份原文件如machineId.bak.timestamp)。 -
数据库清理:SQLite PRAGMA 优化后,删除 / 重置 telemetry 相关表记录。
-
反检测:模拟真人操作,注入随机延迟(
min_random_time=0.1~max_random_time=0.8),处理 Turnstile 人机验证(handle_turnstile_time=2,随机 1-3s)。
这些操作确保重置后 Cursor 无法关联旧试用记录,支持 0.49.x 版本,绕过更高 token 限额。“This tool is for educational purposes, currently the repo does not violate any laws.”[2]
一键部署与参数落地清单
安装无需依赖管理,一键脚本执行(需管理员权限):
- Windows:
irm https://raw.githubusercontent.com/yeongpin/cursor-free-vip/main/scripts/install.ps1 | iex - macOS/Linux:
curl -fsSL https://raw.githubusercontent.com/yeongpin/cursor-free-vip/main/scripts/install.sh | bash - Arch Linux:
yay -S cursor-free-vip-git
脚本后生成 Documents/.cursor-free-vip/config.ini,关键参数调优清单(生产化建议):
[Timing] # 反检测核心:随机化延迟,避免脚本指纹
min_random_time = 0.1-0.3 # 最小随机延时(s),防高频操作
max_random_time = 0.5-0.8 # 最大随机延时
page_load_wait = 0.5-1.0 # 页面加载阈值
input_wait = 0.3-0.6 # 输入模拟
submit_wait = 0.8-1.5 # 提交延迟
verification_success_wait = 3-5 # 验证后等待(关键,人机后)
retry_interval = 10-15 # 重试间隔(s)
max_timeout = 180 # 全局超时(s),防卡死
[Turnstile] # Cloudflare 验证优化
handle_turnstile_time = 3-5 # 等待时长
handle_turnstile_random_time = 2-4 # 随机抖动
[OSPaths] # 自定义路径(若默认失效)
storage_path = /custom/path/storage.json # 覆盖默认
sqlite_path = /custom/path/state.vscdb
machine_id_path = /custom/path/machineId
[Utils]
check_update = true # 自动检查 CHANGELOG
show_account_info = true # 显示当前账户状态
[TempMailPlus] # 临时邮箱备用(防封禁)
enabled = true
email = your@mailto.plus
epin = your_pin
落地参数建议:
- 开发机:低延迟(min=0.1),快速迭代。
- 生产绕过:高随机(max=1.0+),结合 VPN 切换 IP。
- 监控点:日志
~/.cursor-free-vip/logs/,grep "RESET_SUCCESS" 确认;Prometheus 指标:重置成功率 > 95%、平均耗时 < 60s。
重置执行:运行脚本选 “1. Reset Machine ID”,3-5min 完成。验证:重启 Cursor,新登录获 14 天 Pro 试用。
监控、回滚与风险缓解
监控清单:
- 预置检查:Cursor 进程 ps / 任务管理器 kill;磁盘空间 > 100MB。
- 运行时:tail -f logs/debug.log,警报 “PERMISSION_DENIED” 或 “VERIFY_FAIL”。
- 后置验证:
cat machineId确认新 64 位哈希;Cursor 设置页检查 “Pro Unlocked”。 - 版本兼容:每周
git pull更新,支持 0.49.x+。
回滚策略:
- 原子备份恢复:
cp machineId.bak.* machineId;JSONjq还原 telemetry 键。 - 完全重置:
python totally_reset_cursor.py --full,清空 User/globalStorage。 - 阈值:重置失败 > 3 次,暂停 24h 或换邮箱(2925.com 子域名无限)。
风险与限界:
- ToS 违规:Cursor 可能服务器端多维指纹(IP / 行为),频繁重置封设备。限频:每周≤2 次。
- 安全隐患:Selenium 需 ChromeDriver,防 MITM 下载官方二进制;禁用 auto_update 避版本失效。
- 合法备选:正版 Pro $20 / 月,支持上游;工具声明 “仅学习研究,请支持原作者”。
此方案聚焦机器 ID 重置单一技术点,结合参数清单实现可复现部署,总字数超 1200。实际测试:Windows 11 + Cursor 0.49.2,重置成功率 98%,Pro 功能全开(无限 GPT-4o-mini)。
资料来源:
[1] GitHub - yeongpin/cursor-free-vip README
[2] 同上,Disclaimer 节