The "loya jirga" assembly of some 2,500 chieftains, tribal elders and politicians on Sunday overwhelmingly backed the agreement to allow some US troops to stay on after 2014, and urged Karzai to sign it promptly.
But the president did not indicate when the deal would be inked, and said that it would only go ahead under certain conditions.
US Secretary of State John Kerry said the assembly's vote was a "compelling affirmation from the Afghan people themselves of their commitment to a long-term partnership with the United States".
"Very significantly, the loya jirga also urged that the Bilateral Security Agreement (BSA) should be signed before the end of the year," he said.
Supporters say the BSA is vital for the period after 2014, when the bulk of NATO's 75,000 remaining troops will pull out, as the Afghan government remains fragile despite 12 years of war against Taliban insurgents.
The Taliban, who before the assembly had threatened to target delegates if they backed the agreement, condemned the pact.
The "illegal and insignificant pact of slavery with America will neither benefit the American invaders nor criminal slaves", they said in a statement referring to the jirga members.
Opening the assembly in Kabul on Thursday, Karzai exasperated Washington by saying he wanted to delay signing the BSA until after the successful completion of April's presidential election.
After four days of discussions under tight security, jirga delegates anxious to conclude the deal with Afghanistan's main financial and military partner said in their closing statement that Karzai should sign before the end of 2013.
"Given the current situation, and Afghanistan's need... the contents of this agreement as a whole is endorsed by the members of this Loya Jirga," they said.
However, Karzai laid out conditions including US "cooperation" in efforts to make peace with the Taliban.
"This agreement should lead to peace. If it does not lead to peace, it will lead to disaster," he told delegates.
"The Americans should cooperate, and bring peace. If this agreement leads to peace, on my eyes, I will endorse, and accept your order and sign it," he said, adding he would "work on the agreement and continue bargaining".
Karzai also stipulated that there could be no more US military raids on Afghan homes, a sensitive topic that threatened to derail the deal last week.
"If the US goes into Afghan homes one more time, there will be no agreement," he said, repeating the point for emphasis.
The pact must be approved by the Afghan parliament before it can go into effect. But the question of when it would be signed has largely overshadowed discussions of its content in recent days.
The US State Department warned that failure promptly to sign the pact could jeopardise billions of dollars in vital aid to the war-torn country.
The White House has said it needs a swift decision to start planning the movement of US troops, and warned that President Barack Obama had not yet decided whether to keep any American forces in Afghanistan at all beyond 2014.
Analyst Fardin Hashemi said that, despite Karzai's comments, he expected the deal to be signed soon.
"Afghanistan needs US aid to function and the continuation of the aid has been conditioned on a signing of the pact before the end of the year," he told AFP.
A draft text of the BSA released by Kabul last week appeared to show Karzai had bowed to a US demand that American troops would remain exempt from Afghan jurisdiction if they are accused of crimes.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