Skip to content

Commit 086980b

Browse files
committed
Merge origin/bug-3544 with Git validation changes
- Resolved conflicts in core/src/git_info.rs: kept simplified implementation - Resolved conflicts in mcp-server/src/codex_message_processor.rs: kept direct imports - Preserved all Git validation functionality from our clean implementation - Integrated with latest upstream changes including MCP features and TUI improvements
2 parents 2f97df8 + 02f3518 commit 086980b

File tree

476 files changed

+12501
-1397
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

476 files changed

+12501
-1397
lines changed

.github/workflows/codespell.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,4 @@ jobs:
2525
uses: codespell-project/actions-codespell@406322ec52dd7b488e48c1c4b82e2a8b3a1bf630 # v2
2626
with:
2727
ignore_words_file: .codespellignore
28+
skip: frame*.txt

.github/workflows/rust-release.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,12 @@ jobs:
167167
needs: build
168168
name: release
169169
runs-on: ubuntu-latest
170+
permissions:
171+
contents: write
172+
actions: read
173+
outputs:
174+
version: ${{ steps.release_name.outputs.name }}
175+
tag: ${{ github.ref_name }}
170176

171177
steps:
172178
- name: Checkout repository
@@ -220,6 +226,48 @@ jobs:
220226
tag: ${{ github.ref_name }}
221227
config: .github/dotslash-config.json
222228

229+
# Publish to npm using OIDC authentication.
230+
# July 31, 2025: https://github.blog/changelog/2025-07-31-npm-trusted-publishing-with-oidc-is-generally-available/
231+
# npm docs: https://docs.npmjs.com/trusted-publishers
232+
publish-npm:
233+
# Skip this step for pre-releases (alpha/beta).
234+
if: ${{ !contains(needs.release.outputs.version, '-') }}
235+
name: publish-npm
236+
needs: release
237+
runs-on: ubuntu-latest
238+
permissions:
239+
id-token: write # Required for OIDC
240+
contents: read
241+
242+
steps:
243+
- name: Setup Node.js
244+
uses: actions/setup-node@v5
245+
with:
246+
node-version: 22
247+
registry-url: "https://registry.npmjs.org"
248+
scope: "@openai"
249+
250+
# Trusted publishing requires npm CLI version 11.5.1 or later.
251+
- name: Update npm
252+
run: npm install -g npm@latest
253+
254+
- name: Download npm tarball from release
255+
env:
256+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
257+
run: |
258+
set -euo pipefail
259+
version="${{ needs.release.outputs.version }}"
260+
tag="${{ needs.release.outputs.tag }}"
261+
mkdir -p dist/npm
262+
gh release download "$tag" \
263+
--repo "${GITHUB_REPOSITORY}" \
264+
--pattern "codex-npm-${version}.tgz" \
265+
--dir dist/npm
266+
267+
# No NODE_AUTH_TOKEN needed because we use OIDC.
268+
- name: Publish to npm
269+
run: npm publish "${GITHUB_WORKSPACE}/dist/npm/codex-npm-${{ needs.release.outputs.version }}.tgz"
270+
223271
update-branch:
224272
name: Update latest-alpha-cli branch
225273
permissions:

AGENTS.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ In the codex-rs folder where the rust code lives:
44

55
- Crate names are prefixed with `codex-`. For example, the `core` folder's crate is named `codex-core`
66
- When using format! and you can inline variables into {}, always do that.
7+
- Install any commands the repo relies on (for example `just`, `rg`, or `cargo-insta`) if they aren't already available before running instructions here.
78
- Never add or modify any code related to `CODEX_SANDBOX_NETWORK_DISABLED_ENV_VAR` or `CODEX_SANDBOX_ENV_VAR`.
89
- You operate in a sandbox where `CODEX_SANDBOX_NETWORK_DISABLED=1` will be set whenever you use the `shell` tool. Any existing code that uses `CODEX_SANDBOX_NETWORK_DISABLED_ENV_VAR` was authored with this fact in mind. It is often used to early exit out of tests that the author knew you would not be able to run given your sandbox limitations.
910
- Similarly, when you spawn a process using Seatbelt (`/usr/bin/sandbox-exec`), `CODEX_SANDBOX=seatbelt` will be set on the child process. Integration tests that want to run Seatbelt themselves cannot be run under Seatbelt, so checks for `CODEX_SANDBOX=seatbelt` are also often used to early exit out of tests, as appropriate.

codex-cli/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
],
1616
"repository": {
1717
"type": "git",
18-
"url": "git+https://github.com/openai/codex.git"
18+
"url": "git+https://github.com/openai/codex.git",
19+
"directory": "codex-cli"
1920
},
2021
"dependencies": {
2122
"@vscode/ripgrep": "^1.15.14"

codex-rs/Cargo.lock

Lines changed: 41 additions & 47 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

codex-rs/cli/Cargo.toml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,11 @@ tokio = { version = "1", features = [
3636
"signal",
3737
] }
3838
tracing = "0.1.41"
39-
tracing-subscriber = "0.3.19"
39+
tracing-subscriber = "0.3.20"
4040
codex-protocol-ts = { path = "../protocol-ts" }
41+
42+
[dev-dependencies]
43+
assert_cmd = "2"
44+
predicates = "3"
45+
pretty_assertions = "1"
46+
tempfile = "3"

0 commit comments

Comments
 (0)