gemini-cli is good for this sort of thing. You can just tell it "Find out why xyz.py doesn't run" and let it crunch. It will try reasonably hard to get you out of Python dependency hell, and (more important) it generally knows when to give up.
But yes, in general, you want to use uv. Otherwise, the next Python application you install WILL break the last one you installed.
I suppose you could use gemini-cli as a substitute for proper Python virtual environment management, always letting it fix whatever broke since the last time you tried to run the program, but that'd be like burning down a rainforest to toast a marshmallow.
Actually, I just remembered, this was inside uv!