@wrl there is a timer extension to have an idle loop, similar to how vst3 does it. the main difference is that, at least in bitwig, this timer extension is not linux/X11 specific.
for both clap and vst3 I use the idle loop from the system (which on my case comes from pugl) whenever possible, which is macos and windows. then the host idle loop extension thingy makes the linux side of things work.