Palantir Automates Management of 6,000 GitHub Repositories with Custom Bots
Article Content
Palantir manages approximately 6,000 GitHub repositories across various production services, including microservices and infrastructure-as-code. To address the challenge of applying cross-cutting changes across this extensive polyrepo architecture, the Developer Tools team has developed a suite of specialized GitHub applications that automate workflows and enforce policies at scale.
These applications operate independently but integrate through GitHub's native event system, such as webhooks and pull requests, following a Unix-like philosophy of doing one thing well. Key tools include Policy-Bot, which enforces complex pull request approval rules beyond GitHub's native capabilities and evaluated 270,000 pull requests in 4,500 repositories last month; and Bulldozer, which automatically merges pull requests once all criteria are met, having merged 250,000 pull requests across 4,200 repositories in the same period.
Other internal tools include Excavator, a distributed system that applies automated changes like dependency upgrades and code refactoring across thousands of repositories, creating or updating 300,000 pull requests in 5,000 repositories recently. Label Maker assigns labels to pull requests based on configurable conditions, triggering further automation, and has labeled 235,000 pull requests in the past month.
Further automation tools include Octo-Correct, which enforces centralized repository and organization settings across all repositories; Nit, which automatically fixes trivial CI failures to reduce review cycles; Backport, which automates cherry-picking fixes to older release branches; and Autorelease, which generates consistent versioned releases automatically upon pull request merges. Collectively, these bots streamline development workflows, reduce manual intervention, and maintain consistency across Palantir’s extensive GitHub ecosystem.
Read more: blog.palantir.com