Adoption is broad. Many contributors are committing agent-authored work, which is what a real organisational rollout looks like.
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: 15.5%. Bars are scaled to that peak, not to 100%.
Which agents
| Claude Code | Anthropic | 188 | 8.1% |
| Cursor Agent | Anysphere | 4 | 0.2% |
| OpenAI Codex | OpenAI | 3 | 0.1% |
Verify it yourself
Sample commits that matched. Every one links to GitHub — check the trailers.
466b62b6fix(vectordb): exclude the subtree for must_not on a path inside an and (#Claude Code90a61809fix(models): classify SiliconFlow code 20015 embedding 400s as input-too-lClaude Code5ace39d3fix(memory): escape "-->" in MEMORY_FIELDS values (#4992)Claude Code7ee75611refactor(parser):Unify Office Document Parsing with AnyDoc and Restore ComCursor Agent07aa9dc7feat(feishu): persist imported document images (#3033)Cursor Agentb55d3791chore(openclaw-plugin): release 2026.6.18 and raise OpenViking floor to 0.Cursor Agent15e52840fix(openclaw): read L2 content in memory recall (#2002)OpenAI Codex31628cd0fix(memory): tolerate Python 3.10 ISO timestamps in extraction paths (#152OpenAI Codexe5ceb130fix(context-engine): drop tool-only non-assistant messages instead of emitOpenAI Codex
What was excluded
| Commits in window | 2,362 |
| Merge commits removed | −0 |
| CI / dependency bots removed | −36 |
| Considered | 2,326 |
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 volcengine/OpenViking