Warm the oil. Heat olive oil in a large skillet over medium heat. When it shimmers, add the diced onion and a pinch of salt.
Cook for 4–5 minutes, stirring often, until soft and lightly golden.
Add the garlic and spices. Stir in the minced garlic, cumin, chili powder, smoked paprika, chipotle, oregano, pepper, and tomato paste. Cook for 30–60 seconds, until the spices smell toasty and the tomato paste darkens slightly.
Add beans and liquid. Add the black beans and vegetable broth. Stir well, bringing up any browned bits from the pan.
Simmer and mash. Let the beans simmer for 4–6 minutes, stirring occasionally.
Use a potato masher or the back of a spoon to lightly mash about a third of the beans. You’re aiming for a thick, saucy mixture that still has texture.
Finish with lime. Turn off the heat. Stir in lime zest and 1–2 tablespoons lime juice.
Taste and adjust salt, lime, and heat as needed. If it’s too thick, splash in a bit more broth or water.
Warm the tortillas. Warm tortillas in a dry skillet, over a gas flame for a few seconds per side, or wrapped in a damp paper towel in the microwave. Keep them covered so they stay soft.
Assemble. Spread a little avocado on each tortilla.
Spoon on the spicy black beans. Top with cabbage, pico de gallo, cilantro, and pickled onions or jalapeños. Add a drizzle of vegan sour cream or crema if you like.
Serve immediately. Finish with a squeeze of lime and a sprinkle of salt for that final pop.