Gemini CLI 通过内嵌 Seatbelt 配置修复 macOS 沙盒崩溃
amelidev · ghdev · 2026-07-28
修复内容
这个 PR 解决了 Gemini CLI 在 macOS/gMac 的沙盒模式(-s)下启动崩溃的问题:当运行环境里找不到静态的 Seatbelt .sb 配置文件时,CLI 会直接失败。
具体方案
- 把 6 个内置的 macOS Seatbelt 配置内容直接嵌入到 sandboxBuiltinProfiles.ts
- 如果运行时检测到真实 .sb 文件不存在,就把内嵌内容写入一个随机命名的临时文件,放到 /tmp 下
- 为 exit、SIGINT、SIGTERM 以及子进程的 close / error 注册清理逻辑,确保临时文件会被删除
- 如果原始文件本来就存在,则保持原有本地开发行为不变
验证
作者表示已经补上单元测试,并通过了针对 src/utils/sandbox.test.ts 的定向测试套件。
「编程与Agent」频道最新
- 开源 Google Analytics MCP Server:自然语言查网站数据 — modelcontextprotocol · 2026-10-16
- UPenn 实验:让 Claude 批判自己默认想法,研究灵感产出提升最多 — arjunrajlab · 2026-10-16
- a16z 播客:AI 让 10 人公司效率翻倍,工程师差距拉大 10 倍 — a16z · 2026-10-16
- Agent 跑任务卡死屏幕,用户每五分钟喊一次「等一下」 — every · 2026-10-16
- 用 3000 条真实发布片喂 Claude:作者做 MCP 告别千篇一律的 AI 生成视频 — Designer_Landscape25 · 2026-10-16
- 19 个 Claude 逆向工程 Blender,结尾神反转:源码本来就公开 — Dan_Jeffries1 · 2026-10-16