反人类的谷歌Antigravity
被Antihumanity搞虚脱了,所以文章是Gemini 4 Argon在antigravity里面写的,见谅。( 伪安全与真残废:谈谈 Google Antigravity 新版沙盒对开发者体验的毁灭性破坏 近期 Google 对 Antigravity(尤其是 CLI 工具链)进行了一次缺乏基本工程敬畏的静默变更:在未明确更新文档与迁移指南的情况下,将默认执行策略强制切换至底层内核沙盒。这一改动直接摧毁了许多依赖现代工具链的本地工作流,其中最典型的受害者就是已成为 Python 事实标准的 uv。 作为一个主打智能体自主编码的工具,Antigravity 这次更新暴露出的不是技术实力,而是大型科技公司典型的高傲:以“防御性安全”为遮羞布,行破坏开发者体验之实。 一、 粗暴的挂载策略:连现代包管理器都不配拥有路径? 在 Linux/WSL 环境下,新版 CLI 引入了基于 Linux Namespaces 的容器化隔离机制。对于 Agent 工具而言,做执行沙盒在架构设计上无可厚非,但 Antigravity 的实现方式堪称粗糙。 为了所谓的最小攻击面,它对 $HOME 目录采取了极其死板的虚拟挂载与只读覆盖策略。其直接后果是: 用户级工具链被全面抹杀:宿主机的 ~/.local/bin 与 ~/.cargo/bin 被完全隔离在沙盒之外。uv、mise、pnpm 这些标准的用户级开发工具,在沙盒内部直接蒸发。 命令行接口的低劣设计:CLI 暴露了 --sandbox 标志,却连基本的对称参数 --no-sandbox 都未作适配。布尔 flag 抛出标准库的未定义错误,真正控制沙盒启闭的逻辑却被隐晦地塞进了权限预设(Permission Preset)的层级分支下,毫无自解释性。 只管拦截,不管透传:如果要做隔离,合理的做法应当是支持声明式的白名单路径透传(Extra Binds),或者自动将宿主机经过哈希验证的 binary 映射进去。而 Antigravity 选择了最偷懒的方案——直接盖上一个空 tmpfs,留给开发者一个毫无意义的 command not found: 127。 二、 零文档、零引导的“黑盒式”治理 如果一个基建级工具必须做出不向后兼容的 Breaking Change,成熟团队的标准实践是:提供 Changelog、在 CLI 报错中给出语义化诊断信息,并指引开发者如何修复。 ...