do_shortcode within post query

You set $post_slug outside the Loop, so the value never changes. You need to reset that inside the Loop so that it will be reset to each post in turn as the Loop progresses.

$the_query = new WP_Query( $args );
if ( $the_query->have_posts() ) { 
  while ( $the_query->have_posts() ) { 
    $the_query->the_post(); 
    $post_slug = $post->post_name;
    echo do_shortcode("[anything_slides cat=".$post_slug."]");
  }
}

But there is really no need to set the variable at all. Just use $post->post_name.