Heat olive oil in a large skillet over medium-high heat until shimmering.
Add onion and cook for 3-4 minutes until softened and translucent.
Add ground beef and break it apart with a wooden spoon. Season with a pinch of salt and pepper.
Cook the beef until no pink remains, about 5-7 minutes, stirring occasionally.
Add the garlic and cook for another 30 seconds until fragrant.
Drain excess fat if necessary (but leave a little for flavor).
Add tomato paste and spices (chili powder, cumin, oregano, paprika, and cayenne if using). Stir to coat the meat evenly and cook for 1 minute until fragrant.
Pour in the beef broth or water, stirring to scrape up any browned bits from the bottom of the pan. This is flavor gold!
Simmer for 5-7 minutes until most of the liquid has reduced but the mixture is still moist.
Taste and adjust seasonings as needed. The filling should be bold and well-seasoned since it will be combined with milder ingredients.