Rinse the red lentils thoroughly under cold water and drain.
In a medium pot, add the rinsed lentils along with 2 cups of water. Bring to a boil, then reduce the heat and simmer for 15-20 minutes until the lentils are tender but not mushy.
Meanwhile, finely chop the onion, mince the garlic, grate the ginger, and dice the tomato.
In a large saucepan, heat a splash of water or a tiny amount of oil if desired. Sauté the chopped onion until soft and translucent, then add the garlic and ginger, cooking for an additional minute.
Stir in the ground cumin, turmeric, coriander, and chili powder, allowing the spices to bloom in the aromatics for about 30 seconds.
Add the diced tomato to the pan and cook until softened, about 2-3 minutes.
In a blender or using a whisk, combine the silken tofu with the light coconut milk until smooth to create a creamy mixture.
Once the lentils are cooked, stir in the creamy tofu-coconut mixture and add the sautéed spice mixture. Mix well to combine.
Fold in the baby spinach and let it wilt for a couple of minutes. Season with a pinch of salt to taste.
Adjust the thickness by adding a splash of water if needed, and serve warm.