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: 6.5%. Bars are scaled to that peak, not to 100%.
Which agents
| Claude Code | Anthropic | 107 | 2.5% |
| Cursor Agent | Anysphere | 5 | 0.1% |
| GitHub Copilot | GitHub | 5 | 0.1% |
| OpenAI Codex | OpenAI | 1 | 0% |
Verify it yourself
Sample commits that matched. Every one links to GitHub — check the trailers.
3314cd38[observe] update README.md (#49360)Claude Codeb093b4fd[ios][autolinking] Read prebuilt XCFramework Info.plists in a single tar pClaude Code49e89cda[ios][autolinking] Add prebuilt-metadata command emitting the identity joiClaude Codec630d360[brownfield][Android] Tie React Native surface lifetime to its container (Cursor Agent7c961e29[android][media-library] Parallelize EXIF location reads in getAssetsAsyncCursor Agent2918c5a6[ios][screen-capture] Detach recording overlay when allowing screen capturCursor Agent54b92480[docs] Update Upgrade Expo SDK guide for SDK 56 (#46112)GitHub Copilot8652bf9c[docs] Align CONTRIBUTING guidance, PR Checklist and Stale link (#44867)GitHub Copilot3eca8f5bfix(expo-brownfield): unwrap native event in addSharedStateListener (#4440GitHub Copilot9886c0c1[ios][widgets] Avoid applying Text modifiers twice (#49535)OpenAI Codex
What was excluded
| Commits in window | 4,295 |
| Merge commits removed | −0 |
| CI / dependency bots removed | −33 |
| Considered | 4,262 |
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 expo/expo