Cursor 的 Debug 模式误删我 E 盘 921GB 文件

1 天前
 tianhehechu

大家慎用 Windows 系统下 Cursor 的 Debug 模式。

我已被 Cursor 误删 E 盘上 921GB 的重要数据。我有备份,但最新备份是 2024 年的。

手机码字,电脑在恢复数据,不敢再开任何应用。事故现场截图我等数据恢复完再贴上。事发过程简述如下。

近日业余时间,本来在用 Cursor 愉快地 「 vibe coding 」一个有趣的个人开源项目(此处我必须模糊表述,想留点悬念,等数据恢复处理完,收收尾会发布。本来憋了个大的准备发布时发个帖子,还想象了项目发布后和其他 V 友一样获得点关注,没想到最后关头 Cursor 给我拉了坨大的。但我不恨 Cursor ,已经很惊艳了。)。

继续说。项目即将完成,我整在添加和调试一些 Demo 。

调试过程中,考虑将所有依赖 Node 的 Demo ,统一升级到较新的 Node 版本。我和 Cursor 一起评估规划了方案,Cursor 建议我直接统一依赖到 Node24+ 。

方案制定好了,我想到我本机的 Node24 有点问题,一是 npm install 无控制台日志输出( npm install --verbose 才能看到日志),二是 npm install 下载 Electron 依赖时,会卡在 postinstall { code: 0, signal: null }(国内镜像源能解决此问题,但我比较排斥)。于是我让 Cursur 帮我排查。

此时 Cursor 是开着上文提到的那个项目的,我将 Cursor 切到了 Debug 模式,给 Cursor 如下的提示词(回忆版且适当概括):

① 我的操作系统是 Windows 10 ,使用解压版的 nvm 管理多个版本的 Node ,我下载了多个版本的 Node 解压版,解压并以 vxxxx (版本号)的形式命名后放在了 nvm 根目录。nvm list 可正常识别,nvm use 可正常完成 Node 版本切换;

② Node18 工作和控制台日志输出正常,20 、22 、24 存在问题(上文已描述过)。

③ 贴了 nvm 、node (当前使用的是 24 ) 和 npm 的版本信息,nvm 根目录截图以及 nvm list 的输出。贴了当前系统 path 下所有环境变量。

④明确告知 Cursor ,可以在当前先后根目录下的 tmp 文件夹内,创建调试用的 Electron 小项目。如果需要其他信息或需要我协助执行操作,可以询问我。

经过一番排查,Cursor 给出的方案是在用户目录下的 npmrc 中,添加 loglevel=info ,并指定 Electron 的国内镜像源。我手动添加、指定了。问题排查到此没必要继续了,控制台输出问题已解决,国内镜像源只能接受。于是我按照提示点击了 [ Mark fixed ] 按钮,表示已修复。

在上述排查过程中,Cursor 在当前项目目录(项目在 E 盘,但非 E 盘根目录,在 E 盘根目录下第 4 层)的根目录(强调:是当前项目根目录)的 tmp 文件夹内直接或间接(调用工具、指令)自动生成了名为 node-diag 的子文件夹,该子文件夹的原貌已不可知。在事故发生后,在残留的此文件夹上(没错,该删的没删干净,不该删的全删了)点进去后,内层都是单个文件夹,最内层是一个名为 default_app.asar 的文件,从 tmp 到 default_app.asar 的路径为 .\node-diag\node_modules\electron\dist\resources\default_app.asar 。

我点击了 [ Mark fixed ] 按钮后,Cursor 按照惯例,开始了 Debug 完成后的自动清理,本次调试不涉及埋点, 因此 Cursor 开始自动清理 Debug 过程中 tmp 目录内产生的调试文件和日志文件。一分钟后 Cursor 前端提示执行成功,一切就如往常一样顺利,此时的我还沉浸在项目收尾的激动中,丝毫没意识到今晚(现在是凌晨,所以准确说是昨晚)将是个不眠之夜。

我忘记了我是因何打开了资源管理器并进入了 E 盘,也许是上天眷顾吧。我突然发现原本爆红的 E 盘血槽空白,下面显示 950 GB 可用(此处为了保护隐私,取了约数),我第一反应是系统显示有误,下意识在资源管理器右键刷新了一下,还是一样。

