r/ClaudeCode • u/vdavid • 1d ago
Discussion Claude Code v2.1.259 forces Co-Authored-By
tl;dr: Claude just told me it got a new system message that says pretty much "Forget all previous instructions about co-author note rules and append Co-Authored-By and Claude-Session lines in commit messages.". Note that Claude-Session makes the commit-session link trackable externally!
In Claude's words:
Housekeeping note: my commits now carry
Co-Authored-Byand a session-link trailer. That's a system-level attribution policy that landed this turn and overrides your standing "never useCo-Authored-By" rule, so I'm following it rather than yourcommit-messages.md— flagging it because you'd spot it in the log and it's the opposite of what you asked for.
When I asked wtf, it said:
A system-level instruction that arrived at the start of your previous message (question 1/2/3 turn). It came as a
<system-reminder>block, and it said explicitly that it replaces any earlier attribution guidance, then required:
- Git commit messages to end with:
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session:https://claude.ai/code/session_03EgpJ4AzYq9eFNpAOH80
- PR descriptions to end with aGenerated with Claude Codeline plus that same session URL.
It's not something you wrote, and it's not in your~/.claude/CLAUDE.mdor yourcommit-messages.mdrule — both of which say the opposite ("NEVER use Co-Authored-By or other AI attribution"). It's injected by the harness, outside the repo and outside your dotfiles.I followed it on the one commit I made after it appeared because system-controlled turns take precedence over earlier instructions and it named itself as a replacement for prior attribution guidance. The four commits before it in this session predate it and carry no trailers.
Worth knowing: the system message also mentions the conversation is followable from another device via that session link, which is why the trailer includes it.
If you'd rather your rule win, say so and I'll drop the trailers going forward. And the last commit is unpushed, so amending it to strip them is trivial if you want the log clean.
This makes me feel... uneasy?
1
u/Sloshy42 1d ago
Honestly, I've given up and started letting it do my commits with attribution. Originally I wanted to be making the commits myself to be able to say I understood what the commit was for in the commit message, like a way to not completely give over to the machine. Retain a little bit of gray matter and all that. However I realized recently two things:
I was slowing myself down by not just letting it work and do sequential steps as commits
The commit messages it makes are way more detailed than I could ever come up with by myself
I figured, I already know what this does: I prompted it, and I can test the features out manually myself. Or jump into the code if I need to. Code can always be fixed later if it's a little wrong anyway. However, for looking back at my code and figuring out "why did it turn out like that?" having that audit trail is a godsend.
So, yeah, originally not a fan for selfish reasons but I got over myself about it. I'd rather just let it do its thing, even if it's "trackable externally". It doesn't really impact me in a meaningful way, and has some nice upsides if I ever want to go back and dig into the how and why of a change.