When you change your "context", all of your open apps and their windows (on all spaces, on all screens) are closed. The apps and their windows from the context you are switching to open – their positions and working state recalled from when you were last in this context.
You can only be in one context at a time; Think of it as a workspace or project manager in an IDE, but on the OS-level.
Virtual desktops (which is the same as spaces in macOS), has nothing to do with Cleave in itself; you still have virtual desktops under Cleave.
I don't know what problem activities attempt to solve, but the problem I'm trying to solve with Cleave is grouping what's currently running on my system after a specific task or a project I'm working on – both for human reasons (concentration, information overload, etc.) and computer reasons (resource expenditure, etc.)