[{"data":1,"prerenderedAt":289},["ShallowReactive",2],{"project-46871473":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":34,"aspects":35,"strip":39,"post_text":42,"what":43,"said":60,"maker_in_thread":172,"shape":181,"grid":185,"attempts":250,"same_week":251,"maker_shows":40,"maker_hidden":281,"reader_version":282,"card":283},"46871473","git-ai","GitHub Browser Plugin for AI Contribution Blame in Pull Requests","title","Show HN: GitHub Browser Plugin for AI Contribution Blame in Pull Requests","https:\u002F\u002Fblog.rbby.dev\u002Fposts\u002Fgithub-ai-contribution-blame-for-pull-requests\u002F","blog.rbby.dev","rbbydotdev",1770129325,2026,62,34,1043,4366,24,"notable","dev_tools","git tooling","browser_extension",[24,25,26,27],"git blame","ai code attribution","pull request","github plugin","mixed",-0.429,{"positive":31,"neutral":32,"mixed":33,"critical":32},1,8,0,17,{"idea":36,"design":37,"pricing":38},{"positive":31,"critical":32},{"positive":33,"critical":33},{"positive":33,"critical":33},[31,33,33,33,33,33,33,40,40,41,31,40,40,40,40,33,40,33,33,33,33,33,40,31,31,33,33,31,31,33,31,31,33],3,5,null,{"problem":44,"audience":42,"pricing":42,"motivation":54,"time_to_build":42,"stack":58,"openness":59,"stage":59,"team_size":59},{"value":45,"source":46,"evidence":47},"Shows which lines in a pull request were AI-generated versus human-written","maker",[48,51],{"id":49,"by":11,"text":50},"46872552","> Wouldn't the thing to do be to give AI its own account id \u002F email so we can use standard git blame tools? That’s a reasonable idea and something I considered. The issue is that…",{"id":52,"by":11,"text":53},"46872629","> Because AI is really good at generating code that looks good on its own, on both first and second glance. This is a good call out. Ai really excels at making things which are…",{"value":55,"source":46,"evidence":56},"Existing git and blame tools cannot express line-level human and AI interleaving; described as an experiment",[57],{"id":49,"by":11,"text":50},[],"unknown",{"praise":61,"objections":76,"requests":112,"questions":131,"alternatives":150},[62,70],{"value":63,"source":64,"evidence":65},"Per-line tracking of AI versus human edits is a useful distinction","commenter",[66],{"id":67,"by":68,"text":69},"46872926","weaksauce","I think the special feature is that it tracks on a per line basis in a blended commit what AI is doing vs. whole commits. not sure the utility of it.",{"value":71,"source":46,"evidence":72},"Storing attribution in git notes keeps commit history clean and removable",[73],{"id":74,"by":11,"text":75},"46883686","It’s not in the git commit history, that’s the cool part! Git-ai stores it in git notes, easy to remove later if you don’t like it ;)",[77,88,94,105],{"value":78,"source":64,"evidence":79},"Attribution is noise; the author of the PR should own the code regardless of how it was written",[80,84],{"id":81,"by":82,"text":83},"46873412","operator-name","I'm not sold at the idea - for most projects it makes sense that the author of the PR should ultimately have ownership in the code that they're submitting. It doesn't matter if…",{"id":85,"by":86,"text":87},"46879884","ottah","Why!? What possible benefit is there to stuffing my git commit history with this noise?",{"value":89,"source":64,"evidence":90},"Could enable harassment or nitpicking of PR authors over AI use",[91],{"id":92,"by":86,"text":93},"46879944","I doubt anyone is going to really use it for that purpose. What's more likely is people nitpicking or harassing pr authors over any use of AI.",{"value":95,"source":64,"evidence":96},"Reviewing the code itself matters more than knowing its origin",[97,101],{"id":98,"by":99,"text":100},"46872214","nilespotter","Why not just look at the code and see if it's good or not?",{"id":102,"by":103,"text":104},"46880918","Our_Benefactors","> Projects like Zig may never allow ai contributions Good luck enforcing that. This extension is solving for the wrong problem and is actually only useful as some kind of…",{"value":106,"source":64,"evidence":107},"Separate git author IDs or existing tools could do this without a plugin",[108],{"id":109,"by":110,"text":111},"46871957","verdverm","Wouldn't the thing to do to give them their own account id \u002F email so we can use standard git blame tools? Why do we need a plugin or new tools to accomplish this? Don't know why…",[113,120],{"value":114,"source":64,"evidence":115},"Store attribution in the commit trailer or commit object so it is part of history",[116],{"id":117,"by":118,"text":119},"46872346","shayief","It seems like something like this should be added to the commit object\u002Fmessage itself, instead of git notes. Maybe as addition to Co-Authored-By trailer. This would make sure…",{"value":121,"source":64,"evidence":122},"Include the model and prompt that produced the code",[123,127],{"id":124,"by":125,"text":126},"46872292","Anonbrit","Giving it its own id doesn't store all the useful metadata this tool preserves, like the model and prompt that generated the code",{"id":128,"by":129,"text":130},"46872610","monsieurbanana","Because they can produce magnitude more code than you can review. And personally I don't want to review _any_ submitted AI code if I don't have a guarantee that the person who…",[132,140],{"value":133,"source":64,"evidence":134},"Why is this post resubmitted and on the front page?",[135,136],{"id":109,"by":110,"text":111},{"id":137,"by":138,"text":139},"46872437","nightpool","Many posts get resubmitted if someone finds them interesting and, if it's been a few days, they generally get \"second-chance\" treatment. That means they'll be able to make it to…",{"value":141,"source":64,"evidence":142},"What are the costs of giving AI its own account seat?",[143,147],{"id":144,"by":145,"text":146},"46872268","jayd16","That would cost a seat, I'm guessing.",{"id":148,"by":110,"text":149},"46872783","how much is this solution like this going to cost you per current seat? On one hand, I would imagine companies like GitHub will not charge for agent accounts because they want to…",[151,158,165],{"value":152,"source":64,"evidence":153},"aider\u002Fcecli records AI attribution in commits",[154],{"id":155,"by":156,"text":157},"46872595","dec0dedab0de","I think this is what aider\u002Fcecli does",{"value":159,"source":64,"evidence":160},"GitLens has a similar feature",[161],{"id":162,"by":163,"text":164},"46874422","Alxc1","I believe GitLens has a version of this feature that I tried. To others points, seeing the person who actually committed it was more helpful.",{"value":166,"source":64,"evidence":167},"Separate AI git account or (human)\u002F(agent) name prefixes",[168,169],{"id":109,"by":110,"text":111},{"id":170,"by":110,"text":171},"46872425","I'm using '(human)' and '(agent)' prefix as a poor mans alternative",{"comments":173,"answered":174,"key":175},4,2,[176,179,180],{"id":177,"text":178},"46873781","I agree that accountability should always rest with the human submitting the PR. This isn't for deflecting ownership to AI. The goal is transparency, making it visible how code…",{"id":49,"text":50},{"id":74,"text":75},{"commenters":182,"max_depth":173,"maker_replies":173,"first_comment_mins":183,"lifespan_hours":184},21,37,32,[186,188,190,192,195,197,200,203,205,207,211,212,214,215,216,217,219,222,224,226,228,229,231,232,233,234,236,239,241,243,244,245,247],[81,33,31,187,82,33],"project\u002Fcritical\u002Fidea",[177,33,33,189,11,31],"maker\u002Fneutral\u002Fidea",[92,33,33,191,86,33],"commenter\u002Fneutral\u002Fnone",[193,33,33,191,194,33],"46874150","add-sub-mul-div",[196,33,33,191,86,33],"46879970",[198,33,33,191,199,33],"46880434","yunwal",[201,33,33,191,202,33],"46881229","zdragnar",[117,31,40,204,118,33],"project\u002Fneutral\u002Fdesign",[155,31,40,206,156,33],"project\u002Fneutral\u002Fidea",[208,31,41,209,210,33],"46874087","project\u002Fpositive\u002Fidea","Kerrick",[109,174,31,187,110,33],[144,174,40,213,145,33],"project\u002Fneutral\u002Fpricing",[170,174,40,204,110,33],[148,174,40,213,110,33],[124,174,40,206,125,33],[218,174,33,191,110,33],"46872386",[220,174,40,206,221,33],"46872299","maartin0",[223,174,33,191,110,33],"46876341",[137,174,33,225,138,33],"other\u002Fneutral\u002Fnone",[227,174,33,225,110,33],"46872710",[49,174,33,189,11,31],[230,174,33,225,110,33],"46872680",[67,174,40,206,68,33],[162,40,31,187,163,33],[85,173,31,187,86,33],[74,173,33,235,11,31],"maker\u002Fneutral\u002Fdesign",[237,41,33,225,238,33],"46886869","ahmetozer",[98,240,31,187,99,33],6,[242,240,31,187,125,33],"46872314",[52,240,33,191,11,31],[128,240,31,187,129,33],[102,246,31,187,103,33],7,[248,32,33,225,249,33],"46892755","Franky_URS",[],[252,257,262,267,272,276],{"id":253,"name":254,"points":255,"category":256},"46847690","Craftplan",577,"web_saas",{"id":258,"name":259,"points":260,"category":261},"46850205","NanoClaw",533,"ai",{"id":263,"name":264,"points":265,"category":266},"46832074","ear",469,"languages",{"id":268,"name":269,"points":270,"category":271},"46850803","Xikipedia",441,"learning_science",{"id":273,"name":274,"points":275,"category":20},"46882389","Ghidra MCP Server",298,{"id":277,"name":278,"points":279,"category":280},"46868479","Safe-now.live",195,"infrastructure",false,"v2",{"id":284,"name":5,"line":6,"ai":281,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":285,"top":18,"kw":286,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":287,"url":9,"mix":288,"praise":63,"objection":78,"sub":21},46871473,-0.43,[24,25,26,27],"100000033513333030000031100110110",[31,32,33,32],1793991142630]