The 21-year-old defender has put pen to paper on fresh terms, which tie him to the club until the summer of 2019.
James joined from his hometown club Cardiff City in January on a deal until the end of the 2016/17 Sky Bet League Two campaign.
He made his Town debut off the bench in the Checkatrade Trophy quarter-final before playing in back-to-back league fixtures against Carlisle United and Portsmouth.
The former Wales Under-19 international can play anywhere across the backline.
“I thought Tom was very unfortunate last year not to play more games,” boss Darren Way said.
“Having said that, he was impressive every time he stepped over the white line.
“His league debut against Portsmouth showed what potential he has. Again, he’s another young talent we’re looking forward to working with.”
Are you interested in sponsoring Tom for the 2017/18 season? Please contact Dave Linney on 01935 847872 or email firstname.lastname@example.org for more information.