I solved the color issue with:

```lang-el
(with-eval-after-load 'magit
  (setq magit-git-environment 
         (append magit-git-environment 
            (list "OVERCOMMIT_COLOR=0"))))
```

This sets the `OVERCOMMIT_COLOR` env variable when running the git command, which instructs Overcommit to not format with color codes that magit-process doesn't understand.