The Phillies gave up first baseman Jonathan Singleton, right-hander Jarrod Cosart and right-hander Josh Zeid in exchange for the lone Astros player on this year's NL All-Star squad.
Cosart is one of Philadelphia's best pitching prospects and Singleton is considered their top hitting prospect.
Pence recorded his final putout as an Astro on a routine fly from Ryan Braun to end the bottom of the fourth, tossing the ball into the stands behind the Astros dugout. He didn't bat in the top of the fifth, and went out to right-field in the middle of the inning, but was replaced by Jason Michaels before Astros starter Jordan Lyles threw his first pitch.
"The Astros are going to get some great players," Pence said. "It's a new chapter for them and a new chapter for me `cause I'm on board with a team that has the best record in baseball. Unbelievable talent. It's a wonderful thing for everybody, I hope."
Pence is a career .290 hitter over four seasons with the Astros and was hitting .308 with 11 home runs and 62 RBIs this season.
Cosart, 21, grew up in League City. According to Astros.com, he has an 18-13 career record with a 3.67 ERA.
Singleton, 20, has a career .287 hitter with 25 homers and 136 RBIs in 227 games.