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」频道最新
- 模型之外才是关键:一文拆解 RAG 到多智能体的六大 AI 架构 — goyalshaliniuk · 2026-09-11
- 零基础开发者自建分层记忆架构,仅 20k token 记住一年对话 — matteoianni · 2026-09-11
- Warp 六个非工程团队全用 Linear 和 Claude Code 工程化运作 — mon__lim · 2026-09-11
- 九年后端老兵:AI 代码不比人写的差,变糟的只是速率 — Sweaty-Landscape-561 · 2026-09-11
- 实测质疑 RTK 省 token 说法:成本基准显示并不成立 — michalwarda · 2026-09-11
- 从聊天到 Agent,推理延迟正在成为生产级瓶颈 — Euphoric_Sea632 · 2026-09-11