Kurdistan's vote for independence last month, strongly opposed by Baghdad and the US, has sharpened long-standing disputes between Baghdad and Kurdistan's semiautonomous government in the north over land and oil.
Kirkuk has been contested for decades, but Kurdish forces took control after the Iraqi military fled from large swaths of northern Iraq in 2014 in the face of an Isis push. Now Iraq wants that ground back.
Baghdad has built up troops on the outskirts of the city in recent days. Army, police and forces from Iraq's popular mobilisation units, which include Shia militias backed by Iran, have massed in the area, as Kurdish forces furiously dug defences.
As Kurdish authorities warned of an impending attack, Abadi tried to diffuse tension, taking to Twitter to assure that Iraqi forces "cannot and will not attack our citizens".
Iraqi commanders initially dismissed troop movements as routine deployments. But Shia militia leaders close to Iran said that they were there to move into the province, and had presented a list of demands to Kurdish peshmerga commanders. Those demands included a Kurdish withdrawal from positions including the city's K1-military base and oil fields.
Militia commanders took a combative tone. Anyone who fights Iraqi forces is "the same as Isis," said Karim al-Nuri, a spokesman for Iraq's popular mobilisation units.
State television said that counterterrorism forces, the 9th Division of the Iraqi Army and federal police forces had taken "large areas" of the province without a fight. It said popular mobilisation units took positions "outside Kirkuk".