Warm the ghee in a Dutch oven over medium heat. Add black cardamom, green cardamom, black peppercorn, and a cinnamon stick to the pan and cook until the ingredients sputter, for about 30 seconds. Add the onions and saute for 10 minutes until they become translucent and soften. Then, stir in garlic and ginger paste and cook for another 30 seconds.
Season with salt, Kashmiri chili powder, red pepper flakes, ground cumin, turmeric, and coriander powder.
Increase the heat and add the goat meat to the pan. Keep stirring on high heat to seal in the juices. Then, deglaze the pan with the chopped tomatoes and stir to combine.
Reduce the heat to medium, and add just enough water to cover the goat, about 1 cup. Cook until the meat is almost tender, for about 30 minutes to 1 hour.
Remove the lid and continue cooking. Simmer while gradually adding the yogurt until the gravy is smooth and the oil separates to the edges, about 10-15 minutes.
Add the potatoes and nestle them into the pot. Add ½-1 cup of water, if necessary, to cover the potatoes. Cover and cook for 10-15 minutes, until the potatoes are fork-tender.
Garnish with a sprinkle of garam masala, fresh green chilies, and chopped cilantro.