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: 78.8%. Bars are scaled to that peak, not to 100%.
Which agents
| Claude Code | Anthropic | 993 | 29.2% |
| OpenAI Codex | OpenAI | 143 | 4.2% |
| Gemini CLI | 2 | 0.1% |
Verify it yourself
Sample commits that matched. Every one links to GitHub — check the trailers.
023d56cafeat(hud): respect CLAUDE_CODE_OAUTH_TOKEN when reading usage (#4004)Claude Codeff77bb2ffeat(shipyard): add agent-doc-discipline skill and two-axis review gate (#Claude Code9ef27f89feat(hooks): make the SessionStart context budget configurable via OMC_SESClaude Code12add85afix: narrow workflow drift decision detection (#3475)OpenAI Codex29289f64fix(team): recover confirmed-dead runtime-v2 workers (#3462)OpenAI Codexa32217d6fix(ci): isolate subagent lock benchmark (#3459)OpenAI Codex3cce4961feat(team): add Grok Build as a team worker + ask provider (#3159)Gemini CLI0173537efix(security): enforce directory boundary in isTrustedPrefix (CLI trusted-Gemini CLI
What was excluded
| Commits in window | 4,363 |
| Merge commits removed | −958 |
| CI / dependency bots removed | −0 |
| Considered | 3,405 |
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 Yeachan-Heo/oh-my-claudecode