Capel, who was fired at Oklahoma after five seasons, was a four-year starter at Duke for coach Mike Krzyzewski. He has a 175-110 record as a head coach at Virginia Commonwealth and Oklahoma, where he led the Sooners to the Elite Eight in 2008.
Krzyzewski said he was excited to have Capel joining his staff.
"He is an outstanding coach and will be a great fit in our program," Krzyzewski said in a statement released by Duke. "Jeff has been a highly successful head coach at the Division I level and he will continue that here at Duke. Adding a coach of his caliber will make everyone in our program better."
James, who also played for Krzyzewski at Duke, has been an assistant with the program for the past three seasons. While his new role will not involve on-court coaching, he will continue to help develop game strategies, study game film and plan practices.
"Nate has done a very good job with us as an assistant coach and he will continue to be a huge asset to our program in his new role," Krzyzewski said. "He has a bright future ahead of him and this opportunity will help him continue to grow and develop."
Two other ex-Duke players, Steve Wojciechowski and Chris Collins, are on Krzyzewski's coaching staff.