Bregman homered for the third straight game and Yuli Gurriel also connected as the Astros won their third in a row, 4-1 over the Minnesota Twins on Monday.

Dallas Keuchel (11-10) scattered five hits over six innings and allowed one unearned run. Brad Peacock allowed a single with two outs in the ninth to load the bases, but struck out Jorge Polanco to escape the jam and get his third save.

Kyle Gibson (7-12) yielded four hits and four runs — two earned — with five strikeouts in seven innings for his third straight loss.

“I kind of struggled the last month or so with a little bit of command and executing pitches … other than a tough couple plays in the second it was pretty good,” Gibson said.

There were two outs in the first inning when Bregman hit his 28th home to give Houston a 1-0 lead. He has reached base safely in 31 straight games, the longest active streak in the majors. He has 13 hits, including four homers and three doubles, and 10 RBIs in his last eight games.

“This is the best I’ve seen him play in a short career,” manager A.J. Hinch said. “He’s just very locked in … he’s very under control. He’s very locked in. He knows a ball from a strike. He’s hunting the right pitches. He’s laying off the right pitches. He’s a pretty elite performer.”

Bregman has set a career high for home runs and leads the Astros in that category. He ranks first on the team with 89 RBIs and 43 doubles. He also has a triple this year to give him 72 extra-base hits, the most by an Astros player since Lance Berkman had 79 in 2008.

“This season has definitely been the best so far personally,” Bregman said. “But I think that’s strictly due to the fact that I’m just trying to go up there and trying to put together a good at-bat and trying to help this team win games.”

Tyler White singled to start the Houston second before Gurriel reached on an error by Polanco at shortstop. Brian McCann followed with an RBI single and Evan Gattis then grounded into a double play that allowed another run to score for a 3-0 lead.

Gurriel homered off Gibson in the fourth.

Keuchel had retired seven straight when Mitch Garver singled with one out in the sixth. An error by shortstop Carlos Correa, who overthrew first base, allowed Robbie Grossman to reach before the Twins cut the lead to 4-1 on an RBI single by Miguel Sano. But Keuchel struck out Jake Cave and Tyler Austin to end the inning and leave the runners stranded.

Gibson settled down after the homer to Gurriel and retired the last 11 batters he faced before Matt Magill took over for the eighth.

TRAINER’S ROOM

Astros: RHP Hector Rondon left the game after deflecting a ball hit by Cave off his right hand in the ninth inning. Rondon’s hand was swollen after the game but he said X-rays were negative and he thinks he’ll be OK after a couple of days. … Houston INF Marwin Gonzalez left after the first inning because of discomfort in his right oblique. … RHP Charlie Morton (shoulder discomfort) played catch for the second straight day and is scheduled to throw a bullpen session in the next couple of days. Hinch said if that goes well he’ll come off the disabled list to start against Boston on Saturday. If he can’t go the Astros will start rookie Josh James, who made his major league debut on Saturday.

THEY SAID IT

Hinch on the ball that hit Rondon: “He’s lucky he put his arm up. If you look at the replay it probably saved his face. I think it even got a little bit of flesh and not so much the bone. Very scary.”

UP NEXT

Justin Verlander (13-9, 2.78 ERA) will start for Houston against Trevor May (3-0, 1.88) when the series continues on Tuesday night. Verlander ranks second in the American League behind teammate Gerrit Cole with 240 strikeouts this season.