Brown the sausage: Heat a large pot over medium-high.
Add the sausage and cook, breaking it into small bits, until browned and cooked through, about 6–8 minutes. Spoon off excess fat if needed, leaving about a tablespoon for flavor.
Sweat the aromatics: Reduce heat to medium. Add onion, carrots, and celery.
Cook until softened, about 5–6 minutes, stirring occasionally.
Add garlic and tomato paste: Stir in the garlic and tomato paste. Cook 1 minute, until fragrant and the paste darkens slightly.
Build the broth: Add tomatoes, chicken broth, Italian seasoning, and a pinch of red pepper flakes if using. Stir well, scraping up browned bits from the bottom of the pot.
Simmer: Bring to a gentle boil, then reduce to a simmer for 10 minutes to meld flavors.
Add beans and greens: Stir in the beans and kale or spinach.
Simmer 3–5 minutes, until the greens wilt and everything is hot.
Finish and season: If using, stir in the cream. Taste and season with salt and pepper. A squeeze of lemon brightens the broth nicely.
Serve: Ladle into bowls and top with grated Parmesan and fresh herbs.
Add crusty bread on the side.