Files
dev/codex-cli/package.json
T
Michael BolinandGitHub 73d59fd83d packaging: move rg manifest out of npm bin (#23833)
## Why

Installing `@openai/codex` currently places a Dotslash `rg` manifest at
`node_modules/@openai/codex/bin/rg`, even though the native optional
dependency already ships the actual helper under
`vendor/<target>/codex-path/rg`. The launcher prepends that `codex-path`
directory, so the top-level `bin/rg` file is redundant in the npm
install.

The remaining direct consumers of the manifest are package-building
paths: `scripts/codex_package/ripgrep.py` and
`codex-cli/scripts/install_native_deps.py`. Keeping the manifest under
`codex-cli/bin` makes it look like a shipped npm binary, so this moves
it next to the package-builder code that owns it. The checked-in
`@openai/codex` package metadata should likewise describe only the meta
package payload; generated platform packages continue to publish
`vendor`.

## What Changed

- Moved the Dotslash ripgrep manifest from `codex-cli/bin/rg` to
`scripts/codex_package/rg`.
- Updated the package builder, npm native-artifact hydrator, README, and
CLI help text to reference the new manifest location.
- Stopped `codex-cli/scripts/build_npm_package.py` from copying `rg`
into the `@openai/codex` meta package.
- Narrowed the checked-in meta package `files` whitelist to
`bin/codex.js`.

## Verification

- `python3 -m unittest discover -s scripts/codex_package -p "test_*.py"`
- `python3 -m unittest discover -s codex-cli/scripts -p "test_*.py"`
- `python3 -m py_compile codex-cli/scripts/build_npm_package.py
codex-cli/scripts/install_native_deps.py
scripts/codex_package/ripgrep.py scripts/codex_package/cli.py
scripts/stage_npm_packages.py`
- `codex-cli/scripts/build_npm_package.py --package codex --version
0.0.0-test --pack-output <tmp>/codex-meta-no-vendor.tgz`
- `tar -tf <tmp>/codex-meta-no-vendor.tgz` showed only
`package/bin/codex.js`, `package/package.json`, and `package/README.md`.
- Direct staging check showed `codex` uses `files: ["bin/codex.js"]`
while `codex-darwin-arm64` still uses `files: ["vendor"]`.

---
[//]: # (BEGIN SAPLING FOOTER)
Stack created with [Sapling](https://sapling-scm.com). Best reviewed
with [ReviewStack](https://reviewstack.dev/openai/codex/pull/23833).
* #23836
* __->__ #23833
2026-05-21 15:48:42 +00:00

46 lines
1.4 KiB
JSON

{
"name": "@hanzo/dev",
"version": "0.6.79",
"license": "Apache-2.0",
"description": "Hanzo AI coding assistant - intelligent CLI for developers",
"bin": {
"dev": "bin/coder.js",
"hanzo": "bin/coder.js"
},
"type": "module",
"engines": {
"node": ">=16"
},
"files": [
"bin/coder.js",
"bin/codex.js",
"postinstall.js",
"scripts/preinstall.js",
"scripts/windows-cleanup.ps1",
"dist"
],
"scripts": {
"preinstall": "node scripts/preinstall.js",
"postinstall": "node postinstall.js",
"prepublishOnly": "node -e \"const fs=require('fs'),path=require('path'); const repoGit=path.join(__dirname,'..','.git'); const inCi=process.env.GITHUB_ACTIONS==='true'||process.env.CI==='true'; if(fs.existsSync(repoGit) && !inCi){ console.error('Refusing to publish from codex-cli. Publishing happens via release.yml.'); process.exit(1);} else { console.log(inCi ? 'CI publish detected.' : 'Publishing staged package...'); }\""
},
"repository": {
"type": "git",
"url": "git+https://github.com/hanzoai/dev.git"
},
"publishConfig": {
"access": "public"
},
"dependencies": {},
"devDependencies": {
"prettier": "^3.3.3"
},
"optionalDependencies": {
"@hanzo/dev-darwin-arm64": "0.6.79",
"@hanzo/dev-darwin-x64": "0.6.79",
"@hanzo/dev-linux-x64-musl": "0.6.79",
"@hanzo/dev-linux-arm64-musl": "0.6.79",
"@hanzo/dev-win32-x64": "0.6.79"
}
}