Preheat the oven to 400 ° F. Cut the spaghetti squash in half with a sharp knife and scoop out the seeds. Sprinkle cut sides of the spaghetti squash with half of the olive oil and season with salt and pepper. Place cut side down on a large baking sheet. Roast until tender, about 35-45 minutes. Let cool slightly. Scrape the squash with a fork to loosen from the squash.
In a large skillet over medium high heat, heat oil. Add the onion and bell pepper and cook until tender, about 5-7 minutes. If beginning to burn, add a touch of water. Stir in the beans, corn, salsa, spaghetti squash, and taco seasoning. Mix to combine everything. Taste and season with salt, pepper, or additional taco seasoning.
Fill each spaghetti squash with the vegetable mixture and top with the grated cheese. Return to oven under broil for 5 minutes or until the cheese has melted. Remove from the oven, garnish with cilantro and serve.