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」频道最新
- OpenAI、Google、Replit 与 Perplexity 讨论 AI agents 如何改写软件工程 — steipete · 2026-07-28
- 一个多智能体提示词把 AAA 游戏拆给多个子代理 — chrisfirst · 2026-07-28
- 开源 SongForge-MCP 让 Claude 本地生成整首歌 — RaVN3X · 2026-07-28
- Millwright 开源:自托管 Rust LLM 路由器支持混合供应商 — teachmehowtowookiee · 2026-07-28
- Nativ v0.1.0 发布:Apple Silicon 本地运行 AI 模型,支持多 IDE 集成 — max_paperclips · 2026-07-28
- CodeGraph 让本地 token 暴涨,服务商日志却显示更省 — TruthTellerTom · 2026-07-28