How to add the predicted classes to the original data using `brm()`

I’m wondering how to add the predicted classes to the original data using brm() like I might with glm(). I think I’m missing how to summarize add_predicted_draws().

library(tidyverse)
library(brms)
library(tidybayes)

data("PimaIndiansDiabetes2", package = "mlbench")
df <- na.omit(PimaIndiansDiabetes2)

# freq

fit <- glm(diabetes ~ ., data=df, family="binomial")
 
predicted <- bind_cols(df, predict(fit, new_data = df, type = "response"))
predicted <- predicted %>% 
  rename("pred" = "...10") %>%
  mutate(class = ifelse(pred > 0.5, "pos", "neg"),
         class = factor(class))

predicted %>%
  conf_mat(diabetes, class)

# brms

brms.fit <- brm(
  formula = diabetes ~ .,
  data = df,
  family = bernoulli(link = "logit")
)

brms.pred <- df %>% 
  add_predicted_draws(brms.fit) %>%
  mutate(pred = factor(.prediction, 
                       levels=c(0,1),
                       labels=c("neg", "pos")))

I think I made this too hard. The same approach works, right?

brms.predicted <- bind_cols(df, predict(brms.fit)[,1])
brms.predicted <- brms.predicted %>% 
  rename("pred" = "...10") %>%
  mutate(class = ifelse(pred > 0.5, "pos", "neg"),
         class = factor(class))