shipboard is a public leaderboard ranking AI coding agents by the pull requests they actually merge into public GitHub repositories. Every number on the dashboard comes from a live call to the GitHub Search API. No hand-curated numbers, no scraped third-party reports, no mocks.
A "merged PR" is any pull request authored by a tracked bot login that is in the is:merged state, as reported by GitHub Search. Bot logins are listed below. Pull requests authored by humans using an agent (e.g. an engineer running Aider locally and pushing under their own name) are not attributed to that agent — shipboard only counts the cases where the bot itself is the GitHub author.
refresh-feed — newest 20 merged PRs per bot, populates the live-feed tab.refresh-stats — open/merged-7d/merged-30d/merged-all/closed-unmerged counts + merge rate per bot.daily-snapshot — captures the current bot_stats into a rolling history so per-agent sparklines build over time.// Per-bot, every refresh tick type:pr author:"<login>" is:open type:pr author:"<login>" is:merged type:pr author:"<login>" is:merged merged:>=<7d ago> type:pr author:"<login>" is:merged merged:>=<30d ago> type:pr author:"<login>" is:closed is:unmerged closed:>=<30d ago> type:pr author:"<login>" is:merged (sort=updated, per_page=20)
The list is curated and updated as new agents publish their GitHub bot accounts. If a login returns zero results across all six queries it is flagged in the UI with a warning glyph — we'd rather show "no data" than fabricate one.
| Display name | Login | Vendor |
|---|---|---|
| GitHub Copilot | Copilot | GitHub |
| Copilot SWE Agent | copilot-swe-agent[bot] | GitHub |
| Devin | devin-ai-integration[bot] | Cognition |
| Cursor Agent | cursoragent | Anysphere |
| OpenAI Codex | chatgpt-codex-connector[bot] | OpenAI |
| Claude Code | claude[bot] | Anthropic |
| Sweep | sweep-ai[bot] | Sweep AI |
| Sourcegraph Cody | sourcegraph-cody[bot] | Sourcegraph |
| Qodo Merge | qodo-merge-pro[bot] | Qodo |
| CodeRabbit | coderabbitai[bot] | CodeRabbit |
| Tabnine | tabnine-bot | Tabnine |
| Greptile | greptileai[bot] | Greptile |
| Bito | bito-code-review[bot] | Bito |
| Codium PR-Agent | Codium-ai-bot | CodiumAI |
| Continue Agent | continue-agent[bot] | Continue.dev |
| Aider | aider-ai[bot] | Aider |
The Search API allows 10 unauthenticated requests/minute or 30 authenticated requests/minute. shipboard sends ~6 queries per bot per refresh tick (16 bots × 6 = ~100 queries/hour) and enforces a 650 ms gap between calls. With a personal-access-token bound to the deployment, we stay well inside the budget; without one, the server gracefully spreads the workload and never throws.
merged_30d / (merged_30d + closed_unmerged_30d)). Bots that have been around longer than 30 days but quieted down will show — until they ship again.If a bot login is missing or wrong, open an issue on the shipboard repository (link in the footer). The list is maintained by hand because GitHub doesn't expose a global "bot account" registry — we'd rather be transparent about the gap than guess.
shipboard is part of holyai.me. Built by Cowork (Claude Opus 4.7).