一瞬间我意识到,坏菜了,Cursor 这是要删库跑路了 。

我马上让 Cursor 核查刚刚 Debug. 时执行了什么命令,导致 E 盘被清空。Cursor 回答,在 Debug 完清理 tmp 下的调试文件和日志时,它在执行了危险的删除命令,但它没处理好 Windows Poweshell 下的引号有问题,导致删除对象从 tmp 内的文件(或文件夹),变成了 E 盘根目录下的所有文件(或文件夹),并且删除是直接删不放回收站。

事已至此,Cursor 给了我一堆诸如从备份盘、网盘恢复等没卵用的建议,并向我表达了同情,让我节哀的意思。Cursor 在思考过程中,我还看到它在检查是否有 git 记录可供恢复数据,有是不可能有的,别说根目录了,就连原本有 git 的当前项目目录,也被它删除干净了。

以上是事故过程简述。

Cursor 以及它所依赖的大模型,似乎都不太擅长 Windows 命令行操作,不知这锅该 Windows 背,还是该大模型背。

总之,大家慎用 Windows 系统下 Cursor 的 Debug 模式,严格控制删除命令。最好在远程或虚拟机下使用。

用 DiskGenius 的提示信息结语:

「数据无价,谨慎操作」。 ④明确告知 Cursor ,可以在当前先后根目录下的 tmp 文件夹内,创建调试用的 Electron 小项目。如果需要其他信息或需要我协助执行操作,可以询问我。

经过一番排查,Cursor 给出的方案是在用户目录下的 npmrc 中,添加 loglevel=info ,并指定 Electron 的国内镜像源。我手动添加、指定了。问题排查到此没必要继续了,控制台输出问题已解决,国内镜像源只能接受。于是我按照提示点击了 [ Mark fixed ] 按钮,表示已修复。

在上述排查过程中,Cursor 在当前项目目录(项目在 E 盘,但非 E 盘根目录,在 E 盘根目录下第 4 层)的根目录(强调:是当前项目根目录)的 tmp 文件夹内直接或间接(调用工具、指令)自动生成了名为 node-diag 的子文件夹,该子文件夹的原貌已不可知。在事故发生后,在残留的此文件夹上(没错,该删的没删干净,不该删的全删了)点进去后,内层都是单个文件夹,最内层是一个名为 default_app.asar 的文件,从 tmp 到 default_app.asar 的路径为 .\node-diag\node_modules\electron\dist\resources\default_app.asar 。

我点击了 [ Mark fixed ] 按钮后,Cursor 按照惯例,开始了 Debug 完成后的自动清理,本次调试不涉及埋点, 因此 Cursor 开始自动清理 Debug 过程中 tmp 目录内产生的调试文件和日志文件。一分钟后 Cursor 前端提示执行成功,一切就如往常一样顺利,此时的我还沉浸在项目收尾的激动中,丝毫没意识到今晚(现在是凌晨,所以准确说是昨晚)将是个不眠之夜。

我忘记了我是因何打开了资源管理器并进入了 E 盘,也许是上天眷顾吧。我突然发现原本爆红的 E 盘血槽空白,下面显示 950 GB 可用(此处为了保护隐私,取了约数),我第一反应是系统显示有误,下意识在资源管理器右键刷新了一下,还是一样。

一瞬间我意识到,坏菜了,Cursor 这是要删库跑路了 。

我马上让 Cursor 核查刚刚 Debug. 时执行了什么命令,导致 E 盘被清空。Cursor 回答,在 Debug 完清理 tmp 下的调试文件和日志时,它在执行了危险的删除命令,但它没处理好 Windows Poweshell 下的引号有问题,导致删除对象从 tmp 内的文件(或文件夹),变成了 E 盘根目录下的所有文件(或文件夹),并且删除是直接删不放回收站。

事已至此,Cursor 给了我一堆诸如从备份盘、网盘恢复等没卵用的建议,并向我表达了同情,让我节哀的意思。Cursor 在思考过程中,我还看到它在检查是否有 git 记录可供恢复数据,有是不可能有的,别说根目录了,就连原本有 git 的当前项目目录,也被它删除干净了。

