Place the chicken pieces in a bowl. Place the remaining marinade ingredients in a jug, reserving the juice from ½ lime, and stir until smooth. Pour over the chicken and toss to coat evenly, then cover and leave to marinade in the fridge for at least an hour.
Meanwhile, preheat the oven to 200°C/gas mark 6. Place the peanuts in a roasting tray and roast for 10 minutes or until golden. Heat the vegetable oil in a small pan over a low/medium heat and cook the diced shallots for 8-10 minutes, until soft but not coloured, then add the garlic, chilli and palm sugar. Cook for a further minute, until the palm sugar has melted and the garlic has softened. Remove from the heat.
Once the peanuts have cooled, transfer these to a food processor (keeping aside a small handful for garnishing) with the shallot mixture. Add the remaining lime juice, kicap manis, soy sauce and coconut cream and blend until fairly smooth (there should still be some texture to it, so don’t blend for too long). Add a small splash of water to get it to a good dipping consistency.
Thread the chicken mixture on to 8 skewers (there should be 4-5 pieces on each skewer). Heat a barbecue or griddle pan over a medium heat. Once hot, add the skewers and cook for 5 minutes on each side until there are dark golden marks and the chicken is cooked through. (If doing this on a griddle pan, you will need to do it in two batches). Roughly chop the remaining peanuts.
Scatter the remaining peanuts over the chicken and serve with the lime wedges, cucumber and satay sauce.