I'm vibe coding something complex. Still couldn't finish it all but I came with a very good recipe for vibe/hybrid coding that worked for me:
Give your requirements clear and detailed before starting. Ask for solutions/options for the implementation in a markdown file as a spec
Review the document. If satisfied, let it build everything.
Iterate over it until you have something tangible. Fix the errors.
Do a simple test. If you can't fix the bug, ask for adding logs. Than share the logs with the errors.
If the code sucks, ask for a refactor.
If you have a lot of bugs, try to read the code and ask any stupid question you don't understand. At some point it would start to make a better version.
I sometimes try to make it think differently and prompt something like: you are an industry leader expert or architect etc. and analyze current architecture and come up with a plan that how would you design such a system from scratch.
Again ask for a plan before a big change. Commit any changes if you feel you made some progress.
I'm developing a web animation app right now that resembles Macromedia flash from my memory. Combining great libraries like Konva and gsap to create something that would solve my unique requirements. Maybe I could find something else that already works but I feel doing it this way is better in the long run because once I finished I will have full control over it.