How to solve $(x+a)^x=b$?
Well, to begin, as you already gather, we must allow for $x \in \mathbb{C}$. Then the question begs the question how do we define $z^x$ for complex $x$. Use the complex exponential function:
$$ z^x = \exp (x \log (z)) $$
clearly $z=0$ is a problem. Moreover, this is a set of values due to the fact that $\log (z)$ is multiply valued. Consider then, $(x+a)^x=b$ becomes:
$$ \exp (x \log (x+a)) =b $$
If $b \neq 0$ then it follows that,
$$ x \log (x+a) = \log b $$
Assume $x \neq 0$ and divide by $x$,
$$ \log (x+a) = \frac{1}{x}\log b. $$
Exponentiate, note $\exp (\log (z))=z$
$$ x+a = \exp \left( \frac{1}{x}\log b \right). $$
This is clearly transcendental, perhaps that was clear from the outset. But, at best we can hope to characterize solutions with a special function. Perhaps the Lambert W-function. According to (1) under "Generalizations" in the Wikipedia article,
$$ e^{-cx} = a_o(x-r) $$
has solution
$$ x = r + \frac{1}{c} \text{W} \left( \frac{ce^{-cr}}{a_o} \right)$$
This is lovely, but $e^{-cx}$ should look more like $e^{c/x}$ to match the problem we face. Perhaps a champion of the Lambert-$W$ function will appear and show us the light.