# The Trawl Report · 2026-W38

Counted from the snapshot of 2026-09-21, set against the one from 2026-09-14. Method v4. No model wrote a word of this: every sentence is a template with a count in it.

> The Cap'm counts what came up in the net and what went back over the side. Read [how we count](/method) before you quote any of it, the tool numbers most of all: they measure how loudly a tool's users say its name, not what anybody uses.

## The sea

7,302 repos seen in the last 90 days that say in public an AI tool wrote them, from 6,217 owners. Counted from GitHub's search results alone: no star floor, no licence filter, no README read, no model asked, and nothing listed. This is the water the trough below is drawn from.

- **74.9%** have no stars at all
- **59.7%** carry no licence
- **9.4%** would reach the judge under the trough's rules

By stars: no stars 74.9%, 1 to 4 18.2%, 5 to 9 2.4%, 10 to 24 1.8%, 25 to 99 1.3%, 100 to 499 0.8%, 500 or more 0.6%.

What stops the rest, by the first rule that stopped it:

- **a licence we cannot quote from** — 4294 (58.8%)
- **outside the star window** — 1267 (17.4%)
- **owned by an org, so nobody could claim or remove it** — 885 (12.1%)
- **writing about vibe coding, not vibe-coded** — 125 (1.7%)
- **no claim in its topics or description** — 35 (0.5%)
- **no description to quote** — 12 (0.2%)

The sea is the trough's own searches with the ropes taken off, so it inherits [bias 1 and bias 2](/method) whole: still repos whose owners said so, still found by searches named after tools. What it takes off is the star floor and the licence filter, and the three lines above are how much of the population those two rules hold back.

## The trough

468 repos listed, +254 this week, from 431 owners.
- trawled: 456 (+254) — dragged out of public GitHub; nobody submitted them
- opted in: 12 (no change) — committed a slopscore.md and asked to be counted

## How much of it is software

The judge has looked at 416 candidates so far (+313 new this week), and **70.9% were software somebody made**: an app, a game, a tool, a library, or something with hardware attached. The rest went back over the side.

That is the number this bulletin exists for, and the reason the trawl keeps what it rejects. A leaderboard that keeps only what it accepted can tell you what its winners look like and nothing about the pile they came out of. The pile, largest bucket first:

- **app** — 149 (35.8%), −13.7 points from 51 (49.5%)
- **tool** — 93 (22.4%), +1.0 points from 22 (21.4%)
- **tool-for-ai-coding** — 83 (20%), +12.2 points from 8 (7.8%)
- **library** — 26 (6.3%), +2.4 points from 4 (3.9%)
- **game** — 24 (5.8%), −3.9 points from 10 (9.7%)
- **list-or-template** — 21 (5%), −0.8 points from 6 (5.8%)
- **not-ai-made** — 11 (2.6%), new this week
- **low-effort** — 4 (1%), new this week

These are a model's labels, picked from a closed list, not a maker's own words. They are the only judged numbers in the bulletin, and they say so wherever they appear.

## Which tool gets the credit

82 credits in the trawled sample. A repo can name more than one tool, so the shares are of credits, not of repos.

- **claude-code** — 45 (54.9%), flat
- **claude** — 26 (31.7%), −1.6 points from 11 (33.3%)
- **cursor** — 4 (4.9%), +1.8 points from 1 (3%)
- **codex** — 3 (3.7%), −2.4 points from 2 (6.1%)
- **copilot** — 1 (1.2%), −1.8 points from 1 (3%)
- **lovable** — 1 (1.2%), new this week
- **muse-code** — 1 (1.2%), new this week
- **windsurf** — 1 (1.2%), new this week

**Read this as how loudly each tool's users say its name in public.** Most of the trawl's eight grounds are named after a tool ([method](/method), bias 2), so a tool whose users never tag or describe their repos is undercounted by construction. It is not market share and it is not usage.

Biggest swings since last week: codex −2.4 points, cursor +1.8 points, copilot −1.8 points, claude −1.6 points.

## What it is written in

- **python** — 196 (15.3%), −0.7 points from 101 (16%)
- **javascript** — 190 (14.8%), +1.7 points from 83 (13.2%)
- **shell** — 173 (13.5%), −1.4 points from 94 (14.9%)
- **html** — 165 (12.9%), +1.5 points from 72 (11.4%)
- **css** — 144 (11.3%), +1.2 points from 63 (10%)
- **typescript** — 122 (9.5%), +1.1 points from 53 (8.4%)
- **rust** — 66 (5.2%), −1.8 points from 44 (7%)
- **dockerfile** — 61 (4.8%), flat

Also new to the sample this week, below the top eight: go (36).

Shares are of 1,280 language credits over the trawled sample. GitHub lists every language a repo uses, so one repo can count more than once.

## What the net threw back

5,183 candidates looked at in the last 30 days and not listed, by reason. The window rolls, so movement here is the mix of reasons shifting, not one week's intake.

- **a licence we cannot quote from** — 2740 (52.9%), +12.7 points from 399 (40.1%)
- **never claims a model wrote it** — 1209 (23.3%), −15.2 points from 383 (38.5%)
- **owned by an org, so nobody could claim or remove it** — 516 (10%), new this week
- **something else** — 462 (8.9%), +6.2 points from 27 (2.7%)
- **writing about vibe coding, not vibe-coded** — 124 (2.4%), flat
- **a tool for people coding with AI** — 87 (1.7%), flat
- **a list, guide or template** — 24 (0.5%), flat
- **the claim was not about this code** — 11 (0.2%), new this week

## The small print

- Counted under method v4, frozen and versioned at [/method](/method). When a rule changes the version goes up and the change is dated; nothing is edited in place.
- This site measures software whose author **says in public** that an AI tool wrote it. It does not measure AI-written software, and no number here can.
- Tool credit was counted over the 16 tools the dictionary held that night: claude-code, claude, cursor, copilot, chatgpt, codex, gemini-cli, windsurf, aider, cline, roo, muse-code, lovable, bolt, v0, replit. A tool not on that list was not looked for. [Which tools were added, and when](/method).
- The sea is counted from GitHub search results alone. Nothing in it is read, judged, listed or named, and its facts are as of the last time the sounding passed. [How it is sounded](/method).
- The numbers behind every sentence above: [`/report/2026-W38.json`](/report/2026-W38.json), frozen with the bulletin and still there after the nightly snapshot they came from has been pruned.
- Spotted an error? [Say so](/contact). Corrections run in the next bulletin; nothing is edited in quietly.