In a large skillet over medium heat, warm olive oil and butter. Add diced onion and cook until softened and golden, about 8 minutes. Stir in garlic and cook for another 1-2 minutes until fragrant.
Add the chopped mushrooms, salt, and pepper. Sauté the mixture, stirring occasionally, until the mushrooms release their liquid and it evaporates—this takes about 12-15 minutes. The goal is to get a fairly dry, concentrated mixture with deep flavor.
Next, add thyme, rosemary, soy sauce, balsamic vinegar, and nuts if using. Stir well, letting everything come together for another 2-3 minutes. Remove from heat and let the mixture cool slightly before stirring in parmesan (or nutritional yeast), breadcrumbs, and parsley.
Taste and adjust seasoning if needed.