The actor was asked whether he will play the secret agent again during his appearance on US chat show The Late Show.
“Yes,” Daniel Craig told host Stephen Colbert, before standing up to shake his hand.
The actor, who has played 007 in the past four Bond films, has until now refused to say whether he will do it again.
But on the show he revealed he’s known for a “couple of months”.
“We’ve been discussing it, we’ve just been trying to figure things out,” he said. “I always wanted to, I needed a break.”
The next Bond film, the 25th in the series, is due out in November 2019.
He said it will be his last outing as the spy.
“I just want to go out on a high note, and I can’t wait.”
The 49-year-old was still refusing to confirm speculation about it as late as Tuesday.
“No decision has been made,” he told Boston radio station Magic 106.7.
“I know they’re desperate to get going and I would in theory love to do it, but there is no decision just yet.”
In 2015 he caused controversy for saying he’d “rather slash [his] wrists” than make a fifth Bond film, a statement for which he later apologised.
Daniel Craig is the seventh actor to play James Bond on film
Scottish star Sean Connery first took on the role in 1962 and played him seven times, ending with Never Say Never Again in 1983.
Roger Moore matched that total, between 1973 and 1985.
David Niven and George Lazenby each played him once during the 1960s, while two films were released with Timothy Dalton in the lead role, The Living Daylights (1987) and Licence to Kill (1989).
Daniel succeeded Pierce Brosnan as Bond and made his debut in Casino Royale in 2006.
He has since played the spy in Quantum of Solace (2008), Skyfall (2012) and Spectre (2015).