Combine all ingredients for the marinade (except chicken) in a bowl and mix well. Add chicken and mix well with the marinade. Let is rest for anywhere between 30 minutes to 8 hours in the refrigerator.
Start the instant pot in saute mode and let it heat. Add the oil to the instant pot. Add the onions and saute for 2 minutes. Then add ginger garlic paste and sauté for another minute.
Add marinated chicken and spices for sauce. Mix and sauté for 3-4 minutes while stirring frequently. – Add half cup water and deglaze the pot making sure nothing is stuck to the bottom.
Break the spaghetti in half and layer on top of the chicken. Add the tomato puree on top of the spaghetti. Then add the remaining water. Do not stir. Make sure all the spaghetti is almost submerged in liquid.
Close the lid with the vent in the sealing position. Change the instant pot setting to high pressure for 4 minutes. When the instant pot beeps, quick release the pressure. Add cream, kasoori methi and stir well.