Chop peanuts, or crush them with the side of a knife, or pulse them in a food processor to chop roughly. Put oil in a deep skillet or medium saucepan over medium heat; a minute later, add onion, ginger and garlic and cook, stirring occasionally, until onion is soft, 3 to 5 minutes. Add chicken and continue cooking for another 3 or 4 minutes, until just coloring. Add 1/2 cup peanuts and the cayenne and sprinkle with salt and pepper. Stir in the stock and the sweet potatoes, bring to a boil, and turn heat down to medium-low so the soup bubbles gently. Stir in tomatoes and collards, then cook, stirring occasionally, until chicken is cooked through, about 10 minutes. Stir in 1/4 cup peanut butter. Taste, adjust seasoning (you may want to add more peanut butter at this point) and serve, garnished with remaining peanuts.