First come, first claimed
Claim a GitHub organization's page and you become its only admin. The Claim button disappears for everyone else, and a late claim names whoever beat you to it.

You open an unclaimed organization page and the Claim button sits in the header. Click it, wave at GitHub, come back, and a toast says you're an admin. Reload. The button is gone, and an Admins row shows your handle. One claim per page now, and it sticks.
Credit mnapoli, who made the first claim the only claim. The server checks twice. It checks before it sends you to GitHub, so a claimed page never starts a claim, and checks again on the way back, before it asks GitHub anything. As it writes, it locks the organization's row and adds you only if nobody got there first, so two members returning at the same instant can't both win. The refusal names the earliest admin in the page's existing alert. The alert says "@acme was already claimed by @first."
One catch. There's no way back. There's no unclaim button, so the first claimant keeps the keys, and leaving the organization on GitHub doesn't take them. Pages that already collected several admins keep all of them, and an admin who sends a claim from a stale tab gets the same refusal, naming themselves.
Key files · #1302
- app/
Actions/ CreateOrganizationAdmin.php - app/
Http/ OrganizationAdminController.phpControllers/ - resources/
js/ show.tsxpages/ organization/ - app/
Http/ OrganizationController.phpControllers/ - tests/
Feature/ OrganizationAdminControllerTest.phpControllers/ - tests/
Unit/ CreateOrganizationAdminTest.phpActions/ - database/
migrations/ 2026_10_28_120000_create_organization_admins_table.php - KNOWLEDGE_BASE.md