Bring a large pot of water to a boil and add 2 tablespoons of salt. Add pasta and cook until just al dente, between 5-7 minutes. Drain, but reserve about 1 cup of the pasta water. Set aside pasta and reserved pasta water.
In a large heavy-bottomed pot over medium heat, add the oil and heat until shimmering. Working in batches, add chicken in 1 layer and cook until browned on all sides, about 4 to 5 minutes. Transfer chicken to a plate.
Add onion and cook until translucent, about 5 minutes. Stir in hot (or sweet) peppers and bell peppers, and cook until softened, about 5 minutes more. Add garlic and chili flakes (if using), and cook until just fragrant, about 1 minute.
Pour in the white wine, and deglaze the pan by scraping up any browned bits. Allow to cook for 2 to 3 minutes. Add tomato puree, and stir until everything is combined. Bring to a boil, lower heat, and simmer for about 7 minutes.
Add the chicken to the pan and allow to cook for an additional 3 to 4 minutes, just until the chicken is cooked through. Stir in the Parmesan and allow it to melt into the sauce. Season to taste with salt and pepper.
Add the pasta and ½ cup of pasta water to the pan. Stir until the sauce is cohesive, adding more pasta water as needed to loosen the sauce. Simmer for 1 to 2 minutes, or until the pasta has reached the texture you desire.
Serve in bowls, and garnish with more cheese and basil.
