codex-login-noninteractive.sh
1 #!/usr/bin/env bash 2 # Helper to non-interactively login codex CLI using an API key. 3 # Usage: 4 # OPENAI_API_KEY=sk-... $0 5 # $0 sk-... 6 # This writes credentials to the current user's ~/.codex directory. 7 set -euo pipefail 8 KEY="${1:-}${OPENAI_API_KEY:-}" 9 if [ -z "${KEY}" ]; then 10 echo "Usage: OPENAI_API_KEY=<key> ./codex-login-noninteractive.sh" >&2 11 echo " or: ./codex-login-noninteractive.sh <key>" >&2 12 exit 2 13 fi 14 # Read key from arg or env and pipe to codex login 15 printf "%s" "${KEY}" | codex login --with-api-key 16 echo "codex login completed for user: $(whoami)"