想安装一个 NPM 版的 Claude Code ,然后就发生了下面的事情:
# tink @ Hackint0sh in /usr/local/lib/node_modules [23:32:52]
$ npm i @anthropic-ai/claude-code
added 3 packages, and removed 1826 packages in 14s
2 packages are looking for funding
run npm fund for details
忘了打一个-g,又正好在/usr/local/lib/node_modules...
所有的全局包全部被清掉,1826 个,连 npm 、openclaw 都没了。。。
现在一个一个修,好绝望
1
Tiande PRO 哈哈哈🤣好惨😭
|
2
liuliuliuliu PRO remove 的还挺快,1826 个 14 秒就 remove 完成了
|
3
albatron 6 天前 via Android
为啥安装 cc 会导致其他包被删除呀,没懂
|
5
albatron 6 天前 via Android
@Tink 问了豆包,说是因为该目录下没有 package.json ,npm 下载时会把其他无关包删掉(第一次知道 npm 还有这默认行为),不过挺好奇你为啥要在这个目录下安装东西呢?
|
6
stinkytofux 6 天前
我还真不知道 npm 这个行为, 那如果再 ~ 路径下执行, 岂不是会把整个用户目录都清空?
|
7
GPLer 6 天前 via Android
正常来说 /usr 下的目录非 root 没写入权限吧,怎么写成功的
|
8
darkengine 6 天前
@stinkytofux 只会清 node_modules 里的东西,也就是说如果在~目录,会清掉~/node_modules 里的其他库
|
9
donaldturinglee 6 天前
我印象中 npm 的安装示例好像被官方移除出去了,现在是用 shell script 来安装
你这有点抽象了,怎么会停留在/usr/local/lib/node_modules 目录, 是要修改什么的源码吗? |
10
iwh718 6 天前 via Android
学到了。
|
11
JoeJoeJoe PRO 哈哈哈, 真惨, 但是也提醒了你不要在非空目录下搞事情~
|
12
ko20 6 天前
是 mac 电脑吗?你在命令提示符前面的符号是 $ 不是 #,那么不是 root 用户,在 /usr/local/lib/node_modules 下删除,是不是提示你输入密码,然后你输入了,临时借权到 root 于是全删了
|
13
Imindzzz PRO 哈哈哈哈哈哈
赶紧提个 MR ,如果在全局目录,二次确认一下。 |