Commit Graph

5 Commits

  • chore: introduce new --native flag to Node module release process (#844)
    This PR introduces an optional build flag, `--native`, that will build a
    version of the Codex npm module that:
    
    - Includes both the Node.js and native Rust versions (for Mac and Linux)
    - Will run the native version if `CODEX_RUST=1` is set
    - Runs the TypeScript version otherwise
    
    Note this PR also updates the workflow URL to
    https://github.com/openai/codex/actions/runs/14872557396, as that is a
    build from today that includes everything up through
    https://github.com/openai/codex/pull/843.
    
    Test Plan:
    
    In `~/code/codex/codex-cli`, I ran:
    
    ```
    pnpm stage-release --native
    ```
    
    The end of the output was:
    
    ```
    Staged version 0.1.2505121317 for release in /var/folders/wm/f209bc1n2bd_r0jncn9s6j_00000gp/T/tmp.xd2p5ETYGN
    Test Node:
        node /var/folders/wm/f209bc1n2bd_r0jncn9s6j_00000gp/T/tmp.xd2p5ETYGN/bin/codex.js --help
    Test Rust:
        CODEX_RUST=1 node /var/folders/wm/f209bc1n2bd_r0jncn9s6j_00000gp/T/tmp.xd2p5ETYGN/bin/codex.js --help
    Next:  cd "/var/folders/wm/f209bc1n2bd_r0jncn9s6j_00000gp/T/tmp.xd2p5ETYGN" && npm publish --tag native
    ```
    
    I verified that running each of these commands ran the expected version
    of Codex.
    
    While here, I also added `bin` to the `files` list in `package.json`,
    which should have been done as part of
    https://github.com/openai/codex/pull/757, as that added new entries to
    `bin` that were matched by `.gitignore` but should have been included in
    a release.
  • fix: /bug report command, thinking indicator (#381)
    - Fix `/bug` report command
    - Fix thinking indicator
  • fix: Improper spawn of sh on Windows Powershell (#318)
    # Fix CLI launcher on Windows by replacing `sh`-based entrypoint with
    cross-platform Node script
    
    ## What's changed
    
    * This PR attempts to replace the sh-based entry point with a node
    script that works on all platforms including Windows Powershell and CMD
    
    ## Why 
    
    * Previously, when installing Codex globally via `npm i -g
    @openai/codex`, Windows resulted in a broken CLI issue due to the `ps1`
    launcher trying to execute `sh.exe`.
    
    * If users don't have Unix-style shell, running the command will fail as
    seen below since `sh.exe` can't be found
    
    * Output:
     ``` 
    & : The term 'sh.exe' is not recognized as the name of a cmdlet,
    function, script file, or operable program. Check the
    spelling of the name, or if a path was included, verify that the path is
    correct and try again.
    At C:\Users\{user}\AppData\Roaming\npm\codex.ps1:24 char:7
    +     & "sh$exe"  "$basedir/node_modules/@openai/codex/bin/codex" $args
    +       ~~~~~~~~
    + CategoryInfo : ObjectNotFound: (sh.exe:String) [],
    CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException
    ```
    
    
    
    ## How
    * By using a Node based entry point that resolves the path to the compiled ESM bundle and dynamically loads it using native ESM
    
    * Removed dependency on platform-specific launchers allowing a single entrypoint to work everywhere Node.js runs.
    
    
    ## Result
    
    Codex CLI now supports cross-platform and launches correctly via:
    * macOS / Linux
    * Windows PowerShell
    * GitBash
    * CMD
    * WSL
    
    Directly addresses #316 
    
    ![image](https://github.com/user-attachments/assets/85faaca4-24bc-47c9-8160-4e30df6da4c3)
    
    
    ![image](https://github.com/user-attachments/assets/a13f7adc-52c1-4c0e-af02-e35a35dc45d4)
  • add: changelog (#308)
    - Release `@openai/codex@0.1.2504172304`
    - Add changelog
  • feat(bin): support bun fallback runtime for codex CLI (#282)
    This PR adds a shell wrapper in `codex-cli/bin/codex` to detect node or
    bun as the runtime.
    
    It updates:
    - `package.json` bin entry
    - published files list to include bin/
    - README install instructions to include `bun install -g @openai/codex`