Cook the penne pasta according to package instructions until al dente. Reserve 1/2 cup of the pasta water, then drain the pasta and set aside.
In a large skillet, heat the olive oil over medium heat. Add the chicken pieces, garlic powder, onion powder, salt, and pepper. Cook until the chicken is browned and cooked through, about 6-8 minutes.
Reduce the heat to low and add the ricotta cheese and Parmesan cheese to the skillet. Stir until the cheeses are melted and combined with the chicken.
Add the chopped spinach and cherry tomatoes to the skillet, stirring until the spinach wilts and the tomatoes soften, about 2-3 minutes.
Add the cooked penne pasta to the skillet, tossing to combine. Gradually add the reserved pasta water, a little at a time, until the desired creaminess is achieved.
Stir in the fresh basil and red pepper flakes, if using. Taste and adjust seasoning with more salt and pepper if needed.
Serve immediately, garnished with additional basil and Parmesan cheese if desired.