[BUG] claude --continue aborts on Linux 2.1.120 with `sandbox required but unavailable: ${j$}` (unfilled template literal)
Summary
On Claude Code 2.1.120 (native Linux binary), claude --continue aborts before resuming a session with:
Error: sandbox required but unavailable: ${j$}
sandbox.failIfUnavailable is set — refusing to start without a working sandbox.
Two issues are visible in this single error:
1. Unfilled template literal ${j$} in the error message
The placeholder for the underlying sandbox-init failure is never substituted. Users see the literal string ${j$} instead of the actual cause. Looks like the error formatter at the throw site is missing its argument (compiled lines around 9248–9249).
2. sandbox.failIfUnavailable is reported as set, but no user config has it
I verified there is no sandbox key in any of:
~/.claude/settings.json~/.claude/settings.local.json<project>/.claude/settings.json<project>/.claude/settings.local.json~/.claude.json
Either the default for this flag flipped to true in 2.1.120, or the settings-precedence logic is reading a phantom value.
Environment
- OS: Ubuntu, kernel 6.8.0-110-generic, x86_64
bwrap(bubblewrap): 0.6.1 at/usr/bin/bwrap— sandbox helper is present- Versions installed under
~/.local/share/claude/versions/:2.1.118,2.1.119,2.1.120 claude --versionreports2.1.119, whileCLAUDE_CODE_EXECPATHpoints to2.1.120(separate concern: launcher / version-manager mismatch)- 2.1.119 worked fine on the same host with the same settings
Reproduction
- Be on a Linux host where the 2.1.120 sandbox-init fails (cause unknown — error swallows it).
- Have no
sandboxkey in any settings file. cdinto a project with a previous session.- Run
claude --continue.
Expected: session resumes (with a warning if sandbox is unavailable, matching 2.1.119 behaviour).
Actual: hard-fails with the message above.
Workaround
Adding to ~/.claude/settings.json:
"sandbox": { "failIfUnavailable": false }
restores the ability to --continue. Confirmed working.
Asks
- Fix the template literal so the underlying sandbox-init failure surfaces in the error.
- Confirm and document the intended default for
sandbox.failIfUnavailablein 2.1.120's release notes — if it changed, that's a behaviour break worth calling out. - Investigate why sandbox init fails on a host where
bwrap0.6.1 is installed and reachable. - (Possibly related) clarify the
claude --versionvs.CLAUDE_CODE_EXECPATHmismatch between 2.1.119 and 2.1.120.
This issue has 7 comments on GitHub. Read the full discussion on GitHub ↗