Heat a large pot or dutch oven on medium-high heat, then add in olive oil. Remove chicken sausage from the casing and saute until browned, breaking up into small pieces while it's cooking.
Next, reduce to medium heat and add in diced onions, celery and carrots. Saute for an additional 5 or so minutes to let the veggies soften and brown slightly, then add in garlic for an additional minute.
Add in all remaining ingredients except for the spinach or kale and stir well. I usually start with 3 cups of broth, then add more as needed, depending on how thick I want my soup - usually using up to 4 cups.
Bring to a boil, then cover and reduce heat to low. Let simmer for 15 minutes.
Discard the bay leaves. Add in the chopped spinach or kale, and let it simmer for a few minutes to allow greens to wilt. Taste and adjust flavors as desired, adding in extra salt or dried seasonings as desired, or a squeeze of lemon to brighten up the flavor.
Serve warm as is or topped with parmesan cheese or pecorino romano.
For a thicker soup, you can mash some of the beans with the back of a spoon or blend a small portion of the soup and then add the blended soup it back in. You could also do a few pulses with an immersion blender.
To make in a slow cooker, saute chicken sausage as directed, then add all ingredients except greens in a slow cooker. Cook on low for 6-8 hours, adding in greens for the last 30 minutes.