Cook the pasta according to package directions. Before draining, reserve all of the pasta water.
Meanwhile, heat the olive oil in a large skillet over medium heat. Add the onion and cook for 4-5 minutes, stirring occasionally, until softened.
Add the garlic and cook for 1 minute, stirring often.
Stir in the tomato paste and red pepper flakes. Cook for 1-2 minutes, stirring often, until the tomato paste darkens slightly.
Transfer the mixture to a blender. Add the tofu, nutritional yeast, salt, black pepper, and ¾ cup (180 ml) of the reserved pasta water. Blend until smooth and creamy.
Return the sauce to the skillet and cook for 2-3 minutes, stirring often. If needed, add more pasta water until the sauce reaches your desired consistency. I usually add about ¼ cup (60 ml) more.
Add the cooked pasta and toss until fully coated. If the sauce becomes too thick, add more pasta water, a little at a time, until it is smooth and silky.
Serve immediately topped with fresh basil and vegan Parmesan cheese, if desired.
