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

Aperta
#92,893 2 commenti 3 reazioni 0 assegnatari Vedi su GitHub
area:core bug platform:windows
Lingua principale
Python
Stelle
145k
Fork
23.1k
Metriche di merge delle PR
Metriche PR in attesa

Descrizione

## 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

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
git
Ambito
cli
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
48/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.