feat(02-01): add --dry-run mode that prints full bwrap command and exits
This commit is contained in:
parent
72ba48d004
commit
1eddd9336d
1 changed files with 35 additions and 0 deletions
35
claudebox.sh
35
claudebox.sh
|
|
@ -82,6 +82,41 @@ else
|
||||||
SANDBOX_CMD=("$CLAUDE_BIN" --dangerously-skip-permissions "${CLAUDE_ARGS[@]}")
|
SANDBOX_CMD=("$CLAUDE_BIN" --dangerously-skip-permissions "${CLAUDE_ARGS[@]}")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# --dry-run: print the bwrap command without executing (D-09, UX-04)
|
||||||
|
if [[ "$DRY_RUN" == true ]]; then
|
||||||
|
{
|
||||||
|
echo "bwrap \\"
|
||||||
|
echo " --clearenv \\"
|
||||||
|
dry_run_i=0
|
||||||
|
while (( dry_run_i < ${#ENV_ARGS[@]} )); do
|
||||||
|
printf ' %s %s %q \\\n' "${ENV_ARGS[$dry_run_i]}" "${ENV_ARGS[$((dry_run_i+1))]}" "${ENV_ARGS[$((dry_run_i+2))]}"
|
||||||
|
(( dry_run_i += 3 ))
|
||||||
|
done
|
||||||
|
echo " --tmpfs / \\"
|
||||||
|
echo " --proc /proc \\"
|
||||||
|
echo " --dev /dev \\"
|
||||||
|
echo " --tmpfs /tmp \\"
|
||||||
|
echo " --ro-bind /nix/store /nix/store \\"
|
||||||
|
echo " --bind /nix/var/nix /nix/var/nix \\"
|
||||||
|
echo " --ro-bind /etc/resolv.conf /etc/resolv.conf \\"
|
||||||
|
echo " --ro-bind /etc/ssl /etc/ssl \\"
|
||||||
|
echo " --ro-bind /etc/static /etc/static \\"
|
||||||
|
echo " --ro-bind /etc/passwd /etc/passwd \\"
|
||||||
|
echo " --ro-bind /etc/group /etc/group \\"
|
||||||
|
echo " --ro-bind /etc/hosts /etc/hosts \\"
|
||||||
|
echo " --ro-bind /etc/nsswitch.conf /etc/nsswitch.conf \\"
|
||||||
|
echo " --ro-bind /etc/nix /etc/nix \\"
|
||||||
|
printf ' --symlink %q /usr/bin/env \\\n' "$(readlink -f "$(command -v env)")"
|
||||||
|
echo " --tmpfs $HOME \\"
|
||||||
|
echo " --bind $HOME/.claudebox $HOME/.claude \\"
|
||||||
|
printf ' --ro-bind %q %s/.gitconfig \\\n' "$GITCONFIG_TMP" "$HOME"
|
||||||
|
echo " --bind $CWD $CWD \\"
|
||||||
|
echo " --chdir $CWD \\"
|
||||||
|
printf ' -- %s\n' "${SANDBOX_CMD[*]}"
|
||||||
|
} >&2
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
# exec bwrap (SAND-04 through SAND-15, UX-06, D-01)
|
# exec bwrap (SAND-04 through SAND-15, UX-06, D-01)
|
||||||
exec bwrap \
|
exec bwrap \
|
||||||
--clearenv \
|
--clearenv \
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue