Using your hands, tear bread, crust and all, into 1 ½- to 2-inch pieces. Place chunks on a rimmed baking sheet, and let sit uncovered at room temperature for 12 to 24 hours or toast in a 300-degree oven until dried out.
Heat oven to 375°. In a large skillet, combine olive oil and butter. Add garlic and onions, season with salt and pepper, and cook until onions are softened.
Add celery, season with salt and pepper, cook until tender, then add white wine and reduce by half.
Whisk together broth and eggs, then pour over bread chunks in a large bowl. Toss to absorb the liquid.
Add onion and celery mixture, parsley, chives, and optional herbs. Stir to coat evenly.
Transfer mixture to a baking dish, cover with foil and bake until cooked through. Uncover, increase temperature, and bake until crispy and golden brown.
Serve with celery leaves.
