Do:
Tell me details about the company, like its name, where it's based and what kind of things I'll be working on.
Provide a salary figure for the role
Give feedback on things like interviews done with the company, assuming they tell those things to you. Obviously it's better to have the hiring manager respond, but to get a message from the recruiter saying either they said the interview went well because of this and that or they're looking for someone else right now is useful.
Keep your job descriptions realistic. If there's a huge laundry list of keywords for skills your applicant 'needs' to know, don't be surprised if most people are hesitant when they reply to your email.
Don't:
Provide irrelevant job offers and leads. Seriously, sending a JavaScript programmer Java related offers is a waste of time, as is sending through roles where 90% of the skills required are ones that candidate doesn't have. If someone is a PHP or Python developer, then sending them .NET roles may not be the best idea.
Try and 'encourage' applicants to sign up for training through your company. Seen quite a few 'recruiters' who were seemingly only contacting people to sell them courses, and it's an annoying waste of time.
Force people to sign up with your inhouse system to receive new jobs. We get it, job sites are a difficult thing to market. But saying you have a role and then only having said role available on another site is a hassle.
Have people come to your office for an interview. You are not a company offering jobs, and for most people don't want to spend money and time travelling to your office for nothing more than a quick chat. Especially if said office is really out of the way.