Cook pasta to package directions.
Heat oil in a large skillet. Add the onion, garlic, salt, and pepper. Cook until the onion browns.
With a whisk, stir in the flour to coat the onion and garlic. Quickly after stir in the almond milk in parts. Take care to stir to prevent clumping.
Cook for 5 minutes until the sauce start to thicken. If it doesn't thicken, add a little extra flour or try adding a half tablespoon of cornstarch. Be careful to prevent chunks, and if you have clumping, break them up on the side of the pan. Stir in the cayenne pepper.
Using an immersion blender or transfer the sauce to a blender, blend it to get a smooth sauce.
Place back in the pan (if a blender was used), and stir in the chopped tomatoes.
Once desired thickness is achieved, stir in the pasta. Sprinkle salt and pepper to taste.
Add the pasta and mix well.
Serve warm! If you store leftovers in the fridge, prior to reheating, stir in a splash of almond milk.