Heat the oil in a large, heavy-bottomed frying pan over medium-high heat. Cook the onion for 5 minutes, or until lightly browned. Add the garlic, garam masala, and chili powder. Cook, stirring for 30 seconds, or until fragrant. Remove half of the onion mixture to a large bowl and set aside to cool.
Add the chopped tomatoes and tomato paste to the remaining onion in the frying pan, stirring. Simmer for 5 minutes, then add the stock and coconut milk. Bring to a boil, then remove from the heat, cover and set aside.
Add the ground lamb, herbs, and beaten egg to the cooled onion mixture. With clean, wet hands, roll the meat into 28 walnut-size balls. Cover and refrigerate for 30 minutes to allow the flavors to develop.
Return the sauce to simmering point over medium heat. Add the kofta balls and cook over low heat for 1 hour, or until cooked through and the sauce has reduced and thickened. Gently stir the kofta balls occasionally. Stir in the lime juice and season to taste. Garnish with the extra herbs and serve with basmati rice.
Nutritional information does not include garam masala. For nutritional information on garam masala, please follow the link above.