The 28-year-old trained with the Minstermen on Thursday and is available for their clash with Southend this weekend.
"Keith has been a good servant to this club over the last few seasons," manager Mark Yates told the club's official website.
"The time is right for both ourselves and Keith because he needs to be starting games week in and week out at this stage in his career. Keith goes with our best wishes and we wish him the best of luck at York."
Keith re-signed for the Robins back in the summer of 2010 after previously having spells with the club on loan from Wolves under John Ward.
- Sports & Recreation