Overall, the setup looks good, except for one part: I wouldn’t give the remote machine complete access to your GitHub account.
I think maybe a better solution would be to set up a bare repository on the Nebius VM. This serves a second remote repository you can push to from your machine. After you push to the bare repository, you can clone it while only on the Nebius VM to another location on the VM. You can make changes in this second location, then push to the bare repository, which you can pull to your machine, and ultimately push to GitHub.
It is a bit more complicated than just directly pushing to GitHub, though. Maybe someone else knows a simpler solution.
Overall, the setup looks good, except for one part: I wouldn’t give the remote machine complete access to your GitHub account.
I think maybe a better solution would be to set up a bare repository on the Nebius VM. This serves a second remote repository you can push to from your machine. After you push to the bare repository, you can clone it while only on the Nebius VM to another location on the VM. You can make changes in this second location, then push to the bare repository, which you can pull to your machine, and ultimately push to GitHub.
It is a bit more complicated than just directly pushing to GitHub, though. Maybe someone else knows a simpler solution.