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: 11.5%. Bars are scaled to that peak, not to 100%.
Which agents
| Gemini CLI | 47 | 3.3% | |
| GitHub Copilot | GitHub | 31 | 2.2% |
| Claude Code | Anthropic | 21 | 1.5% |
Verify it yourself
Sample commits that matched. Every one links to GitHub — check the trailers.
077d54baFix path separator for remote_zip in computer_client.py (#8182)Gemini CLI5b29f6f7feat: add categorization to platform logs and a UI toggle to hide user chaGemini CLIb9c5a1f2perf: detect repeated tool calls by name and arguments (#9311)Gemini CLI20c294fcfeat: add stateless Responses API provider (#9515)GitHub Copilotba7f8ebffix(webui): sync plugin activation status on enable (#9156)GitHub Copilot771911a8fix: keep Tab navigation within reset-password inputs in account dialog (#GitHub Copilot47ab2fe0fix: add LLM metadata fallback endpoint (#9725)Claude Codede4cbbcbfeat: expand webchat drag-and-drop upload to the whole chat area (#9564)Claude Code32cfcbf5feat: show quoted message content in group chat contextClaude Code
What was excluded
| Commits in window | 1,484 |
| Merge commits removed | −22 |
| CI / dependency bots removed | −27 |
| Considered | 1,435 |
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 AstrBotDevs/AstrBot