add: release script (#96)

* add: release script

* add: src to npm module

* fix: readme

Signed-off-by: Fouad Matin <fouad@openai.com>

---------

Signed-off-by: Fouad Matin <fouad@openai.com>
This commit is contained in:
Fouad Matin
2025-04-16 13:21:22 -07:00
committed by GitHub
parent e8afebac15
commit 3cd31c8e13
5 changed files with 28 additions and 6 deletions

3
.gitignore vendored
View File

@@ -7,6 +7,9 @@ build/
out/
storybook-static/
# ignore README for publishing
codex-cli/README.md
# editor
.vscode/
.idea/

View File

@@ -371,6 +371,21 @@ git push --force-with-lease # updates the PR
The **DCO check** blocks merges until every commit in the PR carries the footer (with squash this is just the one).
### Releasing `codex`
To publish a new version of the CLI, run the release scripts defined in `codex-cli/package.json`:
1. Open the `codex-cli` directory
2. Make sure you're on a branch like `git checkout -b bump-version`
3. Bump the version and `CLI_VERSION` to current datetime: `npm run release:version`
4. Commit the version bump (with DCO sign-off):
```bash
git add codex-cli/src/utils/session.ts codex-cli/package.json
git commit -s -m "chore(release): codex-cli v$(node -p \"require('./codex-cli/package.json').version\")"
```
5. Copy README, build, and publish to npm: `npm run release`
6. Push to branch: `git push origin HEAD`
---
## Security &amp; Responsible AI

View File

@@ -1,7 +1,6 @@
{
"private": true,
"name": "@openai/codex",
"version": "0.1.04160940",
"version": "0.1.04161241",
"license": "Apache-2.0",
"bin": {
"codex": "dist/cli.js"
@@ -20,10 +19,15 @@
"test:watch": "vitest --watch",
"typecheck": "tsc --noEmit",
"build": "node build.mjs",
"build:dev": "NODE_ENV=development node build.mjs --dev && NODE_OPTIONS=--enable-source-maps node dist/cli-dev.js"
"build:dev": "NODE_ENV=development node build.mjs --dev && NODE_OPTIONS=--enable-source-maps node dist/cli-dev.js",
"release:readme": "cp ../README.md ./README.md",
"release:version": "codex -a full-auto 'update the CLI_VERSION in codex-cli/src/utils/session.ts and the version in package.json to use the current timestamp (MMDDHHmm format)'",
"release": "npm run release:readme && npm run build && npm publish"
},
"files": [
"dist"
"README.md",
"dist",
"src"
],
"dependencies": {
"@inkjs/ui": "^2.0.0",

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env -S NODE_OPTIONS=--no-deprecation node
#!/usr/bin/env node
import type { AppRollout } from "./app";
import type { CommandConfirmation } from "./utils/agent/agent-loop";

View File

@@ -1,4 +1,4 @@
export const CLI_VERSION = "0.1.04160940"; // Must be in sync with package.json.
export const CLI_VERSION = "0.1.04161241"; // Must be in sync with package.json.
export const ORIGIN = "codex_cli_ts";
export type TerminalChatSession = {