Morgan Tsvangirai agreed to share power with Zanu-PF in September
Zimbabwe's political parties have agreed on constitutional changes central to a power-sharing deal, an opposition spokesman has said.
But Nelson Chamisa said that other issues remained outstanding before a unity government could be formed.
The changes agreed in South Africa pave the way for opposition leader Morgan Tsvangirai to become prime minister - as outlined in a September deal.
The rivals have still not agreed on the allocation of cabinet posts.
President Robert Mugabe's Zanu-PF party and Mr Tsvangirai's Movement for Democratic Change (MDC) agreed to share power after disputed election to try to rescue the economy.
Mr Chamisa stressed that the agreement on the draft constitutional bill was one of just five outstanding issues.
Asked how he thought the talks were going, he told the BBC:
"If you're optimistic, the glass is half-full, if you're pessimistic, it is half-empty."
He said the talks had now ended in South Africa and the delegates would return to Zimbabwe for consultations with their respective party leaders.
Mr Tsvangirai has accused Mr Mugabe of going back on the spirit of the power-sharing agreement by trying to keep control of all the major cabinet posts.
Mr Mugabe has threatened to name a government on his own if the MDC refuses to join a unity administration.
Southern African leaders have urged the MDC to accept an offer to share the ministry of home affairs which controls the police.
But Mr Tsvangirai refuses, pointing out that Mr Mugabe wants defence and state security.
Zimbabwe's economy is in meltdown, while the country is being ravaged by cholera, which has killed at least 360 people.
The health and education sectors are reported to be on the verge of collapse.