Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
107 commits
Select commit Hold shift + click to select a range
63942b8
feat(tui2): tune scrolling inpu based on (#8357)
joshka-oai Dec 20, 2025
987dd7f
Chore: remove rmcp feature and exp flag usages (#8087)
shijie-oai Dec 20, 2025
fab1ded
Remove plan from system skills (#8374)
gverma-openai Dec 21, 2025
9944caa
core: strengthen ask_user_question guidance
Ixe1 Dec 21, 2025
de86a31
release: bump versions to 0.1.4
Ixe1 Dec 21, 2025
e06da63
plan: refine plan mode + variants prompts
Ixe1 Dec 21, 2025
d281bcf
Point skills docs to developer documentation site (#8407)
etraut-openai Dec 22, 2025
aa83d7d
fix: do not panic on alphas (#8406)
aibrahim-oai Dec 22, 2025
4dec6ab
core: add web UI quality bar instructions
Ixe1 Dec 22, 2025
99cbba8
Update ghost_commit flag reference to undo (#8091)
charlie-openai Dec 22, 2025
3c353a3
test(tui2): re-enable ANSI for VT100 tests (#8423)
joshka-oai Dec 22, 2025
4e6d6cd
fix(tui2): constrain transcript mouse selection bounds (#8419)
joshka-oai Dec 22, 2025
7a8407b
chore: un-ship undo (#8424)
jif-oai Dec 22, 2025
372de6d
docs: add `developer_instructions` config option and update descripti…
448523760 Dec 22, 2025
45727b9
chore: drop undo from the docs (#8431)
jif-oai Dec 22, 2025
5a0b5d1
chore(deps): bump peter-evans/create-pull-request from 7 to 8 (#8410)
dependabot[bot] Dec 22, 2025
334dbe5
chore(deps): bump test-log from 0.2.18 to 0.2.19 in /codex-rs (#8412)
dependabot[bot] Dec 22, 2025
6c84709
chore(deps): bump landlock from 0.4.2 to 0.4.4 in /codex-rs (#8413)
dependabot[bot] Dec 22, 2025
8d5ab97
chore(deps): bump clap from 4.5.47 to 4.5.53 in /codex-rs (#8414)
dependabot[bot] Dec 22, 2025
b24b788
chore(deps): bump openssl-sys from 0.9.109 to 0.9.111 in /codex-rs (#…
dependabot[bot] Dec 22, 2025
33e1d08
feat(windows) start powershell in utf-8 mode (#7902)
dylan-hurd-oai Dec 22, 2025
96fdbdd
Add ExecPolicyManager (#8349)
pakrym-oai Dec 22, 2025
8ff16a7
feat: support in-repo .codex/config.toml entries as sources of config…
bolinfest Dec 22, 2025
314937f
feat: add support for project_root_markers in config.toml (#8359)
bolinfest Dec 22, 2025
0237459
Handle concatenation nodes in bash command parser for exec policy (#8…
ivanmurashko Dec 22, 2025
7809e36
Update models.json (#8446)
github-actions[bot] Dec 22, 2025
d65fe38
use a junction for the cwd while read ACLs are being applied (#8444)
iceweasel-oai Dec 22, 2025
6b2ef21
remove minimal client version (#8447)
aibrahim-oai Dec 22, 2025
8e900c2
chore: add ConfigLayerStack as a field of Config (#8448)
bolinfest Dec 22, 2025
4673090
feat: open prompt in configured external editor (#7606)
sayan-oai Dec 22, 2025
7d0c5c7
fix(tui2): copy transcript selection outside viewport (#8449)
joshka-oai Dec 22, 2025
f6275a5
chore(tui): include tracing targets in file logs (#8418)
joshka-oai Dec 22, 2025
14dbd06
chore: include User layer in ConfigLayerStack even if config.toml is …
bolinfest Dec 23, 2025
277babb
feat: load ExecPolicyManager from ConfigLayerStack (#8453)
bolinfest Dec 23, 2025
414fbe0
feat(tui2): add copy selection shortcut + UI affordance (#8462)
joshka-oai Dec 23, 2025
e27d9bd
feat: honor /etc/codex/config.toml (#8461)
bolinfest Dec 23, 2025
310f211
fix(tui2): fix screen corruption (#8463)
joshka-oai Dec 23, 2025
cbc5fb9
chore: save more about turn context in rollout log file (#8458)
apanasenko-oai Dec 23, 2025
2828549
fix(tui2): start transcript selection on drag (#8466)
joshka-oai Dec 23, 2025
b337edb
plan: allow web search in /plan
Ixe1 Dec 23, 2025
93d95f1
changelog: update unreleased
Ixe1 Dec 23, 2025
ee62efc
tui: update status snapshots for v0.1.4
Ixe1 Dec 23, 2025
de6328f
core: inject SpawnSubagent guidance for exec
Ixe1 Dec 23, 2025
53eb2e9
[tui] add optional details to TUI status header (#8293)
sayan-oai Dec 23, 2025
0130a2f
feat(tui2): add multi-click transcript selection (#8471)
joshka-oai Dec 23, 2025
f2b740c
fix(codex-cli): improve ripgrep download diagnostics (#8486)
joshka-oai Dec 23, 2025
fb24c47
fix: limit output size for exec command in unified exec (#8460)
shijie-oai Dec 23, 2025
f70179d
Plan mode: add plan_explore subagent exploration
Ixe1 Dec 23, 2025
972b585
fix: fix test that was writing temp file to cwd instead of TMPDIR (#8…
bolinfest Dec 23, 2025
40de81e
Remove reasoning format (#8484)
aibrahim-oai Dec 24, 2025
a2f77f4
checkpoint: pre explore-model + cancelled subagents
Ixe1 Dec 24, 2025
96a65ff
perf(tui): cap redraw scheduling to 60fps (#8499)
joshka-oai Dec 24, 2025
e61bae1
feat: introduce codex-utils-cargo-bin as an alternative to assert_cmd…
bolinfest Dec 24, 2025
38de0a1
fix: declare test path relative to `$CARGO_MANIFEST_DIR` (#8498)
bolinfest Dec 24, 2025
d7ef549
Add /explore-model and cancel subagents on abort
Ixe1 Dec 24, 2025
ef75477
Fix app-server OverrideTurnContext init
Ixe1 Dec 24, 2025
37b9d0c
Persist interrupted turn history on resume
Ixe1 Dec 24, 2025
3d1726e
tui: prompt to continue on interrupted resume
Ixe1 Dec 24, 2025
a3a4c34
tui: keep resume options visible on small terminals
Ixe1 Dec 24, 2025
ec60046
changelog: update unreleased for v0.1.4
Ixe1 Dec 24, 2025
6f56d27
Add /subagent-model override
Ixe1 Dec 24, 2025
bf73260
[chore] add additional_details to StreamErrorEvent + wire through (#8…
sayan-oai Dec 24, 2025
46c508f
Add mini/explorer subagents and UI badges
Ixe1 Dec 24, 2025
810ebe0
fix: restrict windows-sys to Windows target (#8522)
RunjiLiu Dec 25, 2025
4c24427
Plan exploration: mini subagents + mini_subagent_* config
Ixe1 Dec 25, 2025
9c9f30a
Fix subagent badges
Ixe1 Dec 26, 2025
804dbba
feat: add experimental LSP diagnostics and navigation
Ixe1 Dec 26, 2025
ebe1526
tui: show LSP toggle in /experimental
Ixe1 Dec 26, 2025
9c482e9
codex-lsp: autodetect .cmd language servers on Windows
Ixe1 Dec 26, 2025
feb5166
codex-core: prefer LSP tools over rg via developer instructions
Ixe1 Dec 26, 2025
76f3b1f
lsp: normalize paths and clarify tool docs
Ixe1 Dec 26, 2025
b2e2593
tui: surface lsp tool calls in history
Ixe1 Dec 26, 2025
990d916
lsp: prewarm workspace and configured servers
Ixe1 Dec 26, 2025
f955df7
lsp: prewarm autodetected servers
Ixe1 Dec 26, 2025
dda269e
core: enable LSP prompt diagnostics by default
Ixe1 Dec 26, 2025
7288878
LSP: enable publishDiagnostics and show apply_patch diagnostics in TUI
Ixe1 Dec 26, 2025
a0f0b76
TUI: render apply_patch diagnostics as styled card
Ixe1 Dec 27, 2025
a74d2d8
TUI: avoid false interrupted prompt on resume
Ixe1 Dec 27, 2025
71290ad
Prefer mini subagents for repo exploration
Ixe1 Dec 27, 2025
915665c
Tighten mini subagent exploration guidance
Ixe1 Dec 27, 2025
9db5105
changelog: update unreleased
Ixe1 Dec 27, 2025
782c8b9
tui: drop /explore-model; add /experimental to tui2
Ixe1 Dec 27, 2025
e61f8f4
changelog: update unreleased
Ixe1 Dec 27, 2025
5ade034
lsp: autodetect PHP and Perl servers
Ixe1 Dec 27, 2025
87b32dc
tui: default AskUserQuestion review selection to Submit
Ixe1 Dec 27, 2025
0af264e
changelog: update unreleased
Ixe1 Dec 27, 2025
539caa7
Ignore tmp/lsp-smoke LSP test files
Ixe1 Dec 27, 2025
3ba39bc
Add LSP status command and improve /lsp UI
Ixe1 Dec 27, 2025
12adf0f
codex-lsp: add C# language support
Ixe1 Dec 27, 2025
ce3ff29
chore(deps): bump toml_edit from 0.23.7 to 0.24.0+spec-1.1.0 in /code…
dependabot[bot] Dec 30, 2025
4313e0a
chore(deps): bump tracing-subscriber from 0.3.20 to 0.3.22 in /codex-…
dependabot[bot] Dec 30, 2025
a48904d
chore(deps): bump tokio from 1.47.1 to 1.48.0 in /codex-rs (#8597)
dependabot[bot] Dec 30, 2025
13c42a0
chore(deps): bump regex-lite from 0.1.7 to 0.1.8 in /codex-rs (#8598)
dependabot[bot] Dec 30, 2025
0c52ff0
lsp: handle server requests and pull diagnostics
Ixe1 Dec 31, 2025
3dd3b64
Merge upstream/main into Codexel
Ixe1 Jan 1, 2026
345a9b9
chore: update changelog
Ixe1 Jan 1, 2026
320b396
docs: note Codexel release tag format
Ixe1 Jan 1, 2026
695c91b
chore: make changelog generator prettier-stable
Ixe1 Jan 1, 2026
8c76264
chore(app-server): drop unused os_info dev-dependency
Ixe1 Jan 1, 2026
bddcec5
fix(lsp): respect max_tool_diagnostics and avoid leaked servers
Ixe1 Jan 1, 2026
b674b55
tui: parse LSP diagnostics entries with colons
Ixe1 Jan 1, 2026
0c0a6ec
lsp: seed diagnostics by opening a source file
Ixe1 Jan 1, 2026
aa2eef4
tui: make /diagnostics open changed files
Ixe1 Jan 1, 2026
043d9f3
tui: remove /diagnostics
Ixe1 Jan 1, 2026
a499991
lsp: wait for diagnostics during warmup; show pull-diags capability
Ixe1 Jan 1, 2026
bd002e7
chore: regenerate changelog
Ixe1 Jan 2, 2026
eeecb90
Fix BackTab hint and changelog escaping
Ixe1 Jan 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/rust-release-prepare.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
curl --http1.1 --fail --show-error --location "${headers[@]}" "${url}" | jq '.' > codex-rs/core/models.json

- name: Open pull request (if changed)
uses: peter-evans/create-pull-request@v7
uses: peter-evans/create-pull-request@v8
with:
commit-message: "Update models.json"
title: "Update models.json"
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ dist/
build/
out/
storybook-static/
/codex-rs/**/target-test/

# ignore README for publishing
codex-cli/README.md
Expand Down Expand Up @@ -68,6 +69,9 @@ coverage/
personal/
.codexel/

# lsp smoke files (temporary)
tmp/lsp-smoke/

# os
.DS_Store
Thumbs.db
Expand Down
12 changes: 12 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@ In the `codex-rs` folder where the Rust code lives:
- When cutting a release, update the release and upstream baseline SHAs in `CHANGELOG.md`,
then rerun the generator.

## Releases (Codexel vs codex-rs)

- Codexel release tags that trigger the publishing workflows use `codexel-vX.Y.Z` (for example `codexel-v0.1.4`).
- The upstream `codex-rs` Rust release workflow uses `rust-vX.Y.Z` tags.
- A plain `vX.Y.Z` tag exists historically in this repo, but does not match those workflow triggers.

## Formatting, lint, tests

Run `just fmt` (in `codex-rs` directory) automatically after making Rust code changes; do not ask for approval to run it.
Expand Down Expand Up @@ -105,6 +111,12 @@ If you don’t have the tool:
- Prefer deep equals comparisons whenever possible. Perform `assert_eq!()` on entire objects, rather than individual fields.
- Avoid mutating process environment in tests; prefer passing environment-derived flags or dependencies from above.

### Spawning workspace binaries in tests (Cargo vs Buck2)

- Prefer `codex_utils_cargo_bin::cargo_bin("...")` over `assert_cmd::Command::cargo_bin(...)` or `escargot` when tests need to spawn first-party binaries.
- Under Buck2, `CARGO_BIN_EXE_*` may be project-relative (e.g. `buck-out/...`), which breaks if a test changes its working directory. `codex_utils_cargo_bin::cargo_bin` resolves to an absolute path first.
- When locating fixture files under Buck2, avoid `env!("CARGO_MANIFEST_DIR")` (Buck codegen sets it to `"."`). Prefer deriving paths from `codex_utils_cargo_bin::buck_project_root()` when needed.

### Integration tests (core)

- Prefer the utilities in `core_test_support::responses` when writing end-to-end Codex tests.
Expand Down
114 changes: 105 additions & 9 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,110 @@ edited between the markers.

### Highlights

- _No fork-only changes yet._
- Resume: add turn-resume with persisted interrupted history, plus a guided prompt and usable options on small terminals.
- Agents: add `/subagent-model`, prefer mini subagents for repo exploration, and cancel spawned subagents on abort.
- Plan Mode: add `plan_explore` subagent exploration and allow `/plan` web search (when enabled).
- Plan Mode: switch `/plan` exploration to mini subagents; add `mini_subagent_*` config and deprecate `explore_model*`.
- TUI: remove `/explore-model`; add `/experimental` to TUI2.
- Core: strengthen `ask_user_question` guidance and inject SpawnSubagent guidance for execution.
- Experimental: add LSP diagnostics + navigation (autodetecting common servers like `rust-analyzer`, `gopls`, `pyright-langserver`, and `typescript-language-server`).
- Packaging/CI: add Homebrew cask workflow + macOS artifacts, and harden workflow conditionals/YAML formatting.

### Details

<!-- BEGIN GENERATED DETAILS: range=44f8df17aa11051fcf3919a9c16fe3b9c3296d66..HEAD -->

_No fork-only changes yet._
#### Features

- feat: add experimental LSP diagnostics and navigation

#### Fixes

- Fix YAML heredoc indentation
- Fix rust-ci job if expressions
- Fix workflows: avoid secrets in if
- Fix app-server OverrideTurnContext init
- Fix subagent badges
- fix(lsp): respect `max_tool_diagnostics` and avoid leaked servers

#### Documentation

- docs: keep README ASCII-only
- docs: prettier
- docs: note Codexel release tag format

#### TUI

- tui: update status snapshots for v0.1.4
- tui: prompt to continue on interrupted resume
- tui: keep resume options visible on small terminals
- tui: show LSP toggle in /experimental
- tui: surface lsp tool calls in history
- TUI: render `apply_patch` diagnostics as styled card
- TUI: avoid false interrupted prompt on resume
- tui: drop /explore-model; add /experimental to tui2
- tui: default AskUserQuestion review selection to Submit
- tui: parse LSP diagnostics entries with colons
- tui: make /diagnostics open changed files
- tui: remove /diagnostics

#### Core

- core: strengthen `ask_user_question` guidance
- core: add web UI quality bar instructions
- core: inject SpawnSubagent guidance for exec
- core: enable LSP prompt diagnostics by default

#### Plan Mode

- plan: refine plan mode + variants prompts
- plan: allow web search in /plan
- Plan mode: add `plan_explore` subagent exploration
- Plan exploration: mini subagents + `mini_subagent_*` config

#### Branding & Packaging

- codex-cli: bump codexel npm version to 0.1.3
- Merge upstream/main into Codexel

#### Chores

- chore: update changelog
- chore: make changelog generator prettier-stable
- chore(app-server): drop unused `os_info` dev-dependency
- chore: regenerate changelog

#### Other

- changelog: update 0.1.3 for upstream merge
- Add Homebrew cask workflow and macOS artifacts
- Use macos-15-intel for `x86_64` builds
- release: bump versions to 0.1.4
- changelog: update unreleased
- checkpoint: pre explore-model + cancelled subagents
- Add /explore-model and cancel subagents on abort
- Persist interrupted turn history on resume
- changelog: update unreleased for v0.1.4
- Add /subagent-model override
- Add mini/explorer subagents and UI badges
- codex-lsp: autodetect .cmd language servers on Windows
- codex-core: prefer LSP tools over rg via developer instructions
- lsp: normalize paths and clarify tool docs
- lsp: prewarm workspace and configured servers
- lsp: prewarm autodetected servers
- LSP: enable publishDiagnostics and show `apply_patch` diagnostics in TUI
- Prefer mini subagents for repo exploration
- Tighten mini subagent exploration guidance
- changelog: update unreleased
- changelog: update unreleased
- lsp: autodetect PHP and Perl servers
- changelog: update unreleased
- Ignore tmp/lsp-smoke LSP test files
- Add LSP status command and improve /lsp UI
- codex-lsp: add C# language support
- lsp: handle server requests and pull diagnostics
- lsp: seed diagnostics by opening a source file
- lsp: wait for diagnostics during warmup; show pull-diags capability
<!-- END GENERATED DETAILS -->

## [0.1.3] - 2025-12-20
Expand Down Expand Up @@ -51,7 +147,7 @@ Release commit: 44f8df17aa11051fcf3919a9c16fe3b9c3296d66
#### Documentation

- docs: clarify Codexel fork positioning
- docs: move What's different up and mention ask_user_question
- docs: move What's different up and mention `ask_user_question`

#### TUI

Expand Down Expand Up @@ -85,14 +181,14 @@ Release commit: 44f8df17aa11051fcf3919a9c16fe3b9c3296d66
- Skip macOS rust-ci jobs on PRs
- Skip upstream npm staging in CI for forks
- Format markdown and workflow files
- Add spawn_subagent tool
- Show spawn_subagent tool calls in history
- Add `spawn_subagent` tool
- Show `spawn_subagent` tool calls in history
- subagent: stream token counts
- release: bump workspace version to 0.1.3
- changelog: cut 0.1.3
- changelog: update unreleased
- changelog: update
- Require spawn_subagent description and refresh snapshots
- Require `spawn_subagent` description and refresh snapshots
- changelog: fix 0.1.3 release ranges
- Merge upstream/main into v0.1.3
- changelog: filter upstream commits in generator
Expand Down Expand Up @@ -191,7 +287,7 @@ Release commit: 3e57f558eff5b400292a6ad3c9df2721648aed6f

#### Fixes

- fix(tui2): drop disabled_reason from ask_user_question rows
- fix(tui2): drop `disabled_reason` from `ask_user_question` rows

#### Documentation

Expand All @@ -206,7 +302,7 @@ Release commit: 3e57f558eff5b400292a6ad3c9df2721648aed6f
- tui: auto-execute approved plans
- tui: polish plan-variants progress
- tui: fix /plan cursor position
- tui: add review step for ask_user_question
- tui: add review step for `ask_user_question`
- tui: taller plan approval overlay and wrapped summary
- tui: make Plan Mode placeholder generic

Expand Down Expand Up @@ -244,5 +340,5 @@ Release commit: 3e57f558eff5b400292a6ad3c9df2721648aed6f

#### Other

- Add ask_user_question tool
- Add `ask_user_question` tool
<!-- END GENERATED DETAILS -->
4 changes: 2 additions & 2 deletions codex-cli/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion codex-cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@ixe1/codexel",
"version": "0.1.3",
"version": "0.1.4",
"license": "Apache-2.0",
"bin": {
"codexel": "bin/codexel.js"
Expand Down
Loading
Loading