HOUSTON -- In the midst of a difficult season, the Kansas City Royals got a needed spark Friday night from one of their newest additions.
Rookie Rosell Herrera kept the game scoreless with a home-run robbery in the eighth inning and hit an RBI triple in the ninth, and struggling Kansas City beat the Houston Astros 1-0.
Herrera helped the Royals end a nine-game skid by bringing back Alex Bregman's would-be homer. The right fielder reached over the short outfield wall to snag the first out in the eighth.
"He's athletic, he's fast," manager Ned Yost said. "He seems to swing the bat OK from both sides. It's only been a week. There's a lot to like looking at him on a short look."
Adalberto Mondesi singled off Ken Giles (0-2) to start the ninth, stole second and took third on a flyout by Whit Merrifield. Herrera then sent a ball to center field to score Mondesi.
Herrera also had a double and is batting .278 in five games since being cut by Cincinnati and acquired by the Royals.
"That was very fun, not only for me but for my teammates because we played really good defense today ... and that's why we made the right play at the right time and won the game," Herrera said.
Danny Duffy pitched six innings of two-hit ball for the Royals, and the bullpen didn't allow another knock. Justin Grimm (1-2) pitched a scoreless eighth and Tim Hill threw a perfect ninth for his first save.
When asked about his work Friday night, Duffy briefly discussed his outing before raving about Herrera.
"Rosie he's a stud, man," he said. "I'm a big fan of that kid. If he keeps playing as hard as he does, he's always going to have a spot in the big leagues. We love that here. I'm really happy for him. He had a fantastic game."
Houston was shut out for the first time since May 11. They still had several opportunities to score because of seven walks but went 0 for 9 with runners in scoring position.
"It's unusual because we've been pretty good swinging the bat lately," manager A.J. Hinch said. "It seemed like every opportunity ended in a double play tonight."
Houston starter Dallas Keuchel pitched six strong innings. He allowed six hits and struck out six, while Duffy fanned seven after being tagged for seven runs in six innings of a loss to the Astros on Saturday.
The Royals had just wrapped an 0-8 homestand and had lost 15 of 16.
Kevin McCarthy took over for Duffy in the seventh and issued consecutive walks to Evan Gattis and Marwin Gonzalez. Pinch-hitter Tony Kemp then grounded into a force out that left Gattis out at third. But the Astros loaded the bases when pinch-hitter Tyler White reached on a fielder's choice.
Houston came away empty-handed when George Springer grounded into a double play.
Salvador Perez doubled with one out in the eighth and Houston intentionally walked Alex Gordon before Alcides Escobar drew a walk to load the bases. The game remained scoreless when Hector Rondon struck out Paulo Orlando to end the inning.
Astros: Hinch said RHP Joe Smith (right elbow inflammation) is improving but still has several steps to go through before he's ready to come off the disabled list.
Escobar started in center field, snapping a streak of 407 straight starts at shortstop dating to Sept. 26, 2015. That streak was the longest in Royals history and the longest active streak in the majors. It's the first time he's played a position other than shortstop since he joined the Royals in 2011 and the sixth time in his career he's played in the outfield, after appearing in five games there for the Brewers in 2010.
The Royals started Mondesi at shortstop instead. They have said Escobar will also see time at second and third base this season.
"I just think that the time was right," Yost said. "He knows that his next career move is probably going to be a utility-type player ... and he's anxious to start showing people that he can handle it."
Escobar, who entered the game 2 for 28, had two hits including a double.
"I thought (Escobar) looked good in center. He hits good as a center fielder," Yost said with a laugh.
Houston's Lance McCullers Jr. (8-3, 3.77 ERA) looks for his third straight win when as he opposes Ian Kennedy (1-7, 5.31) Saturday night. Kennedy hasn't won in 13 starts, going 0-7 with a 6.12 ERA since his only win of the season on April 7.
More AP baseball: https://apnews.com/tag/MLBbaseball