Cook the pasta shells according to package directions, until al dente. Drain when done.
While the pasta is cooking, heat the olive oil in a large non-stick skillet on medium high. Add the vegan beef, break apart into crumbles with a large spoon or spatula. Brown, reducing heat as needed until the vegan beef is completely brown. It may take 5-7 minutes. Remove the vegan beef from the skillet when done and put in a bowl. Set aside.
In the same large skillet, heat the vegan butter on medium high and then add the onion and garlic. Saute, reducing heat as needed until the onion is translucent. About 3-4 minutes.
Then add the flour into the skillet and stir to combine, make sure the butter and flour are fully combined. Simmer for a minute.
Now add the veggie broth, tomato sauce and coconut cream. Whisk to combine everything and make sure there are no lumps of flour in the sauce.
Add the Italian seasoning, and a pinch of salt and pepper. Whisk to combine. Let the sauce simmer for 2-3 minutes, or until it has thickened slightly.
Then add the pasta shells and vegan beef. Toss everything together. Turn heat to low.
Sprinkle in the vegan cheese if using, and stir. Let melt for a minute. Then taste and adjust seasoning.
Serve immediately.