Advice on what to do before applying to Grad School in CS
It's good that you have some sort of (specific) idea as to what you may want to do.  I'm a potential applicant for grad school in CS myself, so take this with a grain of salt, but...
The fact that you went to a top CS school like CMU will carry some weight.  A 3.0 from CMU will definitely carry more weight than the same GPA from a lesser-name school (maybe even a little higher than 3.0).  However, a 3.0 GPA is still low, regardless of where it comes from, so you will still need something to show for that.  As you mentioned, you'll need recommendations that can speak to your abilities and convince departments that you are much better than what happened in your undergrad.  My advice would be if you have some sort of connections with a few professors from undergrad, feel free to reach out for advice and see where you can go from there, maybe even see if you can get recommendations from them.  In addition, without focusing too much or being too negative, explain in your statement of purpose how you recovered from your earlier issues in undergraduate, especially if it was because of an extenuating circumstance(s).
As far as research experience goes, you could see if there are any options back at Carnegie Mellon, although options may be more limited there, especially if professors can only afford to bring on enrolled students.  Even if not, they may be able to point you to other opportunities that could help you get where you need to go.  For CS + economics, there are also opportunities at other institutions or even in industry if you look around.  You don't necessarily need a publication (you may if you want to get your PhD at Carnegie, Stanford, etc. but others will take students without publications).