In a bowl, combine lime juice, salt and cayenne. Add chicken and toss to coat. Cover with plastic wrap and marinate in the fridge 1 hour.
In a dry frying pan heat the cloves, peppercorns, cardamom, coriander seeds and fenugreek seeds until fragrant. Grind in a mortar and pestle or a spice grinder.
In a mixing bowl combine the yoghurt with the ground spices, turmeric, cinnamon and ground almonds. Stir well and add to the chicken. Mix well and marinate another hour in the fridge.
In a large saucepan, melt the ghee and fry the onions, ginger and garlic over medium heat for about 5 minutes. Add the chicken, reserving the marinade. Fry until the chicken is browned on all sides, about 5 minutes.
Add marinade, passata, chicken stock and bay leaves and bring to a simmer. Simmer uncovered about 50 minutes. Stir occasionally, adding more stock if necessary.
Add salt to taste and serve, garnished with coriander leaves.