Wash the chicken and drain the extra water.
Heat the oil. Add cloves, green cardamom, black cardamom, cinnamon, and bay leaves. Fry a few seconds.
Add sliced onions and green chillies. Fry until golden brown.
Add the chicken and fry on low to medium heat until the meat is golden brown.
Add the tomato, turmeric, black pepper, cumin, Kashmiri chilli powder, and salt. Mix well.
Add the garlic paste. Fry on low heat until the masala is cooked and the raw smell is gone.
Add ½ cup (120 ml) water. Cover and cook on low, stirring now and then.
Cook until the chicken is soft and the gravy turns brown with oil rising on top. For more gravy, add a little water and bring to a boil.
Garnish with cilantro and serve hot.