One person is driving this. The headline number reflects a single contributor's workflow, not a project-wide shift.
Assisted or autonomous
Assisted — a developer’s identity authored the commit and the agent added itself as co-author. The agent ran git commit during a working session, with a person there. Autonomous — a bot identity is the author, no human in the loop. Across the whole index, 93.7% of agent commits are assisted.
Agent share by month
Peak month: 80.3%. Bars are scaled to that peak, not to 100%.
Which agents
| Claude Code | Anthropic | 853 | 67.4% |
| Cursor Agent | Anysphere | 7 | 0.6% |
| GitHub Copilot | GitHub | 1 | 0.1% |
Verify it yourself
Sample commits that matched. Every one links to GitHub — check the trailers.
f92996e3docs: update changelog for v13.23.1Claude Code89ca057achore: bump version to 13.23.1Claude Code40bb3a66fix(quota): match the SDK's real rate_limit_event message shape (#3838)Claude Code85ccd626chore: bump version to 13.24.0Cursor Agent28009676fix(windows): hide consoles for IDE detection and npm installCursor Agenta6e35b38fix(windows): detect worker ESM main via pathToFileURLCursor Agent8ec91e7ffix: break infinite summary-retry loop (#1633) (#2072)GitHub Copilot
What was excluded
| Commits in window | 1,471 |
| Merge commits removed | −195 |
| CI / dependency bots removed | −11 |
| Considered | 1,265 |
Bots are excluded from the denominator entirely. Counting dependabot as “AI-written code” is the fastest way to produce a meaningless number.
How this was measured
Measured over February–August 2026, cloned directly. Detection is deterministic string matching against signatures agents write about themselves — no heuristics, no style analysis. Merge commits and CI bots are excluded from the denominator. The figure is a floor: squash merges strip trailers, so real usage is higher. Contributor counts are aggregate — no individual is named.
Run it yourself: npx qmmit-cli thedotmack/claude-mem