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 Copilot trailers to git commits via the git.addAICoAuthor setting.
  • The default was flipped from offall → later to chatAndAgent, and then reverted to off after 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.