I know it's best practice not to reveal your target salary or target salary range to recruiters of a specific company and it's definitely bad to reveal your current salary.
But what happens when the recruiter is not for a specific company, but instead a headhunter? It feels weird to withhold my desired salary since they can say to me "buddy, I'm not trying to negotiate against you, I'm trying to help you get what you're looking for." Are they right? Should I reveal that info or is it still better to not tell them?
Additionally, what about revealing to them who I'm currently interviewing with? I did that recently and am a little paranoid that the recruiter might somehow contact the companies I'm interviewing with to harm my chances. I'm pretty sure this is unlikely, but it got me thinking that maybe it wasn't smart to reveal that info.
This really depends on the recruiter and your relationship with them. As a general rule, I would not provide information to them about other interviews, short of letting them know you are recruiting independently to be transparent with them. This assumes good faith and a solid recruiter.
I think telling them your desired compensation range would be a more effective use of both of your times. They are there to find you a role. If you are looking for, say, $120-150k, and their matching roles only go up to $100k, then they know sending those to you is a waste of time for both of you. Typically, these agreements pay them on commission, so you getting a higher compensation is beneficial to them. Perhaps that's changed recently. Even so, I don't expect they gain much by getting you to take lower pay unless it gets you to take a job you otherwise would not have. In my experience, being upfront with recruiters about what my expectations are and how important each is have been helpful.
Edit: To alleviate your concerns, your recruiter is incredibly unlikely to contact your current companies and harm your chances. That would not make sense. I only say above to not tell them specifics because there is no reason they need to know that (except in the case that they want you to look at the same role through them, in which case you can simply decline to be referred for that one).
I agree with David in that it's probably best to reveal your target to 3rd party recruiters to save everyone time. It would also be super weird for them to share your numbers with the companies you're in contact with as that almost certainly hurts them (a lot of these folks get paid 5-10% of 1st year's salary of the person they place).
That being said, the important number to share is the lower bound. If your range is $120k-$150k, you should still take a $175k opportunity if you're qualified for it (and you would want this recruiter to share it with you). So just give the bare minimum of what it takes for an opportunity to be worthwhile.