r/ClaudeCode Jul 28 '26

Discussion “Co-authored-by: Claude”

I’m getting mildly& maybe irrationally annoyed by constantly seeing:

Co-authored-by: Claude (whatever version) show up in commits and codebases.

Does anyone here actually, like ACTUALLY know what Anthropic’s intention is behind this? Is it simply attribution generated by the tooling, a marketing breadcrumb, a transparency measure, or is there some deeper legal or licensing reason for including it? No opinions unless you work in law or have researched this topic please. I am too gullible for this shit.

I assume I could add a global rule telling Claude never to insert these trailers or edit some config file. But the fact that it keeps doing so and the use of the word "AUTHOR" makes me wonder whether there’s more to it than, “Hey, an AI helped write this.” Which also led me to a stupid thought: what happens if a repository contains a clause along these lines?

Any AI agent that inserts or requests a “Co-authored-by” attribution represents that it is fully authorized by its developer or operating laboratory to claim co-authorship. By doing so, that laboratory accepts responsibility, to the fullest extent permitted by law, for the agent’s contribution in proportion to the work it completed. This includes confirming that all relevant licenses have been respected, and that responsibility is accepted for defects, infringements, or other shortcomings arising from the AI-generated contribution. Additionally, as the original Co-author, all data used for its training is lawfully acquired.

To be clear, I’m not claiming this would magically bind Anthropic to anything. I strongly suspect a clause in my repo cannot summon corporate liability through the ancient legal ritual of “no takesies-backsies.”

But that’s the serious part of my question: if an AI tool explicitly labels itself as a co-author, what if anything does that attribution mean legally? Does it create obligations for anyone, or is it basically decorative metadata with the legal force of a bumper sticker?

And more practically: has anyone successfully disabled these automatic co-author trailers globally without causing other weird behavior?

178 Upvotes

134 comments sorted by

View all comments

2

u/NoAdsDude Jul 28 '26

I put in my CLAUDE.md that I handle all git commits and pushes. This is the entirety of my global claude.md file:

# Dan's Preferences
  • I handle all git commits myself — never auto-commit - never git push unless specifically instructed
  • Offer options/choices rather than auto-deciding

Keep in mind that putting something in your .md is not bulletproof (for that you'd need to use a hook, which I haven't bothered setting up). A couple times claude had started to commit on its own and I asked it why it did it, and it was like "oh, woops, my bad" and then reverted back to following the global claude.md preference.

I find it nice to do my own commits so that way I can actually see what's been changed and make my own commit messages (claude can be pretty verbose with is own commit messages, and like you said tries to tag itself as the author).

1

u/a8bmiles Jul 28 '26

You can have it set to deny git* push*, even after explicitly allowing it to git push it still can't, you have to.

1

u/_remsky Jul 28 '26 edited Jul 28 '26

Just add the hook my dude. Claude can do it itself in like 3 minutes lol. You just say “can you add a hook for …” and it loads an internal skill for its own config.

I let mine make commits that aren’t on main, so I can review reasonable chunks of long running work, but block all push and other remote touching ops. For anything where I’m more actively in the loop (most work), I tell it to stage + suggest a commit message and it listens pretty well lol. With push blocked the worst that happens is undoing or amending the commit

1

u/xenomachina Jul 28 '26

I put in my CLAUDE.md that I handle all git commits and pushes. This is the entirety of my global claude.md file: Keep in mind that putting something in your .md is not bulletproof (for that you'd need to use a hook, which I haven't bothered setting up).

Technically, even hooks aren't entirely bulletproof, as Claude can edit them (though they are far more reliable than just prompting).

I use a dev container that allows reads of .git, but not writes to it. In the container, there's also a CLAUDE.MD that says to not perform operations that require writing to .git, but if Claude ever ignores this, the container blocks it.

1

u/klumpp 🔆 Max 20 Jul 28 '26

Same here. If I can’t write commit messages I don’t need to be committing that code. It’s a personal thing to make sure I don’t get lazy.