Prep the chicken: Pat the chicken dry and cut into bite-size pieces. Season with a pinch of salt and pepper.
Set aside.
Sauté aromatics: Turn the Instant Pot to Sauté (Normal). Add ghee. When melted, add onion and cook 3–4 minutes until softened.
Stir in garlic and ginger; cook 30–60 seconds until fragrant.
Bloom the spices: Add garam masala, cumin, coriander, paprika, turmeric, and cayenne. Stir for 20–30 seconds to release their oils. Don’t let them burn.
Build the sauce base: Stir in tomato paste and cook 1 minute.
Add chicken broth to deglaze, scraping up browned bits with a wooden spoon. This prevents a burn notice.
Add the chicken: Stir in the chicken and 1 teaspoon salt. Make sure pieces are coated and mostly submerged.
Pressure cook: Cancel Sauté.
Seal the lid and set to Pressure Cook (Manual) on High for 6 minutes. The pot will take a few minutes to come to pressure.
Quick release: When the timer ends, carefully quick release the pressure. Open the lid and stir.
Finish the sauce: Switch back to Sauté (Low).
Stir in heavy cream and butter until the sauce is silky. Simmer 2–3 minutes to thicken slightly. Taste and adjust salt and heat.
For extra richness, whisk in the Greek yogurt off heat.
Optional smooth sauce: For a restaurant-style texture, remove the chicken with a slotted spoon and blend the sauce with an immersion blender. Return chicken to the pot.
Serve: Garnish with chopped cilantro. Spoon over cauliflower rice or pair with sautéed spinach or zucchini noodles.