VS Code inserting 'Co-Authored-by Copilot' into commits regardless of usage
Behavior change and immediate backlash
- VS Code started appending
Co-Authored-by: GitHub Copilottrailers to git commits via thegit.addAICoAuthorsetting. - The default was flipped from
off→all→ later tochatAndAgent, and then reverted tooffafter strong criticism. - The tag could appear even when AI features were disabled or not used, due to a detection bug.
- The line was injected after the user wrote the commit message and wasn’t visible in the commit UI, only in the final commit.
Authorship, copyright, and legal worries
- Many see commit messages as legal/technical records; silently altering them is viewed as a serious breach of trust.
- Several worry that labeling Copilot as “co-author” might:
- Undermine copyright protection (given current views on AI-authored works).
- Create ambiguity over whether Microsoft has joint authorship or special rights.
- Others argue the trailer has no direct legal force and is just metadata, but agree it muddies the waters.
Motivations, metrics, and “growth hacking”
- Widespread suspicion this was driven by internal KPIs like “% of commits co-authored by Copilot,” analogous to “Sent from my iPhone” or past app signature growth hacks.
- Some suggest it could be used for AI-provenance tracking or training-data policy, but this is seen as speculative and unclear.
Trust in Microsoft and AI “enshittification”
- Many connect this to a broader pattern: aggressive AI push, telemetry, dark patterns, and perceived decline in product quality.
- Older commenters reference Microsoft’s historic user-hostile behavior and see this as the same playbook.
- Others note similar behavior from Claude Code and other tools, but emphasize VS Code is the editor itself, not just an AI client.
Workarounds and alternatives
- Several propose git hooks (commit-msg or pre-commit) to reject or strip the line.
- Others advocate switching to VSCodium, Zed, vim/neovim, Emacs, or separate tools like lazygit.
Microsoft’s response and process concerns
- A VS Code maintainer acknowledged the change was a mistake, promised fixes, and reverted the default to off.
- Commenters still criticize: lack of PR description, PM “vibe coding,” heavy reliance on AI reviews, minimal human review, and shipping a user-visible behavioral change without proper testing or UX consideration.