Question for y'all who are using claude or similar: why do you put `Co-authored-by: Claude` etc. into commit messages?
You already pay that company money, and in addition you do free advertisement for them?
Should I also start adding `Co-authored-by: neovim`, "proudly written with the help of rust-analyzer", etc. to my commit messages, and if not why is that different?
Or is that a way to deflect responsibility? "Look, claude wrote that, it's not my fault if the code is wrong"?
Or are you trying to say that part of the copyright of the commit is owned by claude? And if so, what do you mean with that? It's Anthropic's now, or do you believe non-persons can legally own something?
Only replies about this aspect please. I'm not interested in hearing your opinion about how claude is the future of programming or how AI is the worst. There are already enough discussions about that, we don't have to start yet another one.
@slomo I disable it because I've reviewed the code. They're my commits. Some people leave it enabled to warn others that there are LLMs involved. Those are the only two reasons I've seen.
@fasterthanlime @slomo I was actually thinking of something similar to suggest to the team I'm working with, to *warn* me that some of the work they want me to review was produced with an LLM(s). I'm not saying `Co-authored-by:` is a great way.
@slomo if you ask Claude to do the commits for you it often does that and I don’t bother stopping it. I know it’s advertising for Claude, or perhaps their way of collecting metrics. perhaps it assuages my guilt, it feels more honest
however, i tend to be much more hands on with git (most commands in the shell) and i never add that in deliberately
@fasterthanlime But why would you need to warn me about that? Because you want to have an excuse if there's garbage you missed? ("You" not specifically you Amos, I know you do things properly)
Ideally I wouldn't notice that your code is written with the help of an LLM, but if I do then that's probably a sign that you didn't do your job. And as a reviewer I would feel annoyed, as my job as a reviewer is not to provide you with prompts to let your LLM fix up things. That's something I could do very well myself and we can remove you us middleman ;)
@slomo I think Claude puts himself in there when he (Claude) writes the commit.
I tried to let GitHub Copilot CLI fix some issues and auto-commit, and he also put `Co-authored-by: Copilot`
@slomo It's more because there's a number of people using that signal to just completely disengage with anything that's branded with it. So on the side of people who do use AI tools, leaving the co-authorship on could be a way to respect the wishes of the sans-AI folks? Most likely though it's because it's on by default and it's mildly annoying to figure out how to disable it. And even if you do figure out how to disable it, it's super easy to have a "Claude contributor" slip into your repository through a third-party PR. Oh well.
@fasterthanlime @slomo How it's different? My view is that it's no longer a simple auto (snippet) complete, or auto-correct. I've been exposed to some garbage already, and that confused me a lot as it did not seem to "belong" to the author.
@kris @fasterthanlime But that's on the author then. If they produce garbage one way or another, then that's their fault and not claude's. I shouldn't really have to care if they sent garbage my way because they didn't check claude's output or because they didn't get any sleep last night.
FTR, I also had my share of garbage LLM PRs that I had to review (but also good ones, or garbage PRs produced by humans, ...)
@slomo it’s on by default and most people maybe don’t know it can be turned off easily?
Sent from my Samsung Galaxy S27 using Tapatalk
@slomo @kris It's essentially the biggest eternal September we've ever had. And I can see how much it weighs on folks. I've been lucky to not have to deal with it personally as a maintainer. And I believe honestly that this is a problem where more violence is the solution.
(Violence as in: you can use LLMs against LLMs. And it works fairly well, as a first pass)
@slomo @fasterthanlime When I know the author used LLM(s) for their work, I challenge them harder than I'd otherwise do given the trust I already had for them. Simply because I've noticed (that's only my experience!), people submitting work with the help of LLMs get sloppier.
@fasterthanlime Thanks, I think that's actually a valid reason (signalling to anti-LLM folks that this code is tainted).
OTOH, like you say, that also seems like a lost battle at this point. I'm sure almost everybody has merged some LLM-assisted PR, unknowingly. It's not at all obvious and there are enough that are actually good if the author did their job properly.
And if they didn't personally merge such a PR, almost certainly some of their dependencies will have some LLM-assisted code nowadays. Like, are you using Linux?
If it's just "it's too difficult to disable it", then I'm actually going to judge the author for that. git commit hygiene is important, but maybe that's just me being pedantic...
@kris @fasterthanlime I'm not sure if that's true, it seems hard to measure. Maybe you're just looking more for mistakes if you know the author used an LLM.
So far I didn't notice any obvious difference for the same person. At least nothing that couldn't be explained equally well with them having had a bad day.
@slomo I had assumed it did that by default rather than people actively choosing it.
On top of the advertising aspect, I suspect they do it to try and get developers to anthropomorphise the program.
Not quite your question but there's some logic to a comment like that should be required as it's also a way of saying that the code may not meet the requirements of the open source project, granting them the ability to not take the PR because of unclear IP of the contents.
@slomo Amos does not do things properly, they flat out ignore LLM errors I've pointed out in the past
@dngrs I don't have any point of reference other than PRs that I reviewed a few years ago and those were good. But bashing Amos is also not the point here 🙂
@fasterthanlime @slomo yeah, "slip in" is the only way i've seen it happen. i've never heard of anyone include claude (or coderabbit, or copilot, or whatever) as a contributor _intentionally_
maybe it's just 88x31 badges all over again? the majority of people were too lazy to delete that line from the footer in 1997. maybe somebody was proud of their web editor... but not the majority.
when github eventually dies and someone puts up the neohub archive, this might be remembered as that brief moment where people tagged their commits with a bot "co-author"
@soph That aspect doesn't seem very different to me than when accepting code from some random person on the Internet. I just have to believe that the code they're submitting is something they're allowed to submit under their name.
And if they write on it that an LLM was somehow involved, that also doesn't really tell me me much. Was it all generated by an LLM? Did they use it as a fancy boilerplate generator and did the actual work themselves? Did they just have it review the code? Nobody knows, and even less what this means for the IP until someone actually gets sued and a court decides. And I hope we don't all have to downgrade to Linux from today once there's a decision in 10 years... it's all not a very satisfying situation :)
@slomo There is a simpler, obvious reason. Claude Code defaults to putting that attribution in commit messages. Changing the default involves effort. People using LLMs are trying to avoid effort.
@yadt That actually works for me. If you can't be bothered to remove your "Sent from my iphone" from your commit message then I probably also shouldn't spend time on reviewing it.
Linux kernel policy requires that. Allows reviewers to go in with an understanding that the quality might not be great, I think?
At the same time, Linux kernel also requires that you understand the patch you send. So I'm also not quite sure why that policy exists.
- replies
- 1
- announces
- 0
- likes
- 0
@wouter The Linux kernel policy seems require it for "science reasons": ... proper attribution helps track the evolving role of AI in the development process.
That seems not very useful like this though. For that purpose you probably want to also document *how* it was used exactly.
Also I don't think it would be a valid reason to require it because the quality might not be great. If that was the reason then the only consequence of that should be to simply say that it's forbidden / discouraged to use.
@slomo I drink a lot of coffee, so I guess everything I do is done with support of the Algerian Coffee Stores of Soho, London
(They can have free advertising, their coffee is amazing)
@paul Ah yes, that's also a very good point (tea here, though).
Maybe we should learn from actual book authors and also thank our parents, etc. as part of the commit messages.
Yeah, you'd think so. But I don't know if the kernel community would care much about 'science reasons', and also I thought the process document about assistant tools was talking a lot about maintainers time, but now that I review it I seem to have misremembered.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/coding-assistants.rst
Quite confused now 🤷
I know this is a side note, but in the US, you can't copyright code created by an LLM, so if you add it to your work, then you could lose copyright.
@killick I don't think it's that clear but I'm not a lawyer. I just have a hard time believing that if this was the case that at a company like e.g. Microsoft their lawyers wouldn't do everything possible from stopping their engineers to use LLMs. But what we see is quite the opposite.
No, I'm not a lawyer either, but before I started adding LLM created code into my project, I'd want clarity on the issue. MS never releases source code, so maybe they don't care? But they'd still want the ability to sell licenses.
Here's what put the question into my head about whether or not you can copyright something produced with AI:
@killick From what I know there are various Microsoft licensing schemes that allow you to actually get access to the source code of their proprietary products (including Windows) under certain conditions. See their "Shared Source Initiative".
I'm aware of the reporting but naive me thinks that if it was that simple we would've already had this bubble burst and all these companies forcing their employees to not use LLMs instead of actually forcing them to use them, whether they want or not.
@slomo I think the idea is full disclosure that you used such tooling
There's quite a bit of territory that needs to be explored, but the Supreme Court ruling in the US definitely does raise some eyebrows.
As far as the difference between an LLM and a rando - you're right you don't know where they got *their* code from, but at least you have a person you're working with. There's no framework in place to hold LLMs accountable at all, whether socially or legally.
One reason I bring this up is to help avoid the 10-years-later situation you describe.
@slomo Claude Code Web does it automatically. I assume you can tell it explicitly not to do it.
@fasterthanlime @slomo Is there a setting for it? Of yes, I'll tell my colleagues to please set that
@soph From my understanding LLMs are still tools that are managed by some human. I don't think we're yet in the situation where these things are self-controlled, conscious entities so for the time being I'm going to consider the human behind it responsible. Or am I missing something here?
But just like with random people on the Internet that might not be very useful in practice. Who knows who is behind some pseudonym.
@ju in ~/.claude/settings.json
"includeCoAuthoredBy": false,
"gitAttribution": false,
To my understanding, with the advent of the latest round of agents, we're beginning to cross that line. Agents can submit their own code, write their own blog posts, etc. (If you haven't yet seen https://theshamblog.com/an-ai-agent-published-a-hit-piece-on-me/ it's worth a read as a word of warning)
@fasterthanlime thank you!
@slomo Well, if it is written by Claude, it is in the public domain, since LLMs can't hold copyrights. Good to know for future use.