Mix soy sauce, vinegar, garlic, onion, black pepper, and brown sugar in a bowl. I find letting the flavors meld for at least 15 minutes gives the chicken a more intense taste.
Cut chicken into bite-sized pieces and coat them evenly with the marinade. I usually refrigerate it for 30 minutes, but even a quick 15-minute soak works.
Thread the chicken pieces onto skewers. I make sure pieces aren’t too crowded so they cook evenly.
Heat oil in a skillet over medium heat. Sear the skewers on all sides, then simmer with remaining marinade until fully cooked, about 15 minutes.
In a small saucepan, combine peanut butter, soy sauce, lime juice, honey, and water. Stir until smooth and slightly thickened. I like mine creamy but pourable.
Place the skewers on a plate and drizzle with peanut sauce. Garnish with crushed peanuts or fresh cilantro if desired.