Since Neovim wants to write to a terminal, the most obvious approach would be to use a Qt terminal widget and put it in a pane where the body editor would usually be. Or next to the standard body editor. The VR/VR3 plugins show how that can be done. I found a terminal widget for Qt: QLightTerminal (
https://github.com/ChargeIn/QLightTerminal). I don't know if it has been wrapped for PyQt6. I'm not sure if it's Linux only or not.
Another approach would be to try to interface LeoJS, running VS Code. There are a number of Neovim projects for VSC already, and maybe one of them could be hooked up to LeoJS.