1. In an 8-inch ovenproof nonstick skillet or cast-iron pan, melt butter over medium heat. Add onion and cook, stirring occasionally, until translucent, about 4 minutes. Add asparagus, sprinkle with salt and pepper and cook, stirring occasionally, until just tender, about 6 minutes longer.
2. Preheat broiler to high. In a medium bowl, whisk together eggs; season with additional salt and pepper. Pour eggs over onion-asparagus mixture, stir to combine, then dot surface with goat cheese. Cook, without stirring, until eggs are set on bottom and beginning to set on top, about 5 minutes. Transfer skillet to oven and broil, 4 to 5 inches from heating element, until eggs are completely set and beginning to brown, 2 to 3 minutes. Cut into wedges and serve hot or at room temperature.