Commit Graph

6958 Commits

Author SHA1 Message Date
Michael Bolin
af40fe7abc merge commit for archive created by Sapling 2026-02-01 22:35:22 -08:00
Michael Bolin
989b5a647d Fix clippy in app-server schema fixture test
Motivation:
- `cargo clippy --tests` is run in CI with `-D clippy::expect-used`; the new schema fixture test used `expect()`.

What changed:
- Convert test helpers to return `anyhow::Result` and add context instead of using `expect()`.

Refs: 3b069fda39 (schema fixture vendoring commit)
2026-02-01 22:28:28 -08:00
Michael Bolin
dfe883c9ef merge commit for archive created by Sapling 2026-02-01 22:23:03 -08:00
Michael Bolin
3b069fda39 Vendor app-server protocol schema fixtures
Motivation:
- Keep `codex app-server` protocol artifacts (TypeScript + JSON Schema) checked in for consumers (e.g. IDE integrations) and make changes reviewable.
- Prevent drift between generated output (`codex app-server generate-ts` / `codex app-server generate-json-schema`) and what is vendored in the repo.

What changed:
- Vendor generated artifacts under `codex-rs/app-server-protocol/schema/typescript/` and `codex-rs/app-server-protocol/schema/json/`.
- Add `just write-app-server-schema` to fully regenerate fixtures (including deleting stale files).
- Add a fixture sync test for `codex-app-server-protocol` to assert the vendored trees match freshly generated output.
- Canonicalize JSON schema output (sorted object keys) for deterministic diffs.
- Wire Bazel test data so remote tests can read the vendored fixtures.

