Commit Graph
298 Commits
Author SHA1 Message Date
GitHub Action bdfa403f42 docs(changelog): update for v0.6.3 [skip ci] 2025-12-12 07:14:51 +00:00
GitHub Action b26f338767 docs(changelog): update for v0.6.2 [skip ci] 2025-12-12 05:25:19 +00:00
James Peter e83acbe131 Merge upstream/main: keep release script, drop contributing doc 2025-12-12 09:34:37 +10:00
dank-openaiandGitHub 6d2f2f392f Fix toasts on Windows under WSL 2 (#7137)
Before this: no notifications or toasts when using Codex CLI in WSL 2.

After this: I get toasts from Codex
2025-12-11 15:09:00 -08:00
Michael BolinandGitHub 99de0ddb4a fix: policy/*.codexpolicy -> rules/*.rules (#7888)
We decided that `*.rules` is a more fitting (and concise) file extension
than `*.codexpolicy`, so we are changing the file extension for the
"execpolicy" effort. We are also changing the subfolder of `$CODEX_HOME`
from `policy` to `rules` to match.

This PR updates the in-repo docs and we will update the public docs once
the next CLI release goes out.

Locally, I created `~/.codex/rules/default.rules` with the following
contents:

```
prefix_rule(pattern=["gh", "pr", "view"])
```

And then I asked Codex to run:

```
gh pr view 7888 --json title,body,comments
```

and it was able to!
2025-12-11 14:46:00 -08:00
Ahmed IbrahimandGitHub e97dcaf69f remove release script (#7885) 2025-12-11 13:40:48 -08:00
Code Snapshot b31bc88a21 auto review baseline snapshot 2025-12-11 17:04:20 +10:00
James Peter a85e36e96a Merge upstream/main: keep local workflow/doc removals 2025-12-11 12:19:17 +10:00
zhao-oaiandGitHub 4976c5ea30 fixing typo in execpolicy docs (#7847) 2025-12-10 16:11:46 -08:00
Eric TrautandGitHub 5bfb025589 Removed experimental "command risk assessment" feature (#7799)
This experimental feature received lukewarm reception during internal
testing. Removing from the code base.
2025-12-10 09:48:11 -08:00
GitHub Action 7ab979aedb docs(changelog): update for v0.6.1 [skip ci] 2025-12-10 06:49:53 +00:00
Josh McKinneyandGitHub 9cd80d6c32 feat(tui2): add feature-flagged tui2 frontend (#7793)
Introduce a new codex-tui2 crate that re-exports the existing
interactive TUI surface and delegates run_main directly to codex-tui.
This keeps behavior identical while giving tui2 its own crate for future
viewport work.

Wire the codex CLI to select the frontend via the tui2 feature flag.
When the merged CLI overrides include features.tui2=true (e.g. via
--enable tui2), interactive runs are routed through
codex_tui2::run_main; otherwise they continue to use the original
codex_tui::run_main.

Register Feature::Tui2 in the core feature registry and add the tui2
crate and dependency entries so the new frontend builds alongside the
existing TUI.

This is a stub that only wires up the feature flag for this.

<img width="619" height="364" alt="image"
src="https://github.com/user-attachments/assets/4893f030-932f-471e-a443-63fe6b5d8ed9"
/>
2025-12-09 16:23:53 -08:00
James Peter e43cf9c6ef Merge upstream/main: sync upstream, keep local workflows 2025-12-10 07:48:21 +10:00
zhao-oaiandGitHub 9aaed723be fix more typos in execpolicy.md (#7787) 2025-12-09 13:23:14 -08:00
gameofbyandGitHub dafb7d808e fix: refine the warning message and docs for deprecated tools config (#7685)
Issue #7661 revealed that users are confused by deprecation warnings
like:
> `tools.web_search` is deprecated. Use `web_search_request` instead.

This message misleadingly suggests renaming the config key from
`web_search` to `web_search_request`, when the actual required change is
to **move and rename the configuration from the `[tools]` section to the
`[features]` section**.

This PR clarifies the warning messages and documentation to make it
clear that deprecated `[tools]` configurations should be moved to
`[features]`. Changes made:
- Updated deprecation warning format in `codex-rs/core/src/codex.rs:520`
to include `[features].` prefix
- Updated corresponding test expectations in
`codex-rs/core/tests/suite/deprecation_notice.rs:39`
- Improved documentation in `docs/config.md` to clarify upfront that
`[tools]` options are deprecated in favor of `[features]`
2025-12-08 01:23:21 -08:00
Robby HeandGitHub d77843a785 fix(doc): TOML otel exporter example — multi-line inline table is inv… (#7669)
…alid (#7668)

The `otel` exporter example in `docs/config.md` is misleading and will
cause
the configuration parser to fail if copied verbatim.

Summary
-------
The example uses a TOML inline table but spreads the inline-table braces
across multiple lines. TOML inline tables must be contained on a single
line
(`key = { a = 1, b = 2 }`); placing newlines inside the braces triggers
a
parse error in most TOML parsers and prevents Codex from starting.

Reproduction
------------
1. Paste the snippet below into `~/.codex/config.toml` (or your project
config).
2. Run `codex` (or the command that loads the config).
3. The process will fail to start with a TOML parse error similar to:

```text
Error loading config.toml: TOML parse error at line 55, column 27
   |
55 | exporter = { otlp-http = {
   |                           ^
newlines are unsupported in inline tables, expected nothing
```

Problematic snippet (as currently shown in the docs)
---------------------------------------------------
```toml
[otel]
exporter = { otlp-http = {
  endpoint = "https://otel.example.com/v1/logs",
  protocol = "binary",
  headers = { "x-otlp-api-key" = "${OTLP_TOKEN}" }
}}
```

Recommended fixes
------------------
```toml
[otel.exporter."otlp-http"]
endpoint = "https://otel.example.com/v1/logs"
protocol = "binary"

[otel.exporter."otlp-http".headers]
"x-otlp-api-key" = "${OTLP_TOKEN}"
```

Or, keep an inline table but write it on one line (valid but less
readable):

```toml
[otel]
exporter = { "otlp-http" = { endpoint = "https://otel.example.com/v1/logs", protocol = "binary", headers = { "x-otlp-api-key" = "${OTLP_TOKEN}" } } }
```
2025-12-08 01:20:23 -08:00
VictorandGitHub bdc31b510b docs: point dev checks to just (#7673)
Update install and contributing guides to use the root justfile helpers
(`just fmt`, `just fix -p <crate>`, and targeted tests) instead of the
older cargo fmt/clippy/test instructions that have been in place since
d832bd0cc2. This matches the justfile relocation to the repo root in
a3bb06866 and the current lint/test workflow for CI (see
`.github/workflows/rust-ci.yml`).
2025-12-06 18:57:08 -08:00
Jay SabvaandGitHub 711482502c docs: Remove experimental_use_rmcp_client from config (#7672)
Removed experimental Rust MCP client option from config.
2025-12-06 16:51:07 -08:00
Jay SabvaandGitHub 0f2f460a80 docs: fix documentation of rmcp client flag (#7665)
## Summary
- Updated the rmcp client flag's documentation in config.md file
- changed it from `experimental_use_rmcp_client` to `rmcp_client`
2025-12-06 10:17:18 -08:00
zhao-oaiandGitHub 995bd80747 fix typo (#7626) 2025-12-04 21:48:15 -08:00
zhao-oaiandGitHub 10a4d50d9e Update execpolicy.md (#7595) 2025-12-04 17:55:42 +00:00
zhao-oaiandGitHub b5c0fcd331 Refactor execpolicy fallback evaluation (#7544)
## Refactor of the `execpolicy` crate

To illustrate why we need this refactor, consider an agent attempting to
run `apple | rm -rf ./`. Suppose `apple` is allowed by `execpolicy`.
Before this PR, `execpolicy` would consider `apple` and `pear` and only
render one rule match: `Allow`. We would skip any heuristics checks on
`rm -rf ./` and immediately approve `apple | rm -rf ./` to run.

To fix this, we now thread a `fallback` evaluation function into
`execpolicy` that runs when no `execpolicy` rules match a given command.
In our example, we would run `fallback` on `rm -rf ./` and prevent
`apple | rm -rf ./` from being run without approval.
2025-12-03 23:39:48 -08:00
zhao-oaiandGitHub 3c73b6f816 whitelist command prefix integration in core and tui (#7033)
this PR enables TUI to approve commands and add their prefixes to an
allowlist:
<img width="708" height="605" alt="Screenshot 2025-11-21 at 4 18 07 PM"
src="https://github.com/user-attachments/assets/56a19893-4553-4770-a881-becf79eeda32"
/>

note: we only show the option to whitelist the command when 
1) command is not multi-part (e.g `git add -A && git commit -m 'hello
world'`)
2) command is not already matched by an existing rule
2025-12-03 23:17:02 -08:00
Ahmed IbrahimandGitHub 323e87b0fd add slash resume (#7302)
`codex resume` isn't that discoverable. Adding it to the slash commands
can help
2025-12-03 11:25:44 -08:00
liamandGitHub c683fec316 Trim history.jsonl when history.max_bytes is set (#6242)
This PR honors the `history.max_bytes` configuration parameter by
trimming `history.jsonl` whenever it grows past the configured limit.
While appending new entries we retain the newest record, drop the oldest
lines to stay within the byte budget, and serialize the compacted file
back to disk under the same lock to keep writers safe.
2025-12-02 14:01:05 -08:00
ef0b18ebdd feat: experimental support for skills.md (#7412)
This change prototypes support for Skills with the CLI. This is an
**experimental** feature for internal testing.

---------

Co-authored-by: Gav Verma <[email protected]>
2025-12-01 20:22:35 -08:00
Kaden GruizengaandGitHub 94d9374dc2 docs: clarify codex max defaults and xhigh availability (#7449)
## Summary
Adds the missing `xhigh` reasoning level everywhere it should have been
documented, and makes clear it only works with `gpt-5.1-codex-max`.

## Changes

* `docs/config.md`

* Add `xhigh` to the official list of reasoning levels with a note that
`xhigh` is exclusive to Codex Max.

* `docs/example-config.md`

* Update the example comment adding `xhigh` as a valid option but only
for Codex Max.

* `docs/faq.md`

  * Update the model recommendation to `GPT-5.1 Codex Max`.
* Mention that users can choose `high` or the newly documented `xhigh`
level when using Codex Max.
2025-12-01 10:46:53 -08:00
GitHub Action a961e4d357 docs(changelog): update for v0.5.15 [skip ci] 2025-11-28 08:16:37 +00:00
GitHub Action 3774ebcda2 docs(changelog): update for v0.5.14 [skip ci] 2025-11-28 07:14:02 +00:00
GitHub Action 55da232d9a docs(changelog): update for v0.5.13 [skip ci] 2025-11-27 13:13:10 +00:00
GitHub Action b990cc5f22 docs(changelog): update for v0.5.12 [skip ci] 2025-11-27 08:53:50 +00:00
GitHub Action acd007f48b docs(changelog): update for v0.5.10 [skip ci] 2025-11-27 04:49:46 +00:00
James Peter a80e568dd1 Merge origin/main: adopt release 0.5.8 metadata 2025-11-27 13:28:00 +10:00
James Peter 5e74970a22 docs: add user guides for auto drive, agents, settings 2025-11-27 12:30:18 +10:00
James Peter 2c3d2de2d0 docs: refresh CLI docs for Every Code rebrand 2025-11-27 11:22:42 +10:00
James Peter fd9171ac72 chore(docs): remove archive folder 2025-11-27 10:30:12 +10:00
James Peter 4a1a545404 index update 2025-11-27 10:20:09 +10:00
James Peter 14bd0d1f17 docs: consolidate user docs and relocate release notes 2025-11-27 10:19:06 +10:00
James Peter b3ed4ddb56 chore(docs): consolidate working notes and simplify layout 2025-11-27 09:35:49 +10:00
James Peter 070f39cf6b chore(docs): drop obsolete experimental and postmortem notes 2025-11-27 09:30:16 +10:00
James Peter cfc9704105 Merge branch 'code-branch-20251126-213608' 2025-11-27 09:28:11 +10:00
James Peter e16e1df29a chore(docs): reorganize working docs and remove old archive 2025-11-27 08:50:34 +10:00
James Peter 486d9b944b chore(docs): tidy markdown layout and sync CLAUDE guidance 2025-11-27 08:18:01 +10:00
James Peter 64aec3242a docs(agents): clarify Windows PATH guidance and error messaging (refs discussion #435) 2025-11-27 08:11:28 +10:00
Eric TrautandGitHub afc6e8a102 Fixes two bugs in example-config.md documentation (#7324)
This PR is a modified version of [a
PR](https://github.com/openai/codex/pull/7316) submitted by @yydrowz3.
* Removes a redundant `experimental_sandbox_command_assessment` flag
* Moves `mcp_oauth_credentials_store` from the `[features]` table, where
it doesn't belong
2025-11-26 09:52:13 -08:00
47e3fb7e05 doc: fix relative links and add tips (#7319)
This PR is a documentation only one which:
- addresses the #7231 by adding a paragraph in `docs/getting-started.md`
in the tips category to encourage users to load everything needed in
their environment
- corrects link referencing in `docs/platform-sandboxing.md` so that the
page link opens at the right section
- removes the explicit heading IDs like {#my-id} in `docs/advanced.md`
which are not supported by GitHub and are **not** rendered in the UI:

<img width="1198" height="849" alt="Screenshot 2025-11-26 at 16 25 31"
src="https://github.com/user-attachments/assets/308d33c3-81d3-4785-a6c1-e9377e6d3ea6"
/>

This caused the following links in `README.md` to not work in `main` but
to work in this branch (you can test by going to
https://github.com/openai/codex/blob/docs/getting-started-enhancement/README.md)
- the MCP link goes straight to the correct section now:

```markdown
  - [**Advanced**](./docs/advanced.md)
  - [Tracing / verbose logging](./docs/advanced.md#tracing--verbose-logging)
  - [Model Context Protocol (MCP)](./docs/advanced.md#model-context-protocol-mcp)
```

---------

Signed-off-by: lionel-oai <[email protected]>
Signed-off-by: lionelchg <[email protected]>
Co-authored-by: lionelchg <[email protected]>
2025-11-26 09:35:08 -08:00
James Peter e7a6816c21 Merge upstream/main: keep local workflows 2025-11-26 13:55:47 +10:00
Gabriel PealandGitHub 6fa7a1b0a3 Allow enterprises to skip upgrade checks and messages (#7213)
This is a feature primarily for enterprises who centrally manage Codex
updates.
2025-11-24 15:04:49 -05:00
Eric TrautandGitHub 5fb23a86c8 Removed streamable_shell from docs (#7235)
This config option no longer exists

Addresses #7207
2025-11-24 11:47:57 -08:00
James Peter f94ad1f8c3 closes #423 2025-11-24 13:43:02 +10:00