Heat the oil in a large skillet over medium heat. Add chopped onion and sauté until soft and lightly golden, about 5 minutes.
Add garlic and ginger and cook for 1 more minute until fragrant.
Stir in the spices — cumin, coriander, turmeric, chili powder, and garam masala. Cook for 30 seconds to bloom the flavors.
Add mushrooms and stir to coat them with the spices. Cook for 5–7 minutes until the mushrooms release moisture and begin to brown.
Pour in coconut milk and stir well. Add salt to taste and chopped tomato if using.
Simmer uncovered for 10–12 minutes until the sauce thickens slightly and the mushrooms are tender.
Taste and adjust seasoning as needed. Garnish with fresh cilantro and serve hot with rice, naan, or quinoa.