{"id":46805784,"url":"https://github.com/hksw-io/homebrew-codex","last_synced_at":"2026-06-13T03:11:08.267Z","repository":{"id":343297308,"uuid":"1177116661","full_name":"hksw-io/homebrew-codex","owner":"hksw-io","description":"Homebrew tap for Codex with faster updates and alpha releases.","archived":false,"fork":false,"pushed_at":"2026-06-11T06:15:40.000Z","size":206,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-06-11T08:11:17.827Z","etag":null,"topics":["codex","codex-cli","homebrew","homebrew-tap"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hksw-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-09T17:57:07.000Z","updated_at":"2026-06-11T06:15:42.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/hksw-io/homebrew-codex","commit_stats":null,"previous_names":["hksw-io/homebrew-codex"],"tags_count":248,"template":false,"template_full_name":null,"purl":"pkg:github/hksw-io/homebrew-codex","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hksw-io%2Fhomebrew-codex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hksw-io%2Fhomebrew-codex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hksw-io%2Fhomebrew-codex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hksw-io%2Fhomebrew-codex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hksw-io","download_url":"https://codeload.github.com/hksw-io/homebrew-codex/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hksw-io%2Fhomebrew-codex/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34270483,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-13T02:00:06.617Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["codex","codex-cli","homebrew","homebrew-tap"],"created_at":"2026-03-10T07:08:33.470Z","updated_at":"2026-06-13T03:11:08.251Z","avatar_url":"https://github.com/hksw-io.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Homebrew Tap for Codex\n\nCommunity-maintained Homebrew tap that tracks the latest upstream Codex release, including prereleases.\n\n## Why This Exists\n\nThe official Homebrew `codex` cask is a good default if you only want stable releases. This tap exists for two cases:\n\n- upstream is moving quickly and you want a dedicated mirror that checks for new releases every 5 minutes\n- you want the highest upstream release by version, including alpha releases that the official cask does not publish\n\nThe official Homebrew cask tracks stable `rust-v...` releases only. This tap tracks the highest upstream `rust-v...` version by SemVer precedence, whether that release is stable or a prerelease such as `rust-v0.113.0-alpha.1`.\n\n## Install\n\n```sh\nbrew install --cask hksw-io/codex/codex\n```\n\nUpgrade:\n\n```sh\nbrew upgrade --cask hksw-io/codex/codex\n```\n\nIf you want a single Homebrew upgrade command that also includes greedy casks, set:\n\n```sh\nexport HOMEBREW_UPGRADE_GREEDY=1\n```\n\nThen plain `brew upgrade` will include them.\n\nNotes:\n\n- `hksw-io/codex` is the tap name, not the install target.\n- `brew install --cask codex` installs the official Homebrew cask, not this tap.\n- This tap's `codex` cask may point to either a stable release or a prerelease, depending on which upstream version is highest.\n\n## Version Policy\n\nThis tap keeps a single active cask, `codex`, and points it at the highest upstream `rust-v...` release by SemVer precedence.\n\nExamples:\n\n- `0.113.0` supersedes `0.113.0-alpha.2`\n- `0.114.0-alpha.1` supersedes `0.113.1`\n- `0.114.0` supersedes `0.114.0-alpha.1`\n\nIf you want stable-only behavior, use the official Homebrew `codex` cask instead of this tap.\n\n## How It Works\n\nThis tap polls the upstream GitHub Releases API every 5 minutes and mirrors only `rust-v...` releases from `openai/codex`.\n\nEach mirrored release:\n\n- creates a matching git tag\n- creates a GitHub Release in `hksw-io/homebrew-codex`\n- updates `Casks/codex.rb` only if that upstream release becomes the highest version seen so far\n\n## Run It Yourself\n\nClone the repo wherever you want to run the mirror:\n\n```sh\ngit clone https://github.com/hksw-io/homebrew-codex.git\ncd homebrew-codex\n```\n\nCreate an environment file. The default location is `${XDG_CONFIG_HOME:-$HOME/.config}/codex-tap.env`, but every helper script also accepts an explicit path:\n\n```sh\nmkdir -p \"${XDG_CONFIG_HOME:-$HOME/.config}\"\ncat \u003e \"${XDG_CONFIG_HOME:-$HOME/.config}/codex-tap.env\" \u003c\u003c'EOF'\nGH_TOKEN=...\nTAP_REPO=hksw-io/homebrew-codex\nUPSTREAM_REPO=openai/codex\nGIT_BRANCH=master\nGIT_USER_NAME=\"Your Name\"\nGIT_USER_EMAIL=\"you@example.com\"\nEOF\nchmod 600 \"${XDG_CONFIG_HOME:-$HOME/.config}/codex-tap.env\"\n```\n\nRun the updater once:\n\n```sh\n./scripts/run_update.sh --dry-run --verbose\n```\n\nThe updater mirrors every upstream `rust-v...` release, but only changes `codex.rb` when that release outranks the currently active version.\n\nRun the tests:\n\n```sh\npython3 -m unittest discover -s tests -v\n```\n\nAutomate it on Linux with `systemd`:\n\n```sh\nsudo ./scripts/install_systemd_units.sh \"${XDG_CONFIG_HOME:-$HOME/.config}/codex-tap.env\"\nsystemctl status codex-tap-sync.timer\nsystemctl list-timers codex-tap-sync.timer\n```\n\nAutomate it on macOS with `launchd`:\n\n```sh\n./scripts/install_launchd_agent.sh \"${XDG_CONFIG_HOME:-$HOME/.config}/codex-tap.env\"\nlaunchctl print \"gui/$(id -u)/io.hksw.codex-tap-sync\"\n```\n\nNotes:\n\n- The helper scripts render the scheduler config with your actual clone path, so you do not need to use `/srv/homebrew-codex`.\n- `GH_TOKEN` needs permission to read `openai/codex` releases and write to `hksw-io/homebrew-codex`.\n- Set `GIT_USER_NAME` and `GIT_USER_EMAIL` if you want mirrored commits to use a specific identity. If unset, the updater falls back to the repo's local git config.\n- The Linux installer defaults to running the timer as the invoking user. Override `CODEX_TAP_USER`, `CODEX_TAP_GROUP`, or `CODEX_TAP_HOME` if you want a dedicated service account.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhksw-io%2Fhomebrew-codex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhksw-io%2Fhomebrew-codex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhksw-io%2Fhomebrew-codex/lists"}