Devlery
Blog/Anthropic

41% of GitHub PR Descriptions Now Share One Voice, and load-bearing Is Inside Claude Code

Clustering 461,121 GitHub pull request descriptions by word usage alone, one cluster grew from 0.7% to 41%. Its top marker word, load-bearing, sits in Claude Code’s built-in prompt text, which is why banning it in CLAUDE.md does not work.

41% of GitHub PR Descriptions Now Share One Voice, and load-bearing Is Inside Claude Code
AI 요약
  • Word-only clustering of 461,121 PR descriptions saw one cluster go from 0.7% to 41%.
  • Its strongest marker word is load-bearing, 39.5x more frequent than outside it.
  • Anthropic confirmed the phrase sits in Claude Code’s own built-in prompt text.

French developer Louis Abraham published an analysis page on August 26, 2026. It scrapes roughly 1,000 GitHub pull request descriptions a day and sorts them into ten clusters using nothing but which words appear in them. The next day it hit the Hacker News front page with 641 points and 312 comments.

One of those clusters went from a 0.70% share in the first eight weeks of 2025 to 36.6% across the most recent eight weeks. In the single latest week, starting August 17, 2026, it accounts for 2,582 of 6,216 descriptions, or 41.5%. The page describes this as roughly 40% of human-authored pull requests in the past month. The word that most strongly identifies that cluster is load-bearing.

The product-side explanation landed the same week. Anthropic's claude-code repository has carried issue #53454, titled around Claude Code being unable to stop saying "load-bearing," since April 26, 2026. On August 25, Claude Code collaborator bcherny posted a reproduction and confirmed that the phrase appears inside Claude Code's own built-in prompt text.

No labels went in, and one cluster still came out at 41%

Nothing in this analysis was labeled as AI-written by a human. Each of the 461,121 PR descriptions was reduced to a distribution over word counts, and similar distributions were grouped into ten clusters. No dates and no model release timelines were fed to the model.

The collection window runs from January 6, 2025 through August 17, 2026: 85 weeks, 595 days.

461,121
PR descriptions
51,079,244
Word occurrences
19,798
Vocabulary size

Bots were filtered out. 3,784 accounts whose names contain [bot], -bot, or copilot were dropped, which removed 13.2% of all rows. Descriptions from the same author in the same week were capped at three, so a single person running a script cannot push the statistics around.

The model has no time variable. One set of centroids covers all 20 months, with no per-week adjustment. The weekly curves on the page are therefore not a trend the model learned. Each description was placed by its words alone, and the weekly counts were tallied afterward.

Ranking words by how much more often they appear inside the leading cluster than outside it produces this list.

RankWordRatio
1load-bearing39.5x
2plainly33.8x
3quietly29.9x
4refusal27.8x
5survived27.6x
6re-derived26.7x
7halves26.6x
8asserted25.2x
9nobody24.8x
10genuinely24.5x

load-bearing appears 1,011 times across the 461,121 descriptions. Corpus-wide that is 20 occurrences per million words, but in the peak week it reached 95 per million.

Weekly frequency chart for the word load-bearing. It sits near zero through 2025 and rises sharply from mid-2026

Why writing a banned-word rule does not stop it

Someone had already run out of patience with the word. On April 26, 2026, user gertalot opened the issue on Anthropic's repository after searching plugins, CLAUDE.md, and every other prompt they could find without locating load-bearing anywhere, and after storing a "do not use this word" instruction in memory that changed nothing. The issue collected 154 reactions, 103 of them thumbs-up.

Four months later the answer arrived. The reproduction bcherny posted on August 25, 2026 ran like this.

  • Clean install of v2.1.233 in a fresh config directory with no plugins, no CLAUDE.md, and no memory.
  • Prompt: write a short architecture document for a 7-line Python file.
  • The generated document used load-bearing twice.

The cause follows from the strings in the shipped binary: the phrase recurs in Claude Code's own built-in prompt text. The model is exposed to the word at the start of every session. bcherny noted this is also why user instructions fail to suppress it. The built-in wording is reinjected each turn and competes with whatever ban the user wrote into CLAUDE.md.

Collaborator reproduction comment on issue 53454 in the Anthropic claude-code repository, carrying the reproduced label

The issue also collects counts users measured themselves. On May 21, 2026, ansingh1214 posted numbers from three sessions covering 1,108 assistant messages and about 167,000 words, broken down by context length, and frequency rose with context length. Occurrences per 10,000 words went from 2.4 below 100K tokens of context to 11.6 in the 500K to 700K token range. Across models, Opus 4.6 came in at 0.5 per 10,000 words and Opus 4.7 at 12.0, roughly a 24x gap.

A separate measurement corneliusroemer posted on July 26, 2026 put frequency per 100,000 words at 19.5 for Opus 5, 6.4 for Opus 4.8, and 2.3 for Sonnet 5. Within the same family, newer generations used it more.

The author says he did not track Claude

Abraham narrowed his own interpretation in the Hacker News thread, writing that he was not tracking Claude's habits but only found that a particular vocabulary cluster is growing. He also said he tried constraining the clusters using model release dates and dropped it because the results were unconvincing, which is why the final model is much simpler. Attributing a cluster to a specific tool would require labeled data, and this analysis has none.

The pushback in the thread runs in several directions.

  • jfultz: the top words in the shrinking clusters are usernames (cluster 4) and repository or tag names (cluster 6). Some of what the clustering caught is repository identity rather than writing style. Cluster 2's top words are WebKit test bot names, and cluster 3 is Spanish and French vocabulary.
  • sethd: much of this vocabulary, load-bearing included, was already jargon inside tech companies, and Codex uses the same words. Adopting an agent did not add one coworker who talks that way, it added one who produces that prose far faster.
  • bakugo: the opposite read. No human has written load-bearing seam, which breaks the claim that AI style simply reflects human style.

sroussey speculated that text watermarking added for EU AI Act compliance might be narrowing response diversity, but another commenter replied that watermarking only nudges between choices of similar probability. We covered the watermark in Claude's output separately, and on the evidence available now the direct cause of load-bearing is the Claude Code built-in prompt, not watermarking.

What you can check today

The analysis page opens with no gate. Anthropic has not closed the issue.

ItemAnalysis page and repoClaude Code issue #53454
Who can accessAnyone, no account neededAll Claude Code users
Plan and priceFreeNot applicable
RequirementsReproducing it locally needs a GitHub token and Python (numpy, scipy, numba). About 50 seconds on 12 coresNone
StatusRefreshed daily by GitHub Actions; figures here are from the 2026-08-28 buildOpen as of August 28, 2026, no fix release

The repository ships no license file. Reading and running the code is one thing, but redistribution terms are not stated, so check with the author before porting it into an internal tool.

If your team reviews PR descriptions written by coding agents, grep the last 30 days of PR bodies for load-bearing, plainly, quietly, and genuinely. The ten words in the table above work as search terms directly. If matches come back and you already have a ban written into CLAUDE.md, that rule is competing with the built-in prompt on every turn, so it is worth deleting and handling elsewhere. Until issue #53454 closes and the built-in prompt changes, a substitution step just before publishing gives a more reliable result than asking the model.