The fatal clashes in the state capital, Garowe, erupted during a parliamentary session to debate changes to the local constitution, which the opposition claims is a bid by Puntland's president to extend his term in office.
"Around eight people were confirmed dead in the fighting and more than 10 others were wounded, including civilians," said Abdiweli Hassan, a police officer in Garowe.
He said the violence broke out when gunmen loyal to opposition politicians confronted security forces protecting parliament and tried to disrupt the session.
"They have been defeated and the situation in town is calm now," he said, adding: "No one will be allowed to act above the law."
One witness, Mohamednur Ali, said he saw around six dead bodies and several wounded people, adding: "The fighting was very intense and both sides used heavy machine guns."
"The situation is normal now but there is still sporadic gunfire," Ali added.
Another witness, Nimo Adan, said she was caught up in the crossfire and saw several people killed.
In May, Puntland held local elections that were the first direct polls in Somalia in more than half a century, outside the breakaway region of Somaliland.
At the time, opposition politicians accused Puntland state president Said Abdullahi Deni of manipulating the election procedure and seeking to amend the constitution to enable him to extend his mandate which is due to end in January next year.
Later in May, Somalia's central government and four federal member states - excluding Puntland - announced a deal for a "one-person one-vote" system to be introduced with local elections set for June next year.
It followed a pledge by President Hassan Sheikh Mohamud in March to end the complex clan-based indirect voting system in the Horn of Africa nation, which has been mired in chaos for decades.
Somalia has not held direct elections nationwide since 1969, when the dictator Siad Barre seized power.
But the new plan also calls for parliamentary and presidential votes in the federal states on November 30 next year, beyond the current expiration dates of some mandates - including Deni's term.
An arid oil-rich region in northeastern Somalia, Puntland declared autonomy in 1998 and relations with the central government in Mogadishu have often been tense.
MOGADISHU — At least eight people were killed on Tuesday in fighting outside parliament in Somalia's semi-autonomous region of Puntland between local security forces and armed militiamen loyal to opposition politicians, police and witnesses said.