Based on the OP & comments so far, a dry curry is required.
I'd go with a bhuna method, especially if you're talking small chicken pieces, reasonably fast cook.
Start with a medium hot pan & ghee, add all your dry spices except the garam masala.
Fry briefly, maybe 2 minutes, don't let it burn.
Add onions - the more finely-chopped the better if you're looking for a quick cook. [If I'm trying to do this quickly, rather than let it simmer all day, I cheat by chopping maybe ¾ of my onions as finely as humanly possible, & the other ¼ quite chunky, so they stay whole in the final sauce.]
Sweat down, stirring frequently until past the point they soften & they start to slightly break down. You're not looking for browning, but some slight colour is perfectly fine. Add ginger/garlic paste & keep sweating until the raw garlic smell goes.
Depending on your chicken cuts, now either:-
For small-cut chicken breast pieces etc… scrape your existing mixture out, add more ghee & flash-fry your chicken. Re-add your paste/gravy & some garam masala. Serve.
For larger cuts or including skin/bone such as thighs etc - drop your chicken pieces to this mix & simmer for at least an hour. Again, add garam masala towards the end.
You can mix & match the methods - you can flash-fry thighs to get some browning on them if that makes you feel it looks better, but you need to give it the hour or so to get thighs to break down properly.
Chicken breast pieces will be over-cooked in 5 minutes, so you can't do that with breast.
If you want some colour on chicken breast… cheat. Marinate in yoghurt & kashmiri mirch, or even just food colouring. Psuedo-tikka.
Note this doesn't use any additional water - your 'curry gravy' is made from your onions & ghee.
The longer you cook this basic gravy before adding your chicken, the better the end result.