So Anthropic employees are using Claude Code to contribute AI-generated code to open source repositories and hiding the fact using their own internal “undercover mode”.

Totally trustworthy people.

(Any open source project that at the very least requires disclosure of AI-authored contributions should immediately ban Anthropic employees on principle.)

#AI #Anthropic #ClaudeCode #subterfuge

@aral Honestly I don't actually hate this.

It's a tool. The _user_ is responsible for what they're submitting. It's putting code generated by them in their name. I think this is actually good.

@aredridel @aral I really can’t agree with this, because it’s a question of accurate labeling not of “responsibility” or “authorship”. co-authored-by is perhaps the wrong method for labeling such things, but consider raw milk. ultimately, it is indeed the producer’s responsibility to ensure their product is free of contamination. but disclosure of its method of production is explicitly the kind of requirement that allows consumers of said product to make safe choices

@glyph Yeah, I disagree. Code isn't ingredients and it's not “contamination" any more than you should label “I used search and replace on this”

What you want to know is whether it was well engineered or not.

And in fact, this is almost entirely orthogonal to "safety”. This is an engineering product. The safety comes from processes and whether or not _anyone checked the work done was right_, not the inputs.

@aredridel @glyph It is ingredients. It's not search-and-replace. It's literally incorporating parts of an unknown set of almost-surely-copyrighted works, without license or attribution, into the submission the person is misrepresenting as their own.

@aredridel @glyph What "AI coding tools" *should* be putting in commit messages is:

Co-Authored-By: An unknown and unknowable set of people who did not consent to their work being used this way and to which there is no license for inclusion.

@dalias Morally arguable but not actually true under the copyright regime that exists.

At what point does learning from others constitute their authorship?

@aredridel @dalias
> but not actually true under the copyright regime that exists

Under the copyright regime that exists in the US specifically, the generated code is at best not copyrightable at all (and therefore cannot be included into any projects with licenses relying on copyright).
Of course maintainers of said projects might decide to yolo it, but also they might decide to not; and in this case, the intentional deception by antropic becomes even more significant fraud.

@IngaLovinde @dalias That's the thing. If it matters _tell the people submitting PRs_. The tool is just a tool (a capricious annoying frustrating tool) but it's the _people_ doing this that need to be accountable.

@aredridel @dalias but in this specific case, the people submitting PRs are the one that created the tool.

We're talking specifically about a tool developed by Anthropic, which has a separate mode for Anthropic employees, which purposefully is "operating undercover" and creating MRs that mislead OSS maintainers about provenance of these MRs.

@IngaLovinde Are there any examples of misleading out there?

Or is it _just not mentioning it_?

@aredridel when a developer submits code, the default assumption is that they wrote it (and not, say, plagiarized it from somewhere without actually understanding it).

And on the original screenshot, it's clear that not only do they not mention the actual provenance themselves, but that they go extra mile to ensure that it doesn't leak in any other way.
"You are operating UNDERCOVER", "do not blow your cover", "NEVER include [...] any [...] attribution" communicates intent very clearly and is a very clear admission of guilt, regardless of whether these magic instructions to LLM actually work or not.

@IngaLovinde There is no magic. Seriously. Models are just ... kinda bad, actually.
@aredridel "magic" as in those who write these instructions follow the magical thinking that there is something to give instructions to, instead of just autocomplete engine to which instructions and data are passed in a single combined (not separated) blob of text.
@IngaLovinde What if you took that seriously? What would getting the tool to behave look like?