Prepare the mushrooms by trimming the stems and shredding or chopping into large slices, strips, or chunks, depending on the type of mushroom.
Heat the olive oil in a heavy bottomed soup pot or Dutch oven over medium heat.
Add the onion, garlic, oregano, thyme, and basil and sauté for a minute or two.
Add the mushrooms and the soy sauce, and cover the pot.
Cook on medium high, covered, for around 10 minutes. The mushrooms will release a lot of water.
After 10 minutes, remove the lid, add the veggie boullion, salt, and pepper and cook for a further 10 minutes uncovered to allow the water to evaporate.
When the mushrooms start to stick, turn the heat down to low and add the milk, coconut milk, and drained beans.
Stir the arrowroot powder with 2 Tbsp of water in a tiny bowl with a fork or with your finger to make a paste. This is to avoid lumps and to evenly thicken the soup. Add it to the pot and stir.
Bring to a very low simmer. You don't want to boil coconut milk or non-dairy milk or it will curdle. Only heat it through, gently simmer for a minute or two to thicken and meld the flavors, then remove from heat. Add the kale in the last couple of minutes, if using.
Stir in the garlic powder and nutritional yeast, if using. Add soy sauce, salt, pepper, and herbs to taste.
Notes
If desired, you can swap out the plant-based milk for regular milk 1 to 1, and the 1/2 cup (4 oz) of coconut milk for 1/4 cup (2 oz) of heavy cream.
The coconut milk is in a small enough amount that it doesn't contribute a coconut flavor, it only adds creamy richness.
To make this dish oil free, dry sauté the veggies at the beginning and add 4 oz more coconut milk to replace the 2 fat servings.
For an even heartier dish, serve over barley or brown rice.