[BUG] bwrap sandboxing regression in 2.1.2+: broken with ~/ symlinks
Resolved 💬 3 comments Opened Jan 16, 2026 by benvanik Closed Jan 20, 2026
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Claude believes that something changed in the way cc is configuring bwrap after 2.1.1 and now it cannot handle symlinks to certain files. This completely breaks any workflow where files like settings.json or .gitconfig are symlinks (in my case, to a shared .dotfiles).
● Bash(ls -la ~/ 2>&1)
⎿ Error: Exit code 1
bwrap: Can't create file at /home/ben/.claude/settings.json: No such file or directory
ls -la ~/.claude/settings.json
lrwxrwxrwx - ben 29 Nov 2025 /home/ben/.claude/settings.json -> /home/ben/.dotfiles/claude/settings.json
If I break the symlink and copy the file cc gets further, indicating it is an issue with the symlink. Unfortunately, it looks like it is trying this with many files, as the next symlink gets hit:
● Bash(echo "Sandbox working!" && uname -a)
⎿ Error: Exit code 1
bwrap: Can't create file at /home/ben/.gitconfig: No such file or directory
What Should Happen?
Symlinks to dotfiles should continue to work.
Error Messages/Logs
Steps to Reproduce
- Symlink .claude/settings.json or .gitconfig to another file
- Enable sandboxing in settings.json
- Launch claude version 2.1.2 or 2.1.9 and have it try to use any Bash command
Claude Model
Not sure / Multiple models
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.1
Claude Code Version
2.1.9
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Other
Additional Information
_No response_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