#!/bin/sh

get_in_path_except_current() {
    which -a "$1" | grep -A1 "$0" | grep -v "$0"
}

code="$(get_in_path_except_current code)"

if [ -n "$code" ]; then
    exec "$code" "$@"
elif [ "$(command -v code-insiders)" ]; then
    exec code-insiders "$@"
fi

# Fallback: search for vscode-server remote-cli (DevContainer 环境)
for dir in "${HOME}/.vscode-server/bin"/*/bin/remote-cli \
           "/root/.vscode-server/bin"/*/bin/remote-cli \
           "${HOME}/.cursor-server/bin"/*/bin/remote-cli; do
    if [ -x "$dir/code" ]; then
        exec "$dir/code" "$@"
    fi
done

echo "code or code-insiders is not installed" >&2
exit 127
