Claude Code 的 Bash 工具在大 git 工作树里触发 E2BIG
jkMLnop · ghdev · 2026-07-17
一份 Claude Code bug 报告显示:只要工作目录位于一个不小的 git 仓库里,Bash 工具就会直接报 spawn E2BIG。
主要发现
问题不是命令本身,而是编译后的 sandbox 文件系统策略会随着工作树文件数增长,直到超过操作系统的参数长度限制。报告里提到错误中大约有 187 个 filesystem deny paths,编译后的 profile 大约 1–1.1 MB。
复现规律
这个故障似乎需要同时满足两个条件:
- cwd 在 git 仓库里
- 该仓库的 working tree 足够大
观察结果是:
- 非 git 目录即使有 377,000+ 文件也不会失败
- 只有 1 个文件的 git 仓库正常
- 148 个以上 working-tree 文件的 git 仓库几乎都会稳定失败,测试范围到约 40,000 文件
排除项
作者还逐一排除了几种可能原因,包括:
- git 内部 / reflog 文件数
- .claude/commands
- 每个项目的 Claude Code 会话历史
- 基于工作树的敏感文件名匹配
结论是:这个模式非常稳定,但具体触发代码路径仍需源码才能确认。
「编程与Agent」频道最新
- 开发者把 Claude Code 和 Codex 历史合并成千万级消息归档 — doodlestein · 2026-07-27
- 谷歌 15 个免费 AI 工具覆盖营销、编程和音乐 — aigclink · 2026-07-27
- 9B Ollama Agent 可本地跑电台 DJ:工具、记忆和 TTS — pinku1 · 2026-07-27
- Bugbot 拒绝一个会破坏路径隔离的 MCP 权限标志 — zeeg · 2026-07-27
- 一个 GPT-5.6 agent 在看家,另一个在做恶搞说唱 — repligate · 2026-07-27
- Agent 复用已登录浏览器后,风控问题反而解决了 — armanidev_ · 2026-07-27