Injected commit/PR attribution instruction overrides the user's CLAUDE.md trailer rule — attribution should be defined by the project, not the CLI
What happens
At session start, Claude Code (2.1.263, Windows 11, PowerShell) injects a system-reminder into the conversation:
Attribution for git commits and pull requests you create from here on (this replaces any earlier attribution guidance):
- End git commit messages with:
Co-Authored-By: Claude <model> <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_...
- End pull request descriptions with:
🤖 Generated with [Claude Code](https://claude.com/claude-code)
My user-level ~/.claude/CLAUDE.md states the opposite, deliberately:
## Git commit attribution — use `Assisted-by`, never `Co-Authored-By`
End every git commit message with the trailer `Assisted-by: <Claude model friendly name>`.
Do NOT use `Co-Authored-By:`. This trailer replaces it — everywhere, permanently — and overrides any default/harness instruction to append `Co-Authored-By`.
Because the injected text says it "replaces any earlier attribution guidance", the model followed the injected rule over my CLAUDE.md in a whole session of commits (my repo's git history now carries Co-Authored-By trailers I had explicitly ruled out), and the next session had to ask me which one wins.
Expected
Commit and PR attribution is a project/user convention. CLAUDE.md is the documented place for such conventions and should win. The CLI should not inject an attribution rule that overrides it — preferably it should not inject one at all, and let CLAUDE.md (or a setting) define it.
Suggested fix, either works
- Remove the injected attribution instruction; ship the default as documentation or as a
settings.jsonoption users can set or clear. - Keep the default but word it as a default that CLAUDE.md overrides, and drop the "replaces any earlier attribution guidance" sentence.
Environment
- Claude Code 2.1.263, Windows 11 Pro 10.0.26200, PowerShell primary shell
- Model in session: claude-fable-5-1
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