2 tablespoons olive oil
1 cup diced onions (about 1 medium)
1/2 cup diced celery (about 2 stalks)
1/2 cup diced green bell pepper (about 1 medium)
1 tablespoon minced garlic (about 3 medium cloves)
1 (14 ounce) can diced tomatoes
2 cups low-sodium store-bought or homemade chicken stock
1 tablespoon Louisiana-style hot sauce (such as Frank’s or Crystal), plus more to taste
1 tablespoon Worcestershire sauce
2 bay leaves
1/4 teaspoon ground white pepper
1/4 teaspoon cayenne pepper
1/2 teaspoon dried thyme leaves
4 tablespoons butter
2 tablespoons finely chopped fresh parsley leaves
1/2 cup thinly sliced green onions
Kosher salt and freshly ground black pepper
Heat oil in large saucepan over medium-high heat until shimmering. Add onions, celery, and green peppers and cook, stirring occasionally, until vegetables start to soften, 3 to 5 minutes. Stir in garlic and cook until fragrant, about 30 seconds.
Stir in tomatoes, stock, hot sauce, Worcestershire sauce, bay leaves, white pepper, cayenne pepper, and thyme. Bring to a boil, then reduce heat to low. Simmer until sauce slightly thickens, about 20 minutes.
Remove and discard bay leaves. Add butter and stir until completely melted. Remove from heat and stir in parsley and green onions. Season with salt, pepper, and additional hot sauce to taste. Sauce will keep in a sealed container in the refrigerator for up to 1 week.