A while back I ditched Windows for Linux desktop (long time Linux user, just not desktop) because I've learned to hate Microsoft.
I have 2 Sengled WiFi bulbs that I thought were useless now that Sengled is dead (although the app seems to be able to login again now, I'll never trust it). But then I found Sengled Tools which, among other things, documents a very simple way to communicate with Sengled bulbs using JSON over UDP. The sample light custom component is only ~100 lines of Python and adding the UDP and JSON from Sengled Tools would be maybe 50-100 more. I took this as an invitation to improve my Python and rescue the bulbs so I started reading up on Home Assistant development.
I now have this overwhelming VS Code install with devcontainers etc. etc. which seems crazy overkill for the task at hand and I really resent AI being shoved in my face every time I try to do something - especially when the main purpose of the exercise is to learn.
I run Home Assistant in a VM and I worked out I can virsh console hass and then docker exec -it homeassistant sh. I think there's maybe a sshd addon I could use and there is also the File Editor addon.
I guess I've answered my own question, and maybe I just wanted to have a rant about being "forced" back into the Microsoft ecosystem in order to develop for Home Assistant - but I would be interested to learn about other options.
Edit to add my solution for anyone that might come across this post in the future:
As usual, I rushed in without reading the documentation properly. I just started reading from the top and following the VS Code instructions. If I had scrolled down the page a bit I would have found the "Manual Environment" section. There are no instructions for my specific distribution, but it was clear enough that it could easily be adapted. I now have a copy of Home Assistant that I can simply run in a terminal and kill and restart etc. without impacting my "production environment". I've already installed vscodium, so will probably keep using it, but if I read the instructions properly I would probably just use vi.
If you want a python specific IDE then maybe pycharm is for you. I've heard good things.
I use vscodium personally. It's VSCode, but compiled by the community so Microsoft's telemetry doesn't work. It's not let me down yet
The problem I have with PyCharm is that JetBrains has decided to start shoving AI tools into it.
VsCodium might be the better option.
It's opt out for the free license, but it is possible to block AI in JB IDEs.