Heat oil and vegan butter in a pan.
Add cumin seeds and let them splutter.
Add chopped onions and sauté until golden brown.
Stir in ginger-garlic paste and green chillies; cook for 2 minutes.
Add tomato puree, turmeric powder, red chilli powder, and salt; cook until oil separates.
Blend soaked cashew nuts with coconut milk to a smooth paste.
Add this paste to the pan along with garam masala; mix well.
Gently fold in the cubed tofu and simmer for 10 minutes.
Garnish with fresh coriander leaves and serve hot with roti or rice.