Safety Ji’Ayir Brown, who underwent an ankle procedure this offseason, also didn’t practice. With 2024 co-starter Malik Mustapha recovering from an ACL tear, the 49ers lined up two free-agent acquisitions — Jason Pinnock and Richie Grant — at the first-string safety positions. Rookie safety Marques Sigle also isn’t expected on the practice field until training camp.

Even though players outside the quarterback spot didn’t wear helmets during Thursday’s 11-on-11 work, the session was still competitive enough for edge rusher Nick Bosa to get in on some fun. He pursued Purdy on a rollout, killing a play and coaxing a throwaway floater. Cornerback Tre Brown, whom the 49ers acquired in free agency after a four-year stint with the Seattle Seahawks, intercepted the pass — and Bosa thrust his right hand skyward as part of a smiling celebration.

Later on, as McCaffrey did another one of his customary post-play sprints toward the end zone, rookie defensive lineman Mykel Williams — the 49ers’ top pick in last month’s NFL Draft — hightailed it after him for about 10 yards. Defensive line coach Kris Kocurek appreciated that effort, yelling his approval at Williams.

This is clearly tone-setting time for the 49ers, and Thursday’s first full practice seemed to be a productive day in that effort.

“The vibes are high,” Kittle said. “I would say they’re immaculate.”