anthropics / anthropics/claude-code
Injected commit/PR attribution instruction overrides the user's CLAUDE.md trailer rule — attribution should be defined by the project, not the CLI
- 主要语言
- Python
- 星标
- 145k
- 派生
- 23.1k
- PR 合并指标
- PR 指标待抓取
描述
## 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
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: `.
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
1. Remove the injected attribution instruction; ship the default as documentation or as a `settings.json` option users can set or clear.
2. 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
贡献指南
这个仓库没有索引到贡献指南
调研方向
Start by tracing the session-start system-reminder that injects commit and pull-request attribution, then inspect how CLAUDE.md guidance is loaded and prioritized. Reproduce the conflict with a custom trailer rule; done means the injected instruction no longer overrides the project or user convention, with the chosen default behavior covered by tests.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- git
- 领域
- cli
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 48/100