A small group is using agents. Adoption has spread beyond one person but is not project-wide.
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: 59.3%. Bars are scaled to that peak, not to 100%.
Which agents
| Claude Code | Anthropic | 427 | 29.2% |
| GitHub Copilot | GitHub | 12 | 0.8% |
| Cursor Agent | Anysphere | 4 | 0.3% |
Verify it yourself
Sample commits that matched. Every one links to GitHub — check the trailers.
aae889a2fix(datasource/go): cache the publication time of each version (#45951)Claude Code0649d9f8test(datasource/go): show that `.info` timestamps are refetched (#45950)Claude Codecbd9e92dfeat(manager/github-actions): support conda-incubator/setup-miniconda versClaude Codeb62fe595fix: remove references to "bot" (#39305)GitHub Copilot183fc146docs: clarify GHSA publishing timelines and CVE IDs (#45307)GitHub Copilotcc5bcaafci: add `auto:pls-merge-main` label workflow to merge main into a PR brancGitHub Copilot795d0832feat(datasource): add APK datasource support (#40250)Cursor Agenta84e007ffeat(vulnerabilities): match OSV Packagist sub-ecosystems (#45203)Cursor Agentdef09c26fix(github): use base_tree in pushFiles to avoid org ruleset file-path resCursor Agent
What was excluded
| Commits in window | 3,238 |
| Merge commits removed | −0 |
| CI / dependency bots removed | −1,774 |
| Considered | 1,464 |
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 renovatebot/renovate