#!/bin/sh set -eu SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) SCRIPT_PATH="$SCRIPT_DIR/resolve-latest-model-info.cjs" is_compatible_node() { "$1" -e 'const major = Number(process.versions.node.split(".")[0]); process.exit(major >= 18 ? 0 : 1)' >/dev/null 2>&1 } run_if_compatible() { CANDIDATE=$1 shift if [ -n "$CANDIDATE" ] && [ -x "$CANDIDATE" ] && is_compatible_node "$CANDIDATE"; then exec "$CANDIDATE" "$SCRIPT_PATH" "$@" fi } if [ -n "${NODE:-}" ]; then run_if_compatible "$NODE" "$@" fi PATH_NODE=$(command -v node 2>/dev/null || true) if [ -n "$PATH_NODE" ]; then run_if_compatible "$PATH_NODE" "$@" fi for CANDIDATE in \ "$HOME/.cache/codex-runtimes/codex-primary-runtime/dependencies/node/bin/node" \ "$HOME/.cache/codex-runtimes/codex-primary-runtime/dependencies/bin/node" \ "/opt/homebrew/bin/node" \ "/usr/local/bin/node" \ "/usr/bin/node" do run_if_compatible "$CANDIDATE" "$@" done echo "No usable Node.js 18+ runtime found for resolve-latest-model-info.cjs" >&2 exit 127