Refs: openai/codex#8956 (config.schema.json vendoring + sync test pattern)
2026-02-01 22:22:25 -08:00
Michael Bolin
e3a75d8288 merge commit for archive created by Sapling 2026-02-01 21:35:11 -08:00
Michael Bolin
2063d61273 chore: remove deprecated mcp-types crate 2026-02-01 21:27:38 -08:00
Michael Bolin
dbb97b1ce9 feat: migrate MCP implementation from mcp-types to rmcp
***
feat: add MCP protocol types and rmcp adapters
2026-02-01 21:27:38 -08:00
Michael Bolin
1ccba470cb merge commit for archive created by Sapling 2026-02-01 21:07:03 -08:00
Dylan Hurd
6c22360bcb fix(core) Deduplicate prefix_rules before appending (#10309)
## Summary
We ideally shouldn't make it to this point in the first place, but if we
do try to append a rule that already exists, we shouldn't append the
same rule twice.

## Testing
- [x] Added unit test for this case
2026-02-01 20:30:38 -08:00
Michael Bolin
db4a855318 chore: remove deprecated mcp-types crate 2026-02-01 19:58:08 -08:00
Michael Bolin
cffa4bc4fe feat: migrate MCP implementation from mcp-types to rmcp
***
feat: add MCP protocol types and rmcp adapters
2026-02-01 19:58:08 -08:00
Michael Bolin
d8e2e706eb merge commit for archive created by Sapling 2026-02-01 19:50:57 -08:00
Michael Bolin
cecd6caccf feat: add MCP protocol types (ts/JsonSchema friendly) 2026-02-01 19:44:58 -08:00
Michael Bolin
dbf41653da chore: remove deprecated mcp-types crate 2026-02-01 19:44:58 -08:00
Michael Bolin
8ce41a48e5 feat: migrate MCP implementation from mcp-types to rmcp
***
feat: add MCP protocol types and rmcp adapters
2026-02-01 19:44:58 -08:00
Michael Bolin
e34851baf0 merge commit for archive created by Sapling 2026-02-01 19:13:42 -08:00
Michael Bolin
dae183ce3f chore: remove deprecated mcp-types crate 2026-02-01 19:08:53 -08:00
Michael Bolin
c14c2ce6a0 feat: migrate MCP implementation from mcp-types to rmcp 2026-02-01 19:08:53 -08:00
Michael Bolin
5e9ceccc40 feat: add MCP protocol types and rmcp adapters 2026-02-01 19:08:53 -08:00
pakrym-oai
03fcd12e77 Do not append items on override turn context (#10354) 2026-02-01 18:51:26 -08:00
Michael Bolin
1150e6159d merge commit for archive created by Sapling 2026-02-01 18:37:22 -08:00
Michael Bolin
56c918e49d feat: replace custom mcp-types crate with equivalents from rmcp 2026-02-01 18:34:27 -08:00
Dylan Hurd
8b95d3e082 fix(rules) Limit rules listed in conversation (#10351)
## Summary
We should probably warn users that they have a million rules, and help
clean them up. But for now, we should handle this unbounded case.

Limit rules listed in conversations, with shortest / broadest rules
first.

## Testing
- [x] Updated unit tests
2026-02-02 02:26:15 +00:00
Gav Verma
5fb46187b2 fix: System skills marker includes nested folders recursively (#10350)
Updated system skills bundled with Codex were not correctly replacing
the user's skills in their .system folder.

- Fix `.codex-system-skills.marker` not updating by hashing embedded
system skills recursively (nested dirs + file contents), so updates
trigger a reinstall.
- Added a build Cargo hook to rerun if there are changes in
`src/skills/assets/samples/*`, ensuring embedded skill updates rebuild
correctly under caching.
- Add a small unit test to ensure nested entries are included in the
fingerprint.
2026-02-01 18:17:32 -08:00
Michael Bolin
1f5096977b merge commit for archive created by Sapling 2026-02-01 17:56:56 -08:00
Michael Bolin
223cb55475 feat: replace custom mcp-types crate with equivalents from rmcp 2026-02-01 17:56:35 -08:00
Michael Bolin
b1ff6bc812 Merge 136c14de8c into sapling-pr-archive-bolinfest 2026-02-01 17:03:33 -08:00
Michael Bolin
136c14de8c feat: replace custom mcp-types crate with equivalents from rmcp 2026-02-01 17:03:29 -08:00
Michael Bolin
bbf2e51945 Merge fb6e94fb5b into sapling-pr-archive-bolinfest 2026-02-01 17:01:16 -08:00
Michael Bolin
fb6e94fb5b feat: replace custom mcp-types crate with equivalents from rmcp 2026-02-01 17:01:11 -08:00
Michael Bolin
792907925c Merge b5231ea6d1 into sapling-pr-archive-bolinfest 2026-02-01 16:04:43 -08:00
Michael Bolin
b5231ea6d1 feat: replace custom mcp-types crate with equivalents from rmcp 2026-02-01 16:04:37 -08:00
Charley Cunningham
d3514bbdd2 Bump thread updated_at on unarchive to refresh sidebar ordering (#10280)
## Summary
- Touch restored rollout files on `thread/unarchive` so `updatedAt`
reflects the unarchive time.
- Add a regression test to ensure unarchiving bumps `updated_at` from an
old mtime.

## Notes
This fixes the UX issue where unarchived old threads don’t reappear near
the top of recent threads.
2026-02-01 12:53:47 -08:00
Michael Bolin
d64525bf07 merge commit for archive created by Sapling 2026-02-01 09:01:33 -08:00
Michael Bolin
f94bcf0796 chore: remove duplicate mcp-types declaration in Cargo.toml 2026-02-01 09:01:20 -08:00
Michael Bolin
a383d64f37 merge commit for archive created by Sapling 2026-02-01 08:59:52 -08:00
Michael Bolin
d11ca91487 chore: remove duplicate mcp-types declaration in Cargo.toml 2026-02-01 08:59:43 -08:00
Charley Cunningham
3dd9a37e0b Improve plan mode interaction rules (#10329)
## Summary
- Replace the “Hard interaction rule” with a clearer “Response
constraints” section that enumerates the allowed exceptions for Plan
Mode replies.
- Remove the stray Phase 1 exception line about simple questions.
- Update plan content requirements to ask for a brief summary section
and generalize API/type wording.
2026-01-31 23:20:27 -08:00
Dylan Hurd
ae4eeff440 fix(config) config schema newline (#10323)
## Summary
Looks like we may have introduced a formatting issue in recent PRs.

## Testing
- [x] ran `just write-config-schema`
2026-02-01 05:08:29 +00:00
Gav Verma
e470461a96 Sync system skills from public repo for openai yaml changes (#10322)
Follow-up to https://github.com/openai/codex/pull/10320

Syncing additional changes from
https://github.com/openai/skills/tree/main/skills/.system
2026-01-31 21:07:35 -08:00
Gav Verma
dfba95309f Sync system skills from public repo (#10320)
Syncs the system skills included in Codex with the updates in
https://github.com/openai/skills/tree/main/skills/.system
2026-01-31 20:44:18 -08:00
Dylan Hurd
11c912c4af chore(features) Personality => Stable (#10310)
## Summary
Bump `/personality` to stable

## Testing
 - [x] unit tests pass
2026-01-31 20:32:32 -08:00
Dylan Hurd
a33fa4bfe5 chore(config) Rename config setting to personality (#10314)
## Summary
Let's make the setting name consistent with the SlashCommand!

## Testing
- [x] Updated tests
2026-01-31 19:38:06 -08:00
Anton Panasenko
101d359cd7 Add websocket telemetry metrics and labels (#10316)
Summary
- expose websocket telemetry hooks through the responses client so
request durations and event processing can be reported
- record websocket request/event metrics and emit runtime telemetry
events that the history UI now surfaces
- improve tests to cover websocket telemetry reporting and guard runtime
summary updates


<img width="824" height="79" alt="Screenshot 2026-01-31 at 5 28 12 PM"
src="https://github.com/user-attachments/assets/ea9a7965-d8b4-4e3c-a984-ef4fdc44c81d"
/>
2026-01-31 19:16:44 -08:00
xl-openai
aab3705c7e Make skills prompt explicit about relative-path lookup (#10282)
Fix cases where the model tries to locate skill scripts from the cwd and
fails.
2026-01-31 19:08:25 -08:00
Gav Verma
39a6a84097 feat: Support loading skills from .agents/skills (#10317)
This PR adds support for loading
[skills](https://developers.openai.com/codex/skills) from
`.agents/skills/`.
- Issue: https://github.com/agentskills/agentskills/issues/15
- Motivation: When skills live on the filesystem, sharing them across
agents is awkward and often ends up requiring symlinks/duplication. A
single location under `.agents/` makes it easier to share skills.
- Loading from `.codex/skills/` will remain but will be deprecated soon.
The change only applies to the [REPO
scope](https://developers.openai.com/codex/skills#where-to-save-skills).
- Documentation will be updated before this change is live.

Testing with skills in two locations of this repo:
<img width="960" height="152" alt="image"
src="https://github.com/user-attachments/assets/28975ff9-7363-46dd-ad40-f4c7bfdb8234"
/>

When starting Codex with CWD in `$repo_root` (should only pick up at
root):
<img width="513" height="143" alt="image"
src="https://github.com/user-attachments/assets/389e1ea7-020c-481e-bda0-ce58562db59f"
/>

When starting Codex with CWD in `$repo_root/codex-rs` (should pick up at
cwd and crawl up to root):
<img width="552" height="177" alt="image"
src="https://github.com/user-attachments/assets/a5beb8de-11b4-45ed-8660-80707c77006a"
/>
2026-01-31 18:45:05 -08:00
alexsong-oai
b164ac6d1e feat: fire tracking events for skill invocation (#10120) 2026-01-31 18:06:26 -08:00
Ahmed Ibrahim
30ed29a7b3 enable plan mode (#10313)
# External (non-OpenAI) Pull Request Requirements

Before opening this Pull Request, please read the dedicated
"Contributing" markdown file or your PR may be closed:
https://github.com/openai/codex/blob/main/docs/contributing.md

If your PR conforms to our contribution guidelines, replace this text
with a detailed and high quality description of your changes.

Include a link to a bug report or enhancement request.
2026-02-01 00:58:17 +00:00
Dylan Hurd
0f9858394b feat(core,tui,app-server) personality migration (#10307)
## Summary
Keep existing users on Pragmatic, to preserve behavior while new users
default to Friendly

## Testing
- [x] Tested locally
- [x] add integration tests
2026-01-31 17:25:14 -07:00
Dylan Hurd
8a461765f3 chore(core) Default to friendly personality (#10305)
## Summary
Update default personality to friendly

## Testing
- [x] Unit tests pass
2026-01-31 17:11:32 -07:00