Cook pasta and reserve ½ cup water.
Add olive oil to a large pan over medium heat. Once oil is hot, add onions. Cook over medium-low heat for approximately 30 minutes, stirring frequently.
Boil water and cook pasta. Reserve ½ cup water. Add garlic to softened onions, and season with salt and cracked pepper. Add mushrooms and 2 tbsp butter. Cook until mushrooms start to soften, add cherry tomatoes and beans.
Cook until heated through and add spinach, sprouts, pasta and remaining 2 tbsp butter. Season again and toss well. Serve with cheese, more sprouts, and chili flakes.