Presumably quietly added default-on because everyone had turned attribution off.
Again, if you challenge it “It came from my harness instructions” and obviously telling it not to in memory is about as successful as… any other instruction in memory, about 60% of the time.
Indeed, the disclaiming of it being human-coded isn't the problem with their commit messages, them using it as a growth hack mechanism is. BTW to say it's attributed to Claude, I don't give that much importance, but I think it's useful to other coders to know what model was used. A simple assisted by AI would mostly handle the plaigiarism problem, because Claude's training data didn't come from Claude.
Interesting. Can you elaborate on why you feel strongly about this? It's easily removable--I don't think your characterization that it "forces" attribution is correct, it just defaults it.
It's deliberately hostile, in the way that Facebook is to its userbase. I guess Claude doesn't have nearly the grip on their users that Facebook does. Facebook can make it hard to communicate with (via WhatsApp) or stay connected with some of your friends or relatives, while Claude can just make you use the second-best model for cheaper (if Fable is the best).
On one hand I guess it is fine to automatically tag that the commit was AI-generated. On the other hand, this will happen even if you audit every line and add your own changes too, which means the attribution is misleading.
It’s not meant for saying “this change was done by Claude” it’s meant to connect commits back to the session. Makes it way easier to jump back into a follow up change between sessions as the agent can reload parts of the context.
Anyone thinking this is about tagging AI generated changes and not just making the experience in Claude better is missing the point of the feature.
I get that. However, given that sessions are local and personal why tag it into the public source tree when it can keep a catalogue within the local session metadata with the exact branch, tags and refs. Sounds like easier less intrusive thing to do.
This is probably a controversial take, but I love this. Back in the early days of claude code I had to write a script (well, claude wrote it) to pull out the session id and append it to every commit. It's a lifesaver when you are trying to debug an old commit to pull up the chat session that actually wrote it.
I think its the beginning of a larger trend where Anthropic makes its infeasible to use Claude without Claude getting credit. Not for ethical reasons, but business reasons. Fingerprinting supports this as well.
Im speculating. And these are little things that are reasonable by itself. They are ethical. But I dont think Anthropic wants Claude to ultimately be a tool that produces some output that just gets integrated into some human’s work product. IE they dont care much about authors utilizing Claude for writing their papers or books. They do care about Claude becoming the most prolific published author by orders of magnitude. And not being “plagiarized.”
This annoyed me to the point that I created a python script that could search opencode's database and then a skill that uses the script to find the session I was thinking of. It's nice to be able to say "I think 4 days ago I had an issue with a dropdown in Qt6, find that session." Saves a lot of time and tokens.
I've been using the "experimental teams" in claude code forever and its great for this. I never start a claude code session manually, I just ask the main agent to open a new tmux window for me. The lead agent knows all the agents I've ever interacted with and built its own system to keep track of things between compactions.
I don't disagree with you on this. However, it is clear to me that a lot of copyfraud is happening in this industry right now. Just look at all the github repos with a) a licnese.txt and b) a claude.md in the repo.
> AI does not enjoy copyright protection. Pretending you created something written by AI is copyfraud.
Which court has made a ruling on this? The only decision I'm aware of was that some Gen-AI artwork couldn't be copyrightable if it was made without substantial input, direction, and scrutiny.
You did not write it, the AI did. Either the work cannot be copyright, or the AI owner (Anthropic) owns the code. Not you. In no case can you own code you didn't write. You guys keep arguing that it enjoys copyright protection without realizing this part. There is no "work-for-hire" default in the law for AI even if it did enjoy copyright. You don't own it. And I am pointing out neither should Anthropic.
Yes, that's exactly what they were talking about. It says right in that page that sufficient changes can allow them to copyright the work, and it also says that their decision can be challenged.
And once again, you guys make this claim without reading the law.
>several provisions of the Copyright Act imply that it uses the word "author" only to refer to human beings, including provisions (1) vesting copyright ownership "initially in the author"; (2) limiting copyright duration to 70 years after "the author's death"; (3) providing for inheritance of certain rights by the author's "widow or widower" or "surviving children or grandchildren"; (4) requiring a signature to transfer copyright ownership; (5) extending protection to unpublished works regardless of the author's "nationality or domicile"; and (6) defining a "joint work" based on the authors' "intention" to merge their contributions in a certain way.
The law clearly, definitively, is talking about human authorship and nothing else. You are basing this concept that you can copyright AI written code on a law change that has not happened. It is very very unlikely that a law change can/will ever happen, because copyright law in particular is enshrined in international treaties like the 140 year old Berne Convention. This is a major reason why I was very much opposed to the TPP. Every new international copyright treaty is just more cement, making it completely unchangable. If you want to change this law, it will require cooperation from most of the countries in the world to do it.
To be clear, the Copyright Office is providing guidance and a particular (respected) interpretation of the law. Their opinions do influence courts, but they do not constitute law themselves.
That's an opinion from the US copyright office, not a law or a decision made in court. I think it remains to be seen to what extent using generative AI affects the practical application of copyright in larger projects: the office holds that the human-contributed parts still qualify for copyright, and I think there are a variety of possible interpretations and arguments that could effectively allow a largely AI-generated codebase to still be protected by copyright, even if technically big sections of it are not (in a similar manner as e.g. maps are protected, even if the underlying facts are not).
(I would also argue whether it matters in practice the other way: if something was AI generated, it is in principle cheap for someone else to generate it separately anyway: if you're wanting to copy AI generated code then there's probably some part of the ideas in it that are valuable beyond what the AI can output on its own)
(Also, this uncertainty does still mean that it's probably prudent to record which parts of your software are generated and which are not: it's a conceivable outcome that some company winds up in court and manages to argue that the human-generated parts are still covered under copyright, but are unable to point to which parts those are and therefore lose it entirely)
There is of course, transformative use, and the slew of software packages we used to depend on without acknowledging the original maintainers on every commit.
Interesting. According to the definition in that Wikipedia link, "copyfraud" is claiming copyright on public domain content.
Does this mean a company can take code from an open source project that used AI, put it into their closed source code, potentially modify it, all without attribution?
Yes, that's exactly what it means. AI works are public domain by default. Copyright law requires the work is created with human creativity. The essential piece is to clearly define what parts are AI generated vs human written. This is an obligation placed on you by the courts, and if you don't do it, it becomes very very hard to argue that you wrote that code.
Very much agree, and per https://www.jvt.me/posts/2026/02/25/llm-attribute/ there are a number of other benefits to attributing correctly - you know what parts of the code may be "tainted" by AI-generated code, and allow yourself to clarify to the reader what parts are AI and what are not
Just because it's not in the title and most people won't be scrolling all the way down: its only enabled for web and Remote Control sessions, per a maintainer.
Thing is, if you enable remote control for one session, it becomes globally enabled for all (which I personally prefer as I want to access all my sessions from my phone).
This isn’t quite true. There’s a daemon you can launch with `claude rc` that will let you get at all sessions, but if you just `/rc` in one session only that session becomes available.
Hard boundaries there simply don't exist for most workflows, and I suspect if they did, it'd be at the expense of things ~nobody would want to give up.
I don't see any issue with this at all. I noticed it the other day and thought it was convenient. The same way I let the agent tag the PRs/commits with its name. I want to know what was used, in fact I wish it would identify the model used.
I'm not embarrassed by my LLM usage and I want to provide a full audit trail whenever possible to aid myself in the future.
PS: Claude archives old conversations on your computer after 30days. I've started archiving mine to the side as well for potential future use.
I use many tools to develop software and if my IDE would silently start adding "This commit was created with IntelliJ IDEA Ultimate" I'd find it intrusive and obnoxious, too.
There are hundreds of them for just about every IDE you can think of.
I can't tell if this is a serious question or not, but metaprogramming/generators are decades old concepts that have been common features of basically every IDE since the 90s.
That’s not what we’re talking about, though. That’s mechanical transformation, and isn’t the same thing as code that’s generated on demand from scratch, based on plain-language intent.
Surely you know the difference, right? I assume you’ve used LLMs to generate code by now?
That’s a great question, and is why we have these debates, and have courts to adjudicate disputes. I don’t have all the answers, but the gap between these different behaviors seems pretty wide to me.
Autocomplete doesn’t really work until you start typing. The fact that my phone recognizes that I’m starting to type a word and the IDE offers the most statistically likely choice for me to accept doesn’t make those words its own. Same with autocomplete on a phone or in a word processor when entering sentences.
FWIW the Copyright Office, for its part, recognizes that AI generated code is mechanically generated and its opinion is that it’s not copyrightable.
But that’s not really what we’re talking about here. We’re talking about attribution and when it becomes important. To me the metaprogramming/codegen case is different because of the nature of the mechanism, particularly if you wrote the inputs that the IDE transformed on your behalf.
Nothing at all, I just think its a rather arbitrary distinction, especially when you consider heuristic methods like autocomplete that have been around for ages.
If IDEA recorded my manual edits as events and attached a transcript to my commits I don't think I'd mind. If they just tagged it to put their name in that's different.
Knowing which model created the code has more "weight" to it than the editor IMHO which is why I think this is different. Adding the session link is a nice touch.
In my last project I wrote most stuff by hand but also used various Anthropic models, Gemini something and GLM 5.2. By line count the #1 was probably the IDE autocomplete though mostly for boring field initializations and the likes. The "hardest" part was some reverse engineering by GLM that Claude refused but that resultend in zero lines directly. So, how to attribute this?
Allowing tools to insert themselves into the git history only makes sense if you are purely vibecoding with a single model and don't even bother to check and clean it up anymore. Is this truly the default state of software development already? How the times have changed.
I suspect that in the future, lawyers are going to start counseling businesses to implement line-by-line provenance of their source code so they’re prepared for future copyright infringement disputes. Business leaders may also start wanting metrics to understand the impact of AI on development in a more detailed way.
Deletes off your computer. I'm don't know what else they might be doing with it. They keep slimmed down summaries (on your comptuer) I believe but not the full context.
Sure it does. It shapes your impression based on your perception of Anthropic.
"Made in China" on items for sale in China is a positive indicator. "Made in China" on items for sale in the U.S. is a negative one.
The line between "attribution" and "marketing" seems to depend on your impression of the entity involved.
I would very deliberately avoid a mystery novel or a prayer book if it said "Co-authored by Claude" because I don't want to see a world in which those things are generated by entities other than humans.
I don't have that same objection when it comes to computer code.
But the important point is that your impression of either one depends on your prior position on Claude. What do you assume when you see that attribution?
I may be missing something, but this is exactly what I want as a default. I want the session links there. I see PRs from my coworkers with session links.
I still get to control whether other people can see the session, but I don’t lose it.
I don’t get the “unprofessional” argument. This is attribution. Attribution is professional. If you don’t want it, you turn it off or rewrite the commit messages. If you are having Claude write the commit messages FOR YOU and you are NOT READING THEM then that’s what’s unprofessional. I am honestly kind of shocked and disappointed by how upset people are by this.
Same. Over relied on and far less clear than alternatives 99% of the time. Claude is a shitty English writer that is only tolerated for it’s coding ability.
If you know “origin” or “source” and those words suffice, using a word that means the same thing but you don’t know is strictly worse for communication.
So if Claude is writing a novel, maybe provenance is the best word to use at times. If its a codebase README or variable name, its usually not.
How would it know for certain it was used for a given commit? What if there was no code? What if the approach was different, but some lines were the same?
I think some folks think that using an LLM is a shameful act and this is somehow shaming it and others believe that it ties back to the conversation. These conversations don't have any guarantee of being accessible over the long haul. If there was value in the conversation, the conversation should be somehow captured as well, not just some URLs.
I think it’s foreseeable that if you use the LLM to commit work you’ve written, it might cause problems with attribution.
In general I assume that attribution to AI is approximate. People copy-paste things out of chats and those don’t get attributed to the AI. And on the flip side, I’ve had AI write a commit, and then I’ve reverted it and written something different by hand (and it got tagged with an LLM session).
The AI attribution is approximate and informative. The commit message and authorship are the more important parts.
You may be concerned that people will think your commits are LLM-generated. I’m sorry that you have to work in that environment, but I don’t work in an environment like that and I don’t share your concerns.
It is because many "developers" want to pretend that they have read the code and have understood it so they can claim it as their own.
Attribution is indeed professional. If you use an AI to write the code for you and have no idea why you accepted the decisions it made nor can you explain them to another human, that would be clear evidence of acute skill atrophy.
Which is actually why I DON'T like the session amended. Ultimately it is an ad placed into the Git log, and noise at that. Regardless of if it exists or not, the professional responsibility for what is contained in that PR/commit falls to the feet of the developer contributing it.
Microsoft previously did this with Copilot, which was correctly met with a very negative response. I don't see why an ad by Anthropic is better than an ad from Microsoft.
I'm not sure i see it as an ad. "Sent from my iPhone" is an ad because the iPhone is not a meaningful part of sending the email. Claude is a meaningful part of the commit though if you're using it, so to me it's more like clarity or transparency than an advertisement.
The way I see it, the conversation transcript is the important part. The specific link to claude.ai nor the model itself is important to me. Otherwise we'll all just be linking out to 10 different AI model providers websites to see history. I'd rather it be some open solution.
Models change so much that I don't really see why anybody cares what model was used to generate the code after the fact. It changes every few months and they're non-deterministic so its not like you'll ever "recreate" the same conversation yourself anyways.
You don't see how a link to "https://claude.ai/.." in the Git log is an ad for Cluade/Anthropic? It feels exactly like "Sent from an iPhone" to me, and has exactly the same value to people reviewing the Git log later (i.e. none).
Keep in mind that if you run across someone else's spam in the Git logs:
- You need a Claude account.
- You need permission to view the session.
The only people who can just follow that link and look at how Claude was used, is Anthropic themselves. Therefore, they can also use it as an additional mechanism to tie sessions back to other IDs/identities. For everyone else this is "Sent from an iPhone" but longer.
Good counterpoint. We link to GitHub from JIRA, and the reverse. Linking to the Claude session that generated the code seems reasonable...it's a related artifact.
One thing I'm not sure about: what is the utility of linking to the session? What are folks expected to do with that data?
But presumably everyone in your company/team is using Jira, so it's not an "ad" because it's a product already used internally. Claude is appending these links to all commits by default, whether or not others on the team use Claude. Those are very different things.
I agree. But I think I would also like the OS to put a fingerprint (I.e committed on macOSX in /usr/marc/… while he was watching porn on xxx). This way we can get the full context by default and better understand the PRs.
There has been more than I project where I literally didn’t even look at the code.
I prompted what amounts to verbose “I want X” and then did QA. I’m perfectly happy with an LLM being credited with that code and there being no copyright existing for that code.
For some people that is their life’s work and they want to clutch pearls. Their sole contribution was a half baked idea and they shipped QA out to their “users” but they want to be credited with any rights.
There is definitely a continuum in LLM usage for code, do I agree with an AI blindly stamping every commit, not really.
Do I see LLM generated code as equivalent to me digging a hole with a shovel, it depends. Sometimes there was very little shovelling, other times there was no me involved and you may as well credit the entire hole to the shovel.
Where this will come in is when it comes to copyright and licensing.
If your entire product is LLM generated you sure as hell have no right to place any license on there other than potentially a MIT equivalent license, even that is dubious though but from an organisational standpoint MIT probably will be more widely accepted than saying it is uncopyrightable.
My argument being I would rather know that you didn’t even look at the code, which is what this will achieve, whether I agree with it or not at the very least it will make it easier to sift through the garbage.
This is a problem with copyright in general. There's no longer any requirement to provide information about copyright status, so there's no way for the public to know whether something is copyrighted (no doubt the uncertainty is intentional as an additional way to undermine the public domain). This is just as true for expired copyrights, or material placed in the public domain intentionally.
The solution isn't to add notices to non-copyrighted things; it's to require notice for copyrighted things, including date.
Individually, of course, one should simply assume things are not copyrighted if you have no way to know, and do whatever you want. If the author can't be bothered to tell you, you have no moral responsibility to care.
Agree, that it is an ad. Also, unless the full session (in a resume-able format, along all session artifact such as intermediate research/docs used to produce the final output) is also included in the commit, the session id is useless.
I presume this is Anthropic trying to their "usage" stats before their IPO.
> Anyone who did and could do so turned it off immediately
I know I’m not alone as someone who’s bothered by the postscript, but too lazy to do anything but delete it every time. There’s even an entire (well part of) song about it: https://www.youtube.com/watch?v=EbdeVhPAbms
Out of curiosity, do these Claude commit messages fall into the same category of "it's annoying but not worth the effort to turn it off"? If yes/no, why?
Most people's identities and self worth are tied up in the material things they buy rather than actual self actualization and personal axxomplishments.
Even as a lifelong Apple user and longtime iPhone user, that sig irritated the shit out of me and was instantly disabled whenever I set up a new device.
Also, and this may come as a shock to you and a number of other HN users: I never considered it a "point of pride." I switched because Android was a privacy dumpster fire comparatively and battery life was far better.
I also can't remember a discussion in person with folks where someone seemed "proud" to use an iPhone. If anything, the Android crowd loves to sneer at iPhone users and look down on them as idiots who need a "simpleton" phone.
I'm no simpleton. I ran custom roms and so on. Had F-droid installed, and so on. I do miss the customization, but I also look back and realize I wasted a massive amount of time on installing roms, backups, and the customizations themselves. Probably weeks of my life if not more. My iPhone? I don't. It's a phone. That runs apps. Do I wish I could install whatever I want, particularly given how secure apple's sandboxing is, and thus in theory how safe it should be? sure. but at the end of the day I want to live my life.
Now compare that to why people don’t want Claude in their commit messages or PR descriptions.
Clearly there’s no pride in using agentic coding (if anything, maybe it’s the opposite of pride..). I don’t think most developers want to publicize their use of agentic. But I could be wrong.
I'm sorry if this is a naive question, but why can't you just edit the commit message however you like?
Or, for preference, write the whole commit message yourself? It confuses me a great deal to see projects where someone put in a lot of effort to write a useful and detailed prompt but absolutely couldn't be bothered to write a few sentences for the commit.
I'm OK with the attribution, but I just didn't like a session URL appearing on a public repo all of a sudden. I was left wondering "did I just leak my private session?"
I don't understand why it isn't opt-in. Or at least a heads-up somewhere.
At this point it's believable to me that Anthropic might not even be aware of what features get added in a given release. It's hard to tell the difference between "they actively are against documenting all of the defaults they keep changing" and "they genuinely don't even pay enough attention to notice when their vibe-coded changes have changed a default". Functionally they're the same, and both would stem from similar (lack of) values, but I think it does kind of matter because it's essentially the difference between explicitly crafting an experience for users versus defining same things they want and letting the vibes end up driving it towards a bunch of user-facing emergent properties that no one has considered.
"Of course they were intentional in adding in an ad to everyone's git log" honestly night be the less cynical take, because the alternative is assuming that they actually look at git logs ever rather than only having Claude deal with it.
I agree that attribution is professional. What I would worry about is people using the link to supply the reasoning behind the change without putting it into the commit message. Then you have the problem of needing to load the session to understand the change, when one would ideally be able to get that context from source control alone.
Realistically, what do you actually get from viewing people's sessions? I honestly don't really understand why people care.
The specific model used can't be important because theres a new trending one every couple weeks nowadays. The conversation could be wildly out there and have 10+ different iterations of the same thing in it that led to the final product, etc.
It's not like before AI we were asking people to explain every single iteration they went through in their commit body, or to see their entire internal dialogue.
I don't really understand people's hype around needing to see the conversation they had with their AI. As long as the code itself is self-documented and final decisions are relatively well-documented future agents and humans will pick up on it much faster than reading the entire transcripts anyways.
That's not even bringing into the fact that there are people who use multiple models, multiple sessions, multiple harnesses across the same commits/changesets. How do you reconcile those alongside people who could have made human changes in the end?
People don’t want their incompetence displayed. The session is probably a series of “continue” prompts with basic understanding demonstrated in the initial ask.
There’s always been a school of thought that is in this direction. In the pre AI world people discussed whether to squash commits or to not and I was on the squash side because I think that the development artifact should be optimized for reading and just as one does not read a novel in all of its pre-edited forms to read it, one should not do so for code. The cost to grok using that method is too high.
However with LLMs you can have them analyze prior transcripts to identify bug sources and so on. I could see it being used. But all theorycrafting. And perhaps motivated reasoning. I’ve always committed early and often and used bisect to find bugs. That places me right away in the squash commits camp because of the method I use to write code.
Sure, but it does spook some people like me where I frequently mention context in session like: "it would be better to fix this on the backend, but that is a separate team that moves VERY slowly", etc. And I don't want that accidentally getting broadcast.
Am I misunderstanding this change? This makes it sound like Claude is attaching the entire session content when I thought it was only a link that is exclusively readable by the author, unless deliberately shared?
I use and love openspec and I'm against this session attribution by default setting.
But I do see the value in seeing the conversation that lead to the spec. I make sure that all product decisions go through me prior to the agent writing the spec and the questions I ask and decisions I make could definitely help understand retroactively why something is the way it is.
I guess with the default openspec schema you wouldn't have that but you could customize it or create your own in which the reasoning is encoded fully.
It feels like an absolute failure of project management if your tooling needs to attach a session identifier in a git commit message for it to understand what’s going on.
Wikis, changelogs, decision records, issue trackers and more are available to provide greater context for you, your team and the agents you deploy.
I think a lot of people interpret it as trying to foist additional burden on reviewers. As in "here's my PR, I would like to take credit for this idea, it's now on you to review. If you find a problem with it, I expect you to call out exactly what my incorrect assumptions were, which you are able to do because they're all buried somewhere in this Claude session. Let me know what they are and I'll paste them into a new session and submit again."
hard disagree. I'm not gonna read the session log, and I don't care for it at all.
as for the commit message: if it's the usual verbose Claude style, I'm also not going to read it. to be honest, probably if it's not verbose, I'm still not reading it.
I'll ask my review agent anyway to summarize your code. My review agent will read your commit message.
More like an ad for trillion dollar corporations. Not in the business of giving those out for free.
Attribution also helps people who want to judge others for using AI. Not even slightly interested in enabling any form of prejudice and stigma against myself. Even the markdown files that agents use don't go into my master branches anymore.
I think there's a distinction between attribution and linking to something nobody else can necessarily access. Placing a path to my local build is something I'd avoid because it's irrelevant to everyone else. I think the same applies here.
I really like working using Claude Code, but Anthropic has a really bad tendency to push out new "features" like this as default-on, through auto-update. That, and their models trying to do everything through bash (including editing files) is enough that I'm seriously looking in to switching harness to pi.
I like claude code, I use it quite a bit for things, and I don't mind the attribution (I do not plan to deceive people of me using AI or not for a change) and I think a link back to the session is valueable after the fact. At least for me, the session contains a lot of discussion, back and forth, changes from me and more. (Also, if the feature is not on by default, it probably might not exist.)
However, I think claude code needs better change management. It changes quite frequent and I think changes like these should be communicated better in software. (Like a card game may show card changes in game when a patch happened.) It may impact how I do things when creating the commit messages or PRs.
It’s really useful for helping agents navigate history and maintain continuity between sessions. So wouldn’t assume it’s for marketing, it has a lot of utility.
> However, I think claude code needs better change management.
Ant is a slop factory and proud about it, you only have to listen to their people talk. Their products are buggy and inconsistent in features, so I don't use them.
For a good chunk of my AI coding work, I make my own commits. I add Assisited-by: to them. I glance at the AI commit messages, and though I usually come up with my own messages sometimes I paraphrase. This would just make it a bit more annoying to review the AI commit messages, though I could hide it.
Attribution should be opt-in, but they already support it. Via CLAUDE.md where you can specify how exactly AI contribution should be documented. Relying on whatever convention your vendor will establish isn‘t a good idea. Vendors are replaced, project conventions stay, so it‘s better to state your expectations in writing, instead of assuming that someone guesses them right and maintains conformance forever.
Wouldn't think I'd be cheering Antrophic decision, but this is excellent.
They probably were thinking about how that serves them as an ad, not about transparency, but still.
I say they should go one step further and somehow make it harder/inconvenient to turn it off (big tech is good at this already, so...); or, maybe, hide that option behind extra feature under premium subscription or something.
P.S. The comments are pure gold. They don't like they can't fake authorship and have the audacity to be indignant!
As a Claude user this is just a benefit to me. Means I can grab the session and resume if I ever see a commit I want to jump back into, and Claude can read these sessions itself whenever I reference the commit, which helps a bunch.
It might come with advertising benefits for them but expect it’s mostly just because it helps their tools work and that benefits everyone.
Kind of crazy how a simple QOL lift (stamping a commit to an agent session, or persisting a session logs on cloud) is considered either innovation or controvertial
I don't think git-notes has the same history / change tracking. Use a .sessions dir or similar. I'm working towards adding them to my knowledge base so as not to pollute my git repo
A lot of people say this is a reasonable feature, and I agree (I would strongly consider having it on), but that's not the defense they think it is.
- Having the feature available seems good.
- Having the feature default on is debatable, but not outside the realm of possibility.
- Having the feature default on, without any kind of release notes that say that it happens and link to the option to disable it is clownshoes "bring back the ghost of Steve Jobs to yell at the product team" type behavior.
Eh, I don't want the tools I use to stamp their names on everything. It's also not uncommon for me to switch between GPT and Claude or different models in the harness if one of them isn't doing well. GPT-5.6 Terra has been doing a significantly better job at writing concise PR bodies and commit messages than Claude's usual multi paragraph word soup.
I don't need "Created by Claude Code 1.2.3, Opus 4.8 inside tmux inside ghostty on macOS ## on Mac Book Pro 2019 by git 123 in /Users/nijave/repo"
If you want session context, commit the session or prompt or add a git note. I think opaque URIs are the wrong approach unless they're to an issue tracker with more details. Proprietary URIs are not easily usable and interoperable with other tools. Commited information should still be valid and useful in 10 years.
I'm also not sure session is the right level of abstraction. I recently setup Claude Code with subscription delegation to opencode harness with z.ai coding plans and opencode go coding plan and it's been working fairly but there is no singular "session"
The major problem I see with these are linkrot. Do any of us truly believe these links will work 30 years from now?
Post IPO, many years down the line, a leadership that is eager to cut costs will look at their storage usage and expire 7 year old non-training sessions. Quickest thing to go. I have zero faith in any successful provider getting this right.
Git is supposed to be the durable storage medium, self containing and weathering the passage of time. Now we're littering the repos with a bunch of URLs that are only helpful in the short term.
I can't imagine a project so wildly successful and stable that the session URL in a commit history is relevant after 5 years, let alone 30. Git is only 21 years old. I'm not deciding team policies with a multi-decade view.
That said, I wouldn't agree with using the session URL as the entire commit message, or even with letting the session URL make up for other missing details. But to me it's an at-worst neutral change to add it to an otherwise acceptable commit message.
While working on Firefox, I do sometimes look back at Bugzilla (the project's issue tracker) activity from 26 years ago to try to figure out why some code is the way it is. However it feels hard to believe that the role of LLMs in another 20 years will be close enough to the way it is now for a session history like this to be very useful.
30 years ago is only 1996. I very much do debug code from that time and am glad for anything useful written in the commit message. URLs are useful, because either the website still exists or it is maybe in the wayback machine.
I can't believe how many people are in favor of it. Like it's so positive in the comments I'd think it's astroturfing. The code is the result of my work however it got done, and if I don't document or explain it well enough then that's a separate issue. Did you want to see my slack messages to my mentor too? Or how about all the stack overflows I read? Maybe I should voice record all the times I swore about Gary the junior dev not documenting something?
It's plenty obvious when the code is AI written it's probably just safe to assume 95% of things have been at least AI assisted. Just look at the drop in SO volume, we're not writing less code we're writing more (rip GitHub uptime).
I disagree with this. The code alone is not the artifact. How you came to the decision to write the code in a certain way is certainly an important artifact of the development process. Otherwise how would your coworkers know whether or not a particular piece of logic is still relevant?
Ok, but folks aren't even writing their own code, you think they'll go back and comment generated code? They often don't even look at the implementation that closely.
Also, while commenting is good, commit messages can stick around longer.
> How you came to the decision to write the code in a certain way is certainly an important artifact of the development process. Otherwise how would your coworkers know whether or not a particular piece of logic is still relevant
Not really. Why is always more important than how. Even what is more important. Relevancy of a particular block of code is in the specs and some technical aspecs of computing/library/platform, not in the thought process of the developer.
I agree and disagree. It all comes down to how much a human was involved with the code.
If the code is artisan to any degree (authored, edited, reviewed, etc.), it's a bit ridiculous.
It does makes sense to me if the human driver was hands-off the code because the conversation becomes the artifact.
I'm older, and have very mixed feelings about the latter case but it seems inevitable that engineers will be working at a higher level where conversational governance becomes important. We'll stop this charade of hiding AI contributions behind human identities. (Note: I don't think conversation IDs are what we need but it's a step down this path.)
On the potential astroturfing, check the account age. I double-check in forums with decade-old accounts before buying stuff right now. Workable line of defense against pollution.
A list of relevant SO posts is very much useful and something I occasionally include in a comment or commit message as a reference for some weird looking code.
Sure it is but there's nothing so helpful here. The prompt is usually here's the ticket and then telling it not to use so many silly comments and calling so and so an asshole for doing something a stupid way.
we've started using parallel repos in diff ways for this reason depending on repo purpose, scope etc.
full private repo including session transcripts, etc. agent attribution etc, with public repo that only shows selected subset without sessions ids, some or all agents, etc.
alternatively, we sometimes also do a separate chat only repo or server etc if cross-team agent chat access worth it and don't bother with private / public just disable agents in code repo
have also done some other variants etc. bit of pain to init config, does help with reducing the agent clutter, improve chat security boundaries in case any keys or sensitive env were in any chats if PII / sensitive data checker miss etc.
The open models I use everyday also occasionally put the co-signed by claude notices in their commits, because they have been trained on commit logs with these notices present.
We shouldn't polute commit messages with these kind of extra's, they will only lead to more noise. Once all the models append random urls to commit messages, who's to trust these?
If you need attribution I bet that you can find a neater way to tie commit shas to claude uuids.
I consider my prompts and prompting style to be trade secrets. I've developed a very efficient and productive workflow for myself over the years without tutorials, without books, etc.
Anthropic is making very strange and very opinionated decisions far too often for my liking. It's really making me second guess my continued use of Claude Code.
Yes? If I've developed a prompting style over the past four years that produces efficient and secure code bases with novel features, I consistently out-perform my colleagues using the same tools, and it is how I make money, then I don't see how it is not a trade secret.
Talking to customers is the most important thing, not sure prompting really matters at all, LLMs lack true novel creativity and cannot prioritize product features based on direct customer value.
Have you ever seen really good technical writing versus really shitty technical writing? Which do you prefer? Why? The LLM is reading instructions. The quality and design of the instructions you give to it matters deeply. If you don't think so, I don't particularly care, but you can't really approach a LLM like an easy button.
It's like a graphing calculator. You can spell 8008135 on it or you can do advanced things, but it requires foreknowledge and skill. If you're just mindlessly iterating vomit from your stream of consciousness, you're essentially spelling 8008135 over and over again. That feels novel now. It's not going to remain novel and you will stagnate as things progress.
Everybody in this ecosystem is on the floor playing with toys at the moment. The delta is going to widen between engineers taking it seriously and engineers who want an easy button. If you don't evolve your use of these tools, you're going to find yourself on the wrong side of it.
Do you imagine China may one day claim they own all the rights to all the objects labeled with “Made in China” on them? Could Anthropic possibly do this?
I would say the answer is "obviously not," to the degree that it's hard totake your question in good faith.
The China-made goods have been sold. Ownership transfers at sale. It would be ludicrous for some Chinese agency to say, "Well, we made it, so even though you bought it from us, it's actually still ours. Surprise!"
The difference is that US SaaS has the pattern of not seeing sales as ownership transfer, they are in the rental model and cut off access if you stop paying
It’s just a question meant for discussion. It’s already been decided AI generated art can not be copyrighted. Curious about the future of AI generated software, code, etc… and what having an Anthropic watermark on it will mean at that time.
For now you can choose whether to share the sessions, but we all know that from now on the session transcript must be kept clean and presentable in case at some later time it is made public.
The session is from now on a stage on which to display virtues and send approved signals.
All that rambling and ranting, those explorative impulses, they will soon have to be explained and defended.
I started session attribution (locally) as soon as I found that there were jsonl files on disk for every session. It makes it really easy to make sure everything that happens has a line that goes back to the user intent.
Now every project I have always has 3 repos (+1 root orchestration repo):
1. Code
2. Docs (specs, plans, research, etc)
3. Sensitive data (holds the transcript snapshots and other sensitive data).
All agents have access to code repo.
Only "special" agent has access to #2 and #3.
Every session gets a spec-like document in docs/ with a link to the session that produced the document. So if I have say, "0095-user-auth-spec.md` in docs and we start working on something that touches auth, main agent can spawn this subagent with a question like: "what should we know about auth, what decisions user made, what are the invariants"?. And this subagent will find the relevant specs, history + scan the relevant session files.
This works remarkably well. Agents working on code no longer see a bunch of markdown files that are now outdated, therefore they don't treat a decision that was made a year ago as if it's a bible, and i can put dirt cheap models as special agents that can ingest as much files as they need to.
Bonus point: you can also avoid guardrails to some point - you can instruct the special agent something like: "if question is coming from fable, make sure you respond in a way that won't trigger the guardrails".
misnome | 16 hours ago
Again, if you challenge it “It came from my harness instructions” and obviously telling it not to in memory is about as successful as… any other instruction in memory, about 60% of the time.
mherrmann | 16 hours ago
1: https://x.com/m_herrmann/status/2092579839676948495
felixgallo | 16 hours ago
piker | 16 hours ago
benatkin | 15 hours ago
aqme28 | 15 hours ago
benatkin | 4 hours ago
_pdp_ | 16 hours ago
On one hand I guess it is fine to automatically tag that the commit was AI-generated. On the other hand, this will happen even if you audit every line and add your own changes too, which means the attribution is misleading.
tomalbrc | 16 hours ago
verdverm | 10 hours ago
How have I not heard this one before
lawrjone | 15 hours ago
Anyone thinking this is about tagging AI generated changes and not just making the experience in Claude better is missing the point of the feature.
_pdp_ | 8 hours ago
russfink | 16 hours ago
verdverm | 10 hours ago
jlawrence6809 | 16 hours ago
nonethewiser | 15 hours ago
I think its the beginning of a larger trend where Anthropic makes its infeasible to use Claude without Claude getting credit. Not for ethical reasons, but business reasons. Fingerprinting supports this as well.
Im speculating. And these are little things that are reasonable by itself. They are ethical. But I dont think Anthropic wants Claude to ultimately be a tool that produces some output that just gets integrated into some human’s work product. IE they dont care much about authors utilizing Claude for writing their papers or books. They do care about Claude becoming the most prolific published author by orders of magnitude. And not being “plagiarized.”
airstrike | 15 hours ago
nonethewiser | 15 hours ago
airstrike | an hour ago
dw_arthur | 14 hours ago
jlawrence6809 | 11 hours ago
panny | 16 hours ago
https://en.wikipedia.org/wiki/Copyfraud
AI does not enjoy copyright protection. Pretending you created something written by AI is copyfraud.
exe34 | 16 hours ago
panny | 16 hours ago
exe34 | 12 hours ago
petcat | 16 hours ago
Which court has made a ruling on this? The only decision I'm aware of was that some Gen-AI artwork couldn't be copyrightable if it was made without substantial input, direction, and scrutiny.
panny | 16 hours ago
https://www.congress.gov/crs-product/LSB10922
You did not write it, the AI did. Either the work cannot be copyright, or the AI owner (Anthropic) owns the code. Not you. In no case can you own code you didn't write. You guys keep arguing that it enjoys copyright protection without realizing this part. There is no "work-for-hire" default in the law for AI even if it did enjoy copyright. You don't own it. And I am pointing out neither should Anthropic.
wccrawford | 15 hours ago
panny | 15 hours ago
>several provisions of the Copyright Act imply that it uses the word "author" only to refer to human beings, including provisions (1) vesting copyright ownership "initially in the author"; (2) limiting copyright duration to 70 years after "the author's death"; (3) providing for inheritance of certain rights by the author's "widow or widower" or "surviving children or grandchildren"; (4) requiring a signature to transfer copyright ownership; (5) extending protection to unpublished works regardless of the author's "nationality or domicile"; and (6) defining a "joint work" based on the authors' "intention" to merge their contributions in a certain way.
The law clearly, definitively, is talking about human authorship and nothing else. You are basing this concept that you can copyright AI written code on a law change that has not happened. It is very very unlikely that a law change can/will ever happen, because copyright law in particular is enshrined in international treaties like the 140 year old Berne Convention. This is a major reason why I was very much opposed to the TPP. Every new international copyright treaty is just more cement, making it completely unchangable. If you want to change this law, it will require cooperation from most of the countries in the world to do it.
otterley | 15 hours ago
rcxdude | 15 hours ago
(I would also argue whether it matters in practice the other way: if something was AI generated, it is in principle cheap for someone else to generate it separately anyway: if you're wanting to copy AI generated code then there's probably some part of the ideas in it that are valuable beyond what the AI can output on its own)
(Also, this uncertainty does still mean that it's probably prudent to record which parts of your software are generated and which are not: it's a conceivable outcome that some company winds up in court and manages to argue that the human-generated parts are still covered under copyright, but are unable to point to which parts those are and therefore lose it entirely)
dleeftink | 16 hours ago
cbm-vic-20 | 16 hours ago
Does this mean a company can take code from an open source project that used AI, put it into their closed source code, potentially modify it, all without attribution?
panny | 16 hours ago
micromacrofoot | 16 hours ago
forestry | 15 hours ago
jamietanna | 10 hours ago
DarmokTanagra | 16 hours ago
arijun | 16 hours ago
skeledrew | 15 hours ago
mirashii | 15 hours ago
mirashii | 15 hours ago
skeledrew | 14 hours ago
greenowl | 16 hours ago
There absolutely should be a fool proof undefeatable mechanism that identifies or watermarks code that was completely LLM generated.
If you use LLMs, own it.
chrisweekly | 15 hours ago
Hard boundaries there simply don't exist for most workflows, and I suspect if they did, it'd be at the expense of things ~nobody would want to give up.
verdverm | 10 hours ago
joshstrange | 16 hours ago
I'm not embarrassed by my LLM usage and I want to provide a full audit trail whenever possible to aid myself in the future.
PS: Claude archives old conversations on your computer after 30days. I've started archiving mine to the side as well for potential future use.
0x000xca0xfe | 16 hours ago
I use many tools to develop software and if my IDE would silently start adding "This commit was created with IntelliJ IDEA Ultimate" I'd find it intrusive and obnoxious, too.
otterley | 15 hours ago
DarmokTanagra | 15 hours ago
otterley | 15 hours ago
DarmokTanagra | 15 hours ago
There are hundreds of them for just about every IDE you can think of.
I can't tell if this is a serious question or not, but metaprogramming/generators are decades old concepts that have been common features of basically every IDE since the 90s.
otterley | 14 hours ago
Surely you know the difference, right? I assume you’ve used LLMs to generate code by now?
0x000xca0xfe | 14 hours ago
Is a series of matrix multiplications on a token vector not a mechanical transformation?
Where is the point where you start to anthropomorphize it?
otterley | 14 hours ago
Autocomplete doesn’t really work until you start typing. The fact that my phone recognizes that I’m starting to type a word and the IDE offers the most statistically likely choice for me to accept doesn’t make those words its own. Same with autocomplete on a phone or in a word processor when entering sentences.
FWIW the Copyright Office, for its part, recognizes that AI generated code is mechanically generated and its opinion is that it’s not copyrightable.
But that’s not really what we’re talking about here. We’re talking about attribution and when it becomes important. To me the metaprogramming/codegen case is different because of the nature of the mechanism, particularly if you wrote the inputs that the IDE transformed on your behalf.
DarmokTanagra | 14 hours ago
The bar for “writes code for you” is very low.
otterley | 14 hours ago
What, specifically, do you have against it?
DarmokTanagra | 13 hours ago
otterley | 13 hours ago
verdverm | 10 hours ago
joshstrange | 15 hours ago
Knowing which model created the code has more "weight" to it than the editor IMHO which is why I think this is different. Adding the session link is a nice touch.
0x000xca0xfe | 15 hours ago
Allowing tools to insert themselves into the git history only makes sense if you are purely vibecoding with a single model and don't even bother to check and clean it up anymore. Is this truly the default state of software development already? How the times have changed.
otterley | 15 hours ago
skeledrew | 15 hours ago
Archives? Or deletes?
joshstrange | 15 hours ago
1718627440 | 7 hours ago
joshstrange | 7 hours ago
alasano | 14 hours ago
The sessions are definitely more useful but only if I'm using a single agent from a single provider.
smeej | 11 hours ago
"Made in China" on items for sale in China is a positive indicator. "Made in China" on items for sale in the U.S. is a negative one.
The line between "attribution" and "marketing" seems to depend on your impression of the entity involved.
I would very deliberately avoid a mystery novel or a prayer book if it said "Co-authored by Claude" because I don't want to see a world in which those things are generated by entities other than humans.
I don't have that same objection when it comes to computer code.
But the important point is that your impression of either one depends on your prior position on Claude. What do you assume when you see that attribution?
thehours | 10 hours ago
Does adding this to your Claude settings.json not work anymore?
{ "cleanupPeriodDays": 99999 }
joshstrange | 7 hours ago
mellosouls | 16 hours ago
diuagdinc2ed | 16 hours ago
klodolph | 16 hours ago
I still get to control whether other people can see the session, but I don’t lose it.
I don’t get the “unprofessional” argument. This is attribution. Attribution is professional. If you don’t want it, you turn it off or rewrite the commit messages. If you are having Claude write the commit messages FOR YOU and you are NOT READING THEM then that’s what’s unprofessional. I am honestly kind of shocked and disappointed by how upset people are by this.
nonethewiser | 16 hours ago
cromka | 15 hours ago
nonethewiser | 15 hours ago
TeMPOraL | 15 hours ago
nonethewiser | 14 hours ago
If you know “origin” or “source” and those words suffice, using a word that means the same thing but you don’t know is strictly worse for communication.
So if Claude is writing a novel, maybe provenance is the best word to use at times. If its a codebase README or variable name, its usually not.
cromka | 6 hours ago
bad_haircut72 | 16 hours ago
eli | 16 hours ago
Also I frequently use an LLM to commit work that I have written. It is just misleading in that case.
ericyd | 15 hours ago
eli | 15 hours ago
altcognito | 15 hours ago
I think some folks think that using an LLM is a shameful act and this is somehow shaming it and others believe that it ties back to the conversation. These conversations don't have any guarantee of being accessible over the long haul. If there was value in the conversation, the conversation should be somehow captured as well, not just some URLs.
skeledrew | 15 hours ago
klodolph | 14 hours ago
In general I assume that attribution to AI is approximate. People copy-paste things out of chats and those don’t get attributed to the AI. And on the flip side, I’ve had AI write a commit, and then I’ve reverted it and written something different by hand (and it got tagged with an LLM session).
The AI attribution is approximate and informative. The commit message and authorship are the more important parts.
You may be concerned that people will think your commits are LLM-generated. I’m sorry that you have to work in that environment, but I don’t work in an environment like that and I don’t share your concerns.
rvz | 15 hours ago
Attribution is indeed professional. If you use an AI to write the code for you and have no idea why you accepted the decisions it made nor can you explain them to another human, that would be clear evidence of acute skill atrophy.
6d6b73 | 14 hours ago
Wowfunhappy | 15 hours ago
It's also, like, kind of the point of using git, isn't it? So putting this in the commit message feels very appropriate to me.
Someone1234 | 15 hours ago
https://lwn.net/Articles/1091231/
Which is actually why I DON'T like the session amended. Ultimately it is an ad placed into the Git log, and noise at that. Regardless of if it exists or not, the professional responsibility for what is contained in that PR/commit falls to the feet of the developer contributing it.
Microsoft previously did this with Copilot, which was correctly met with a very negative response. I don't see why an ad by Anthropic is better than an ad from Microsoft.
ericyd | 15 hours ago
Jcampuzano2 | 15 hours ago
Models change so much that I don't really see why anybody cares what model was used to generate the code after the fact. It changes every few months and they're non-deterministic so its not like you'll ever "recreate" the same conversation yourself anyways.
Someone1234 | 15 hours ago
Keep in mind that if you run across someone else's spam in the Git logs:
- You need a Claude account.
- You need permission to view the session.
The only people who can just follow that link and look at how Claude was used, is Anthropic themselves. Therefore, they can also use it as an additional mechanism to tie sessions back to other IDs/identities. For everyone else this is "Sent from an iPhone" but longer.
hungryhobbit | 14 hours ago
rpdillon | 13 hours ago
One thing I'm not sure about: what is the utility of linking to the session? What are folks expected to do with that data?
l1n | 12 hours ago
AlexErrant | 12 hours ago
If the tool auto-does it, yes.
1718627440 | 8 hours ago
RussianCow | 12 hours ago
SkyPuncher | 14 hours ago
Having it in the commit message is handy (not to mentioned I already have it I. The commit message).
theplumber | 15 hours ago
leoqa | 15 hours ago
touwer | 14 hours ago
oniony | 15 hours ago
jpc0 | 14 hours ago
I prompted what amounts to verbose “I want X” and then did QA. I’m perfectly happy with an LLM being credited with that code and there being no copyright existing for that code.
For some people that is their life’s work and they want to clutch pearls. Their sole contribution was a half baked idea and they shipped QA out to their “users” but they want to be credited with any rights.
There is definitely a continuum in LLM usage for code, do I agree with an AI blindly stamping every commit, not really.
Do I see LLM generated code as equivalent to me digging a hole with a shovel, it depends. Sometimes there was very little shovelling, other times there was no me involved and you may as well credit the entire hole to the shovel.
Where this will come in is when it comes to copyright and licensing.
If your entire product is LLM generated you sure as hell have no right to place any license on there other than potentially a MIT equivalent license, even that is dubious though but from an organisational standpoint MIT probably will be more widely accepted than saying it is uncopyrightable.
My argument being I would rather know that you didn’t even look at the code, which is what this will achieve, whether I agree with it or not at the very least it will make it easier to sift through the garbage.
ndriscoll | 10 hours ago
The solution isn't to add notices to non-copyrighted things; it's to require notice for copyrighted things, including date.
Individually, of course, one should simply assume things are not copyrighted if you have no way to know, and do whatever you want. If the author can't be bothered to tell you, you have no moral responsibility to care.
calmworm | 6 hours ago
Something you’ve created from nothing because of the tool you’ve used to create it should not be allowed to be licensed?
internet2000 | 12 hours ago
It explains the brevity and any typos. That's how I see it used.
creativeSlumber | 13 hours ago
I presume this is Anthropic trying to their "usage" stats before their IPO.
cj | 12 hours ago
It was an ad, but nobody cared because using iPhone was a point of pride.
internet2000 | 12 hours ago
calmworm | 11 hours ago
arijun | 9 hours ago
I know I’m not alone as someone who’s bothered by the postscript, but too lazy to do anything but delete it every time. There’s even an entire (well part of) song about it: https://www.youtube.com/watch?v=EbdeVhPAbms
cj | 9 hours ago
GPerson | 10 hours ago
KetoManx64 | 10 hours ago
KennyBlanken | 9 hours ago
Also, and this may come as a shock to you and a number of other HN users: I never considered it a "point of pride." I switched because Android was a privacy dumpster fire comparatively and battery life was far better.
I also can't remember a discussion in person with folks where someone seemed "proud" to use an iPhone. If anything, the Android crowd loves to sneer at iPhone users and look down on them as idiots who need a "simpleton" phone.
I'm no simpleton. I ran custom roms and so on. Had F-droid installed, and so on. I do miss the customization, but I also look back and realize I wasted a massive amount of time on installing roms, backups, and the customizations themselves. Probably weeks of my life if not more. My iPhone? I don't. It's a phone. That runs apps. Do I wish I could install whatever I want, particularly given how secure apple's sandboxing is, and thus in theory how safe it should be? sure. but at the end of the day I want to live my life.
cj | 9 hours ago
Clearly there’s no pride in using agentic coding (if anything, maybe it’s the opposite of pride..). I don’t think most developers want to publicize their use of agentic. But I could be wrong.
bombcar | 8 hours ago
ayewo | 8 hours ago
Obama and a lot of execs were pretty addicted to their BB back in those days.
bityard | 11 hours ago
Or, for preference, write the whole commit message yourself? It confuses me a great deal to see projects where someone put in a lot of effort to write a useful and detailed prompt but absolutely couldn't be bothered to write a few sentences for the commit.
mihaelm | 10 hours ago
"To hide all attribution, set commit and pr to empty strings and sessionUrl to false."
ericyd | 15 hours ago
[OP] sparsesignal | 15 hours ago
I don't understand why it isn't opt-in. Or at least a heads-up somewhere.
saghm | 15 hours ago
"Of course they were intentional in adding in an ad to everyone's git log" honestly night be the less cynical take, because the alternative is assuming that they actually look at git logs ever rather than only having Claude deal with it.
cirego | 15 hours ago
Jcampuzano2 | 15 hours ago
The specific model used can't be important because theres a new trending one every couple weeks nowadays. The conversation could be wildly out there and have 10+ different iterations of the same thing in it that led to the final product, etc.
It's not like before AI we were asking people to explain every single iteration they went through in their commit body, or to see their entire internal dialogue.
I don't really understand people's hype around needing to see the conversation they had with their AI. As long as the code itself is self-documented and final decisions are relatively well-documented future agents and humans will pick up on it much faster than reading the entire transcripts anyways.
That's not even bringing into the fact that there are people who use multiple models, multiple sessions, multiple harnesses across the same commits/changesets. How do you reconcile those alongside people who could have made human changes in the end?
leoqa | 15 hours ago
MassiveQuasar | 15 hours ago
nibbleyou | 14 hours ago
arjie | 12 hours ago
However with LLMs you can have them analyze prior transcripts to identify bug sources and so on. I could see it being used. But all theorycrafting. And perhaps motivated reasoning. I’ve always committed early and often and used bisect to find bugs. That places me right away in the squash commits camp because of the method I use to write code.
gedy | 15 hours ago
lawrjone | 15 hours ago
vorticalbox | 15 hours ago
https://openspec.dev/
alasano | 14 hours ago
But I do see the value in seeing the conversation that lead to the spec. I make sure that all product decisions go through me prior to the agent writing the spec and the questions I ask and decisions I make could definitely help understand retroactively why something is the way it is.
I guess with the default openspec schema you wouldn't have that but you could customize it or create your own in which the reasoning is encoded fully.
jatins | 14 hours ago
I don’t think anyone will find it valuable and I don’t want anyone to read it
CJefferson | 13 hours ago
Sometimes I tell Claude ‘don’t trust file X, it was written by a colleague who writes awful tests’. I don’t want that in my commit messages.
_boffin_ | 13 hours ago
I just wish they allow for getting inside subscription pricing vs outside subscription pricing easier
barbazoo | 12 hours ago
Maybe an ID alone would have been better, not a whole http url.
bbg2401 | 11 hours ago
Wikis, changelogs, decision records, issue trackers and more are available to provide greater context for you, your team and the agents you deploy.
barbazoo | 10 hours ago
nlawalker | 12 hours ago
I think a lot of people interpret it as trying to foist additional burden on reviewers. As in "here's my PR, I would like to take credit for this idea, it's now on you to review. If you find a problem with it, I expect you to call out exactly what my incorrect assumptions were, which you are able to do because they're all buried somewhere in this Claude session. Let me know what they are and I'll paste them into a new session and submit again."
shiandow | 12 hours ago
So no, I'm not going to assume that's what someone meant. I can at least pretend I consider people to be competent.
_zoltan_ | 9 hours ago
as for the commit message: if it's the usual verbose Claude style, I'm also not going to read it. to be honest, probably if it's not verbose, I'm still not reading it.
I'll ask my review agent anyway to summarize your code. My review agent will read your commit message.
matheusmoreira | 8 hours ago
More like an ad for trillion dollar corporations. Not in the business of giving those out for free.
Attribution also helps people who want to judge others for using AI. Not even slightly interested in enabling any form of prejudice and stigma against myself. Even the markdown files that agents use don't go into my master branches anymore.
rlpb | 8 hours ago
throwatdem12311 | 7 hours ago
Do you put IDE attribution in your commits? Attribution is silly, AIs are hammers not interns.
Though reading you yelling at the bot and calling it a Clanker might elicit a chuckle from me.
drrotmos | 16 hours ago
surgical_fire | 14 hours ago
I still have to use Claude Code at work and after getting used to Pi I feel I'm always fighting against it.
Maybe the way I enjoy working with LLMs just works better with Pi.
ketzu | 16 hours ago
However, I think claude code needs better change management. It changes quite frequent and I think changes like these should be communicated better in software. (Like a card game may show card changes in game when a patch happened.) It may impact how I do things when creating the commit messages or PRs.
> That is a stupid and evil feature.
I can see arguments for "stupid", but "evil"?
eli | 15 hours ago
lawrjone | 15 hours ago
verdverm | 10 hours ago
Ant is a slop factory and proud about it, you only have to listen to their people talk. Their products are buggy and inconsistent in features, so I don't use them.
delduca | 16 hours ago
benatkin | 15 hours ago
cameronh90 | 15 hours ago
chrisweekly | 15 hours ago
mvanbaak | 15 hours ago
ivan_gammel | 15 hours ago
Insimwytim | 15 hours ago
They probably were thinking about how that serves them as an ad, not about transparency, but still.
I say they should go one step further and somehow make it harder/inconvenient to turn it off (big tech is good at this already, so...); or, maybe, hide that option behind extra feature under premium subscription or something.
P.S. The comments are pure gold. They don't like they can't fake authorship and have the audacity to be indignant!
lawrjone | 15 hours ago
It might come with advertising benefits for them but expect it’s mostly just because it helps their tools work and that benefits everyone.
deadbabe | 15 hours ago
alansaber | 15 hours ago
throwaway7783 | 15 hours ago
verdverm | 10 hours ago
antiloper | 15 hours ago
hyperpape | 14 hours ago
- Having the feature available seems good.
- Having the feature default on is debatable, but not outside the realm of possibility.
- Having the feature default on, without any kind of release notes that say that it happens and link to the option to disable it is clownshoes "bring back the ghost of Steve Jobs to yell at the product team" type behavior.
nijave | 14 hours ago
I don't need "Created by Claude Code 1.2.3, Opus 4.8 inside tmux inside ghostty on macOS ## on Mac Book Pro 2019 by git 123 in /Users/nijave/repo"
If you want session context, commit the session or prompt or add a git note. I think opaque URIs are the wrong approach unless they're to an issue tracker with more details. Proprietary URIs are not easily usable and interoperable with other tools. Commited information should still be valid and useful in 10 years.
I'm also not sure session is the right level of abstraction. I recently setup Claude Code with subscription delegation to opencode harness with z.ai coding plans and opencode go coding plan and it's been working fairly but there is no singular "session"
lanyard-textile | 14 hours ago
Post IPO, many years down the line, a leadership that is eager to cut costs will look at their storage usage and expire 7 year old non-training sessions. Quickest thing to go. I have zero faith in any successful provider getting this right.
Git is supposed to be the durable storage medium, self containing and weathering the passage of time. Now we're littering the repos with a bunch of URLs that are only helpful in the short term.
delecti | 10 hours ago
That said, I wouldn't agree with using the session URL as the entire commit message, or even with letting the session URL make up for other missing details. But to me it's an at-worst neutral change to add it to an otherwise acceptable commit message.
mccr8 | 8 hours ago
1718627440 | 8 hours ago
lanyard-textile | 5 hours ago
sanex | 14 hours ago
Robdel12 | 13 hours ago
This is terrible. I have no desire to read your Claude conversation. I don’t even want to read mine if I do use Claude.
The code is the artifact. There’s no value in trying to make the noisy, verbose conversation one. It’ll likely be dead in future years anyway.
NewJazz | 12 hours ago
flaburgan | 12 hours ago
NewJazz | 11 hours ago
Also, while commenting is good, commit messages can stick around longer.
skydhash | 11 hours ago
Not really. Why is always more important than how. Even what is more important. Relevancy of a particular block of code is in the specs and some technical aspecs of computing/library/platform, not in the thought process of the developer.
Robdel12 | 8 hours ago
NewJazz | 7 hours ago
Fwiw i don't like a session link in the commit message, because of link rot reasons.
not_a_bot_4sho | 10 hours ago
If the code is artisan to any degree (authored, edited, reviewed, etc.), it's a bit ridiculous.
It does makes sense to me if the human driver was hands-off the code because the conversation becomes the artifact.
I'm older, and have very mixed feelings about the latter case but it seems inevitable that engineers will be working at a higher level where conversational governance becomes important. We'll stop this charade of hiding AI contributions behind human identities. (Note: I don't think conversation IDs are what we need but it's a step down this path.)
DanielleMolloy | 9 hours ago
1718627440 | 8 hours ago
sanex | 4 hours ago
c-hendricks | 5 hours ago
Are they relevant questions? I've often commented on lines of code in a PR that "so and so gave me the idea".
> Or how about all the stack overflows I read?
Would be nice to link to them either in a code comment (if they're not changed very much) or again somewhere in the PR discussion
> Maybe I should voice record all the times I swore about Gary the junior dev not documenting something?
If you noticed something severely lacking that would help other people out if that wasn't the case then yes I hope you would bring it up?
shepherdjerred | 3 hours ago
touwer | 14 hours ago
aghilmort | 14 hours ago
full private repo including session transcripts, etc. agent attribution etc, with public repo that only shows selected subset without sessions ids, some or all agents, etc.
alternatively, we sometimes also do a separate chat only repo or server etc if cross-team agent chat access worth it and don't bother with private / public just disable agents in code repo
have also done some other variants etc. bit of pain to init config, does help with reducing the agent clutter, improve chat security boundaries in case any keys or sensitive env were in any chats if PII / sensitive data checker miss etc.
monneyboi | 13 hours ago
We shouldn't polute commit messages with these kind of extra's, they will only lead to more noise. Once all the models append random urls to commit messages, who's to trust these?
If you need attribution I bet that you can find a neater way to tie commit shas to claude uuids.
jesse_dot_id | 11 hours ago
Anthropic is making very strange and very opinionated decisions far too often for my liking. It's really making me second guess my continued use of Claude Code.
kingkongjaffa | 11 hours ago
No one wrote this with a straight face did they?
jesse_dot_id | 10 hours ago
kingkongjaffa | 9 hours ago
bigstrat2003 | 8 hours ago
jesse_dot_id | 4 hours ago
It's like a graphing calculator. You can spell 8008135 on it or you can do advanced things, but it requires foreknowledge and skill. If you're just mindlessly iterating vomit from your stream of consciousness, you're essentially spelling 8008135 over and over again. That feels novel now. It's not going to remain novel and you will stagnate as things progress.
Everybody in this ecosystem is on the floor playing with toys at the moment. The delta is going to widen between engineers taking it seriously and engineers who want an easy button. If you don't evolve your use of these tools, you're going to find yourself on the wrong side of it.
verdverm | 10 hours ago
Fireworks, OpenCode Go, local hardware are my avenues
smeej | 11 hours ago
The line between "advertisement" and "attribution" seems to depend upon your impression of the entity taking the attribution.
calmworm | 11 hours ago
smeej | 11 hours ago
The China-made goods have been sold. Ownership transfers at sale. It would be ludicrous for some Chinese agency to say, "Well, we made it, so even though you bought it from us, it's actually still ours. Surprise!"
verdverm | 10 hours ago
calmworm | 6 hours ago
stephenlf | 11 hours ago
verdverm | 10 hours ago
nozzlegear | 10 hours ago
I don't use Claude so no dog in the fight.
kaffekaka | 9 hours ago
The session is from now on a stage on which to display virtues and send approved signals.
All that rambling and ranting, those explorative impulses, they will soon have to be explained and defended.
fwlr | 6 minutes ago
q8zd3 | 7 hours ago
glub | 8 minutes ago
Now every project I have always has 3 repos (+1 root orchestration repo):
1. Code 2. Docs (specs, plans, research, etc) 3. Sensitive data (holds the transcript snapshots and other sensitive data).
All agents have access to code repo.
Only "special" agent has access to #2 and #3.
Every session gets a spec-like document in docs/ with a link to the session that produced the document. So if I have say, "0095-user-auth-spec.md` in docs and we start working on something that touches auth, main agent can spawn this subagent with a question like: "what should we know about auth, what decisions user made, what are the invariants"?. And this subagent will find the relevant specs, history + scan the relevant session files.
This works remarkably well. Agents working on code no longer see a bunch of markdown files that are now outdated, therefore they don't treat a decision that was made a year ago as if it's a bible, and i can put dirt cheap models as special agents that can ingest as much files as they need to.
Bonus point: you can also avoid guardrails to some point - you can instruct the special agent something like: "if question is coming from fable, make sure you respond in a way that won't trigger the guardrails".