以上是事故过程简述。

Cursor 以及它所依赖的大模型,似乎都不太擅长 Windows 命令行操作,不知这锅该 Windows 背,还是该大模型背。

总之,大家慎用 Windows 系统下 Cursor 的 Debug 模式,严格控制删除命令。最好在远程或虚拟机下使用。

用 DiskGenius 的提示信息结语:

「数据无价,谨慎操作」。

天河何处 2026 年 5 月 22 日 凌晨 在住处

4516 次点击
所在节点    Cursor
89 条回复
tianhehechu
1 天前
@owtotwo 感谢提供建议。我这次是怕了,还是放虚拟机,然后 物理机 Cursor 连过去,或者使用旧版本 VMWare Workstation Pro 的 Unity 模式。
tianhehechu
1 天前
@Torpedo 确实如此,吸取教训了,以后关虚拟机用,或者用 Linux 。
tianhehechu
1 天前
@simo 哈哈,实在不好意思,从便签打的草稿,粘贴过来时上一个版本没删除干净。
tianhehechu
1 天前
@bowencool 真不好意思,鬼打墙了
tianhehechu
1 天前
@bowencool 唉,以前是 Windows 粉、Mac 黑,是我不对,以后吸取教训了
tianhehechu
1 天前
@lovelyxiaod 赶紧改回去,,
tianhehechu
1 天前
@wclebb 感谢理解,实在不好意思。读到第一个 「数据无价,谨慎操作」,就是全文结束了。
teaguexiao
1 天前
Windows 下 AI 工具执行 shell 命令确实有这个隱患,PowerShell 的引号处理和 Linux 完全不一样,很容易就踩到这种坑。建议往后在 .cursorrules 或 CLAUDE.md 里加一条:涉及删除操作必须先列出计划要删的文件让我确认,严禁直接执行。
tianhehechu
1 天前
@teaguexiao 好的,感谢感谢,感谢提供建议
duolanengda
23 小时 43 分钟前
@gadfly3173 +1 ,我用 codex 想切成 bash 都没有选项,非要用 powershell ,然后经常写不对命令,连最顶级的 gpt-5.5 都这样,更不用说其他模型了
dushixiang
23 小时 36 分钟前
我在 SSH 客户端里面搞的 AI agent 就特意限制了,修改类的操作必须要人为确认,我在 v2 也分享了设计思路
https://v2ex.com/t/1213805
xiangran0028
23 小时 17 分钟前
我现在也基本只在 mac 上工作了,之前在 win 上看 AI 执行命令行经常报错,修改,来回循环。
milkzizi
22 小时 56 分钟前
磁盘容量是身份证,我不知道该如何吐槽
witcherhope
22 小时 51 分钟前
下定决心用 Mac
gadfly3173
22 小时 33 分钟前
@teaguexiao 说实话这种指令效果一般。我写了严禁使用 python ,脚本必须直接写 bash 或者 node ,还是会到处用 python 的。
nc4697
22 小时 17 分钟前
我是 MAC 它给我用户数据都删了。所有 APP 记录也丢了。害得我重置系统,环境几乎全部重装,
shyrock2026
20 小时 45 分钟前
我怀疑 op 这篇是 AI 写的,理由如下:
特征一:说是手机码字,但是废话奇多。
特征二:说是刚经历了灾难,但是各种甩包袱吊胃口。
特征三:莫名其妙重复了一大段(这我在 cc 上经常看到,可能是在压缩上下文)
特征四:给 vibe coding 打上全角书名号「 vibe coding 」
特征五:甚至还用①②③编号

这些都不像人用手机打字会干的。
tianhehechu
20 小时 35 分钟前
@shyrock2026 纯手打,没办法,我太规范了,AI 都模仿我,导致我反而看起来像 AI
zzxCNCZ
20 小时 4 分钟前
总结来说,别直接在 Windows cmd&powershell 下使用各种 agent 编码工具
zzxCNCZ
20 小时 2 分钟前
@tianhehechu #20 破案了,composer2 模型能力肯定比不上 claude gpt 之流,其中的 windows 脚本调用之类的能力会天然弱于强模型,所以导致了 lz 的悲剧,节哀

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1214556

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX