Whisk the eggs: In a bowl, whisk eggs with milk or water (if using), a pinch of salt, and pepper until well combined and slightly frothy.
Cook the mushrooms: Heat half the oil or butter in a nonstick skillet over medium heat. Add mushrooms and a pinch of salt. Cook 3–4 minutes until browned and any moisture evaporates.
Add garlic and spinach: Stir in garlic (if using) for 30 seconds, then fold in spinach.
Cook just until wilted. Transfer the mixture to a plate.
Wipe and re-oil: Lightly wipe the pan, add the remaining oil or butter, and return to medium-low heat.
Pour the eggs: Add the whisked eggs. Let them sit 10–15 seconds, then gently push the set edges toward the center while tilting the pan so uncooked egg flows to the edges.
Add the filling: When the top is slightly glossy but mostly set, scatter the mushroom-spinach mixture and cheese over one half.
Sprinkle herbs if using.
Fold and finish: Fold the empty half over the filling. Cook another 30–60 seconds until the cheese melts and the center is just set. Adjust seasoning.
Serve: Slide onto a plate and enjoy right away.
Add a side of sliced tomatoes, avocado, or whole-grain toast if you like.