Commit Graph
317 Commits
Author SHA1 Message Date
GitHub Action bfbbf8c620 docs(changelog): update for v0.6.10 [skip ci] 2025-12-18 09:24:43 +00:00
GitHub Action 4beb858fad docs(changelog): update for v0.6.9 [skip ci] 2025-12-18 07:24:48 +00:00
James Peter d7b218a8f3 Merge branch 'code-branch-20251217-230845' 2025-12-18 15:59:23 +10:00
James Peter cb87fbefe4 feat(tui/cards): set ANSI-16 card backgrounds
When PaletteMode::Ansi16, render tool cards with solid ANSI backgrounds and force high-contrast text (white on dark, black on light).

Mappings:
- Auto Drive: magenta / light magenta
- Agent (read): green / light green
- Agent (write): yellow / light yellow
- Browser: red / light red

Also extend /demo to accept 'auto drive card' for quickly previewing all ANSI-16 backgrounds.
2025-12-18 15:52:59 +10:00
GitHub Action 9677ea024d docs(changelog): update for v0.6.8 [skip ci] 2025-12-18 00:03:40 +00:00
James Peter e7227b72d2 feat(agents): make gemini-3-flash the default
Replace gemini-2.5-flash with gemini-3-flash and treat gemini as the primary Gemini alias.

Update docs, examples, and legacy upgrade paths.
2025-12-18 09:00:29 +10:00
GitHub Action 51093670a3 docs(changelog): update for v0.6.7 [skip ci] 2025-12-17 10:59:29 +00:00
James Peter a84d11c1e1 Merge upstream/main: keep local workflows; adopt upstream metadata 2025-12-17 13:24:24 +10:00
Michael BolinandGitHub b311ddec91 feat: if .codex is a sub-folder of a writable root, then make it read-only to the sandbox (#8088)
In preparation for in-repo configuration support, this updates
`WritableRoot::get_writable_roots_with_cwd()` to include the `.codex`
subfolder in `WritableRoot.read_only_subpaths`, if it exists, as we
already do for `.git`.

As noted, currently, like `.git`, `.codex` will only be read-only under
macOS Seatbelt, but we plan to bring support to other OSes, as well.

Updated the integration test in `seatbelt.rs` so that it actually
attempts to run the generated Seatbelt commands, verifying that:

- trying to write to `.codex/config.toml` in a writable root fails
- trying to write to `.git/hooks/pre-commit` in a writable root fails
- trying to write to the writable root containing the `.codex` and
`.git` subfolders succeeds
2025-12-15 22:54:43 -08:00
Lucas KimandGitHub 2e8d7bd41d docs: fix gpt-5.2 typo in config.md (#8079)
Fix small typo in docs/config.md: `gpt5-2` -> `gpt-5.2`
2025-12-15 15:15:14 -08:00
Eric TrautandGitHub 9e0f832877 Fixed formatting issue (#8069) 2025-12-15 06:18:33 -08:00
Mikhail BeliakovandGitHub af7fd7e475 Update config.md (#8066)
Update supporting docs with the actual options
2025-12-15 06:12:52 -08:00
jif-oaiandGitHub 138d6ca3f3 feat: config ghost commits (#7873) 2025-12-15 09:13:06 +01:00
GitHub Action 6ce9643223 docs(changelog): update for v0.6.6 [skip ci] 2025-12-15 02:06:21 +00:00
James Peter 613ae91a34 docs(readme): add Auto Review video thumbnail 2025-12-15 11:14:04 +10:00
Victor VannaraandGitHub 0b301ab88a docs: document enabling experimental skills (#8024)
## Notes

Skills are behind the experimental `skills` feature flag (disabled by
default), but the skills guide didn't explain how to turn them on.

- Add an explicit enable section to `docs/skills.md` (config +
`--enable`)
- Add the skills flag to `docs/config.md` and `docs/example-config.md`
- Document the `/skills` slash command
2025-12-14 14:34:22 -08:00
James Peter 0f94f92f5c Merge upstream/main: refresh mirror and keep fork defaults 2025-12-15 06:56:16 +10:00
GitHub Action 8c0890f4bf docs(changelog): update for v0.6.4 [skip ci] 2025-12-13 03:33:31 +00:00
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
Victor VannaraandGitHub 44f26ffc14 docs: clarify xhigh reasoning effort on gpt-5.2 (#7911)
## Changes
- Update config docs and example config comments to state that "xhigh"
is supported on gpt-5.2 as well as gpt-5.1-codex-max
- Adjust the FAQ model-support section to reflect broader xhigh
availability
2025-12-11 21:18:47 -08: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