The XDG Base Directory spec covers config/data/cache/state, it does not define where executables go.
it does:
https://specifications.freedesktop.org/basedir/latest/
User-specific executable files may be stored in $HOME/.local/bin. Distributions should ensure this directory shows up in the UNIX $PATH environment variable, at an appropriate place.
i prefer ~/bin/ but this is better than creating you own directory that needs to be added to the path.