Prepare the herbs. Place the dried cordyceps in a small bowl and cover with water to soak while you prepare the chicken. Place the chinese yam, stragalus, codonopsis, and angelica root into a cheesecloth and tie off into a bundle, if using.
Prepare the chicken. Cut the head off of the chicken with a sharp knife. Optionally, break the chicken down into pieces (thighs, drumsticks, wings, breasts, and back). Trim the nails off the chicken feet with kitchen shears.
Skim the soup. Place all of the chicken, including the back and head, into a large pot. Top with just enough water to cover the chicken and bring to a boil. Once boiling, carefully drain the broth from the chicken pieces and discard the first pot of broth. Rinse the chicken pieces under cool water and use your hands to scrub away any scum. Return the chicken to the same pot.
Simmer the soup. Add the remaining herbs and spices along with the drained, soaked cordyceps to the pot along with just enough water to cover. Bring to a simmer and allow to simmer with a lid on for 30 minutes.
Taste and serve. Season the soup with salt to taste. Pull off pieces of chicken to serve in the broth and garnish with chopped green onion.