xcodes is a command-line tool to install and switch between multiple versions of Xcode.
The tool solves the problem of managing multiple Xcode installations on macOS by automating the download and installation process. It authenticates with Apple ID credentials, downloads the requested Xcode version from Apple's servers, and installs it to a configurable directory. The tool can optionally use aria2 for faster parallel downloads when available. It also supports listing available Xcode versions and their architectures, filtering by architecture type, and managing simulator runtimes.
Developers managing multiple Xcode versions should choose this tool if they want to avoid manual downloads and the complexity of managing installations across different directories. It suits teams working with multiple Swift or iOS projects that require different Xcode versions, or developers testing compatibility across releases. The tool works without requiring Xcode to already be installed, making it suitable for initial machine setup. An app version called Xcodes.app is available for those preferring a graphical interface.
The project maintains active CI workflows and accepts community contributions. Release builds are Developer ID-signed and notarized, ensuring they run without requiring prior Xcode installation. The tool supports filtering downloads by architecture, distinguishing between Apple Silicon, Intel, and universal builds, which reflects attention to the evolving macOS hardware landscape.