Shadowheart or karlach?

No this isn't a romance thing I promise, I already unintentionally romanced laezel cause I didn't unlock karlach until I was 80% towards act 1💀. That being said, my shadowheart build is messy at best. I intended for her to be a healer, but she barely has any spells that can heal a good amount (ill provide a picture of all spells she knows). Plus she has her bow which is okay for the most part, but honestly she's kind of hindering my team. I've been really considering replacing her with karlach, because I've been hearing she hits like a mack truck. But I already have myself who is a barbarian and laezel who is a fighter. I've been struggling because I don't know if I should add another melee based character to my party. I would like to have a healer but my healer frankly sucks at healing. In my case is shadowheart still a better option or is karlach too good to pass up?