The deal includes a club option and $5 million guaranteed with a chance to earn $10 million. MLB.com was first to report the deal; MLB Network was first to report terms.
The 36-year-old Romo was 2-1 with 20 saves and 60 strikeouts over 60⅓ innings in 65 relief appearances last season for the Miami Marlins and the Twins -- who acquired him, minor league pitcher Chris Vallimont and a player to be named for minor league first baseman Lewin Diaz at the July 31 trade deadline.
The veteran right-hander was acquired by Minnesota to serve as a playoff-tested performer to fortify the back end of its bullpen, and the Twins held off the Cleveland Indians to win their first American League Central title since 2010.
Romo spent the first half of the year as the Marlins' closer, racking up 17 saves to go along with a 3.58 ERA in 37⅔ innings.
Romo won three championships with the San Francisco Giants, closing out the final game of the 2012 World Series in memorable fashion when he froze Miguel Cabrera on a down-the-middle fastball. In 25⅓ career playoff innings, Romo has a 3.55 ERA.
Romo was drafted by the Giants in 2005 and worked his way up the team's minor league system before landing in the big leagues in 2008.