The Chicago Cubs and shortstop Starlin Castro have agreed to a seven-year contract with a club option for 2020.
The 22-year-old Castro is a two-time All-Star and in just his second full major league season. He led the National League in hits with 207 last season. Since making his major league debut on May 7, 2010, Castro has more hits than any player in the NL with 486.
Castro, a career .296 hitter, was batting .276 this season with 12 homers and 63 RBIs before Tuesday night's game against Milwaukee.
Castro was originally signed by the Cubs as a non-drafted free agent on Oct. 25, 2006. Terms were not released by the team in Tuesday's announcement.