In a medium-sized bowl, whisk together the coconut milk and curry paste until evenly combined. Set aside.
In a large Dutch oven or heavy-bottom saucepan, heat the oil on medium-high until shimmering, and then brown the chicken on both sides for several minutes. You might want to do this in batches to avoid crowding the pan.
Once the chicken is browned, stir in the onion, bell peppers, potatoes and tomatoes (add all of the chicken back into the pot first if it was cooked in batches). Add the coconut milk mixture and stir. Bring to a boil, cover, and turn the heat down to low.
Simmer for 20-25 minutes, or until the potatoes are soft and chicken is cooked through. Remove from the heat and stir in the cilantro.
Serve over rice if using, and garnish with peanuts.