Ninety minutes produced a goalless draw, with Chiefs' George Maluleka missing a penalty in regulation time, as well as in the marathon shoot-out.
Thabo Matlaba delivered the decisive blow from the spot to claim honours and bragging rights for the Nedbank Cup holders.
Both teams, though, sustained injury scares, as Kingston Nkhatha and Happy Jele failed to complete the pre-season contest.
In a dull derby, Oupa Manyisa tried to liven up affairs with a long-range shot in the 12th minute. However, Pirates' reigning player of the season dragged his attempt wide.
Chiefs, who won the event last year, then suffered a setback midway through the opening stanza, as striker Nkhatha picked up a knock after colliding heavily with Bucs goalkeeper Senzo Meyiwa. The Zimbabwean hobbled off the field and was replaced by Amakhosi returnee Siphelele Mthembu.
The Sea Robbers proceeded to dictate affairs, as Matlaba, Jele and Kermit Erasmus all threatened without reward before the interval.
Matlaba was first to test Glamour Boys goalkeeper Itumeleng Khune, as his powerful 20-yard strike was swallowed up by the national skipper in the 34th minute.
Four minutes later Jele headed narrowly over off a a telling free-kick from the right by Daine Klate.
Soon after Erasmus fired a left-footed shot on target, but Khune was well-placed to deny the former SuperSport United hitman.
Stuart Baxter's outfit showed intent after the recess, as Willard Katsande drew an ugly stop from Meyiwa with a useful crack on goal in the 48th minute.
Both sides made changes in the 54th minute as per the competition's format, with fans voting for the introduction of Josta Dladla and Issa Sarr. Dladla, who recently served a drugs ban, replaced Katlego Mphela for Chiefs, while Pirates newcomer Sarr came on for Tlou 'Sox' Segolela.
Two minutes later Buccaneers coach Vladimir Vermezovic was forced to bring on the versatile Ntsikelelo Nyauza for right-back Jele, who was stretchered off with a chest complaint.
Baxter's outfit should have taken the lead in the 66th minute, but Maluleka struck the cross bar from the spot after George Lebese was felled in the box by a silly challenge from Rooi Mahamutsa.
Moments later Lebese triggered a fine stop from Meyiwa at his near post with a well-hit shot.
Vermezovic made a string of substitutions in the latter stages, as he brought on Lennox Bacela, Mpho Makola, youngster Maselaelo Seanego and Thandani Ntshumayelo for Lehlohonolo Majoro, Sifiso Myeni, Daine Klate and Erasmus respectively.
Baxter, meanwhile, opted to inject the attack-minded Mandla Masango at the expense of Reneilwe Letsholonyane in the final minute.
Chiefs: Masango scored, Maluleka missed, Dladla scored, Lebese scored, Katsande scored, Mathoho missed, Mthembu scored, Mashamite missed, Gaxa missed.
Pirates: Bacela scored, Manyisa scored, Sangweni missed, Makola scored, Sarr scored, Seanego missed, Ntshumayelo scored, Mahamutsa missed, Matlaba scored.