Files
codex/docs/release_management.md
2025-10-20 09:45:15 -07:00

2.0 KiB

Release Management

Currently, we made Codex binaries available in three places:

Cutting a Release

Run the codex-rs/scripts/create_github_release script in the repository to publish a new release. The script will choose the appropriate version number depending on the type of release you are creating.

To cut a new alpha release from main (feel free to cut alphas liberally):

./codex-rs/scripts/create_github_release --publish-alpha

To cut a new public release from main (which requires more caution), run:

./codex-rs/scripts/create_github_release --publish-release

TIP: Add the --dry-run flag to report the next version number for the respective release and exit.

Running the publishing script will kick off a GitHub Action to build the release, so go to https://github.com/openai/codex/actions/workflows/rust-release.yml to find the corresponding workflow. (Note: we should automate finding the workflow URL with gh.)

When the workflow finishes, the GitHub Release is "done," but you still have to consider npm and Homebrew.

Publishing to npm

The GitHub Action is responsible for publishing to npm.

Publishing to Homebrew

For Homebrew, we ship Codex as a cask. Homebrew's automation system checks our GitHub repo every few hours for a new release and will open a PR to update the cask with the latest binary.

Inevitably, you just have to refresh this page periodically to see if the release has been picked up by their automation system:

https://github.com/Homebrew/homebrew-cask/pulls?q=%3Apr+codex

Once everything builds, a Homebrew admin has to approve the PR. Again, the whole process takes several hours and we don't have total control over it, but it seems to work pretty well.

For reference, our Homebrew cask lives at:

https://github.com/Homebrew/homebrew-cask/blob/main/Casks/c/codex.rb