From 880e7144ecd3ec06a67dd1f044d01ed0c9871e6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Malfait?= Date: Thu, 18 Jun 2026 17:46:31 +0200 Subject: [PATCH] Disable Claude Code attribution on commits and PRs (#21798) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## What Adds a committed `.claude/settings.json` that turns off Claude Code's git attribution: ```json { "attribution": { "commit": "", "pr": "" } } ``` - `commit: ""` removes the `Co-Authored-By: Claude` trailer from commit messages. - `pr: ""` removes the "Generated with Claude Code" text from PR descriptions. Also narrows the `.gitignore` rule from `.claude/` to `.claude/*` + `!.claude/settings.json`, so this one shared config is tracked while personal `.claude/` files (plans, `settings.local.json`, etc.) stay ignored. Includes the schemastore `$schema` for editor autocomplete/validation. ## Why Cloud (Claude Code on the web) sessions clone the repo fresh and read **committed** repo config, but do **not** read a developer's local `~/.claude/settings.json`. Setting attribution only at the user level (the usual advice) therefore has no effect on cloud-created commits/PRs. Committing it to the repo is what applies to every future cloud session — and to all contributors using Claude Code on this repo. ## Scope This is repo-wide: it affects every contributor using Claude Code on `twenty`, not just one person. Easy to scope down later via `.claude/settings.local.json` if anyone wants attribution back locally. ## Follow-up / verification Per the docs, `attribution.commit: ""` hides commit text "including any trailers", so it should also suppress the cloud-only `Claude-Session:` trailer and the PR session-URL line — but that cloud trailer is undocumented, so it will be confirmed on the first cloud PR opened from a session based on `main` after this merges. If it survives, a one-line guard in `CLAUDE.md` (also loaded in cloud) is the fallback. --- _Generated by [Claude Code](https://claude.ai/code/session_01PipZFnzew1VuU48kiHm35R)_ Review in cubic --- .claude/settings.json | 7 +++++++ .gitignore | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 .claude/settings.json diff --git a/.claude/settings.json b/.claude/settings.json new file mode 100644 index 0000000000..0ae2205097 --- /dev/null +++ b/.claude/settings.json @@ -0,0 +1,7 @@ +{ + "$schema": "https://json.schemastore.org/claude-code-settings.json", + "attribution": { + "commit": "", + "pr": "" + } +} diff --git a/.gitignore b/.gitignore index a9c5855d5b..4a70fa51a1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,8 @@ **/**/.env .DS_Store /.idea -.claude/ +.claude/* +!.claude/settings.json .cursor/debug-*.log **/**/node_modules/ .cache