Files
dotfiles/Codex/codex_guarded.sh
2026-05-13 20:09:01 -04:00

59 lines
964 B
Bash

#!/usr/bin/env bash
set -euo pipefail
usage() {
cat <<'EOF'
Usage:
codex_guarded.sh [--cwd DIR] [--sandbox MODE] [--approval POLICY] [--] [codex args...]
Defaults:
--approval never
--sandbox read-only
--cwd current working directory
Description:
Launch Codex with deterministic non-interactive safety defaults.
EOF
}
CWD="$(pwd)"
SANDBOX="read-only"
APPROVAL="never"
FORWARD_ARGS=()
while [[ $# -gt 0 ]]; do
case "$1" in
--cwd)
CWD="$2"
shift 2
;;
--sandbox)
SANDBOX="$2"
shift 2
;;
--approval)
APPROVAL="$2"
shift 2
;;
-h|--help)
usage
exit 0
;;
--)
shift
FORWARD_ARGS+=("$@")
break
;;
*)
FORWARD_ARGS+=("$1")
shift
;;
esac
done
if [[ ${#FORWARD_ARGS[@]} -gt 0 ]]; then
exec codex -a "$APPROVAL" -s "$SANDBOX" -C "$CWD" "${FORWARD_ARGS[@]}"
else
exec codex -a "$APPROVAL" -s "$SANDBOX" -C "$CWD"
fi