import os from pathlib import Path PACKAGE_NAME = "openai-codex-cli-bin" PACKAGE_METADATA_FILENAME = "codex-package.json" def bundled_package_dir() -> Path: path = Path(__file__).resolve().parent metadata_path = path / PACKAGE_METADATA_FILENAME if not metadata_path.is_file(): raise FileNotFoundError( f"{PACKAGE_NAME} is installed but missing its package metadata at {metadata_path}" ) return path def bundled_codex_path() -> Path: exe = "codex.exe" if os.name == "nt" else "codex" path = bundled_package_dir() / "bin" / exe if not path.is_file(): raise FileNotFoundError( f"{PACKAGE_NAME} is installed but missing its packaged codex binary at {path}" ) return path def bundled_path_dir() -> Path | None: path = bundled_package_dir() / "codex-path" return path if path.is_dir() else None __all__ = [ "PACKAGE_NAME", "bundled_codex_path", "bundled_package_dir", "bundled_path_dir", ]