Commit Graph
1050 Commits
Author SHA1 Message Date
James Peter 4e44b116a8 merge: sync with origin/main (prefer ours for conflicts) 2025-08-19 08:35:22 +10:00
James Peter 785435640f chore(release): ensure npm README uses repo root during publish; allow CI in prepublish guard 2025-08-19 08:34:49 +10:00
James Peter 0b626e50ab chore(npm): prevent direct publish from codex-cli and replace legacy README with publish note pointing to repo root 2025-08-19 08:26:58 +10:00
James Peter 72bdf75d15 merge: upstream sync via merge/upstream-2025-08-19 (prefer ours) 2025-08-19 08:18:26 +10:00
James Peter b8548a07d1 fix(core/mcp/tui): align with latest upstream protocol + type mappings; stabilize interrupt handling and TUI colors 2025-08-19 08:18:26 +10:00
James Peter 47ba6537d2 merge: pull latest upstream (prefer ours) 2025-08-19 08:09:24 +10:00
James Peter c004ae54a6 chore: align with latest protocol changes and MCP wire mapping; keep TUI colors module active 2025-08-19 08:09:23 +10:00
Ahmed IbrahimandGitHub ecb388045c Add cache tests for UserTurn (#2432) 2025-08-18 21:28:09 +00:00
Michael BolinandGitHub fc6cfd5ecc protocol-ts (#2425) 2025-08-18 13:08:53 -07:00
Ahmed IbrahimandGitHub c283f9f6ce Add an operation to override current task context (#2431)
- Added an operation to override current task context
- Added a test to check that cache stays the same
2025-08-18 19:59:19 +00:00
Ahmed IbrahimandGitHub c9963b52e9 consolidate reasoning enums into one (#2428)
We have three enums for each of reasoning summaries and reasoning effort
with same values. They can be consolidated into one.
2025-08-18 11:50:17 -07:00
GitHub Action 0222e5a9a0 chore(release): 0.1.8 [skip ci] 2025-08-18 17:33:39 +00:00
James Peter 237b8ca7ba chore: restore local TUI changes post-merge (themes/browser/agents) 2025-08-19 03:24:19 +10:00
James Peter 6f30651c45 merge: resolve modify/delete conflicts by keeping ours (tui colors, mcp conversation + create_conversation) 2025-08-19 03:23:56 +10:00
James Peter 430da705b3 fix(release): ensure GitHub Release + correct artifacts and repo refs
- Build code/code-tui/code-exec in rust-release workflow
- Always create/push v<tag>; remove skip gate for GH release
- Add permissions: contents: write
- Point staging to just-every/code and code-* artifacts
- Update checker accepts rust-vX.Y.Z or vX.Y.Z and refreshes cache
2025-08-19 03:19:43 +10:00
Michael BolinandGitHub a4f76bd75a chore: add TS annotation to generated mcp-types (#2424)
Adds the `TS` annotation from https://crates.io/crates/ts-rs to all
types to facilitate codegen.

---
[//]: # (BEGIN SAPLING FOOTER)
Stack created with [Sapling](https://sapling-scm.com). Best reviewed
with [ReviewStack](https://reviewstack.dev/openai/codex/pull/2424).
* __->__ #2424
* #2423
2025-08-18 09:38:47 -07:00
Michael BolinandGitHub 712bfa04ac chore: move mcp-server/src/wire_format.rs to protocol/src/mcp_protocol.rs (#2423)
The existing `wire_format.rs` should share more types with the
`codex-protocol` crate (like `AskForApproval` instead of maintaining a
parallel `CodexToolCallApprovalPolicy` enum), so this PR moves
`wire_format.rs` into `codex-protocol`, renaming it as
`mcp-protocol.rs`. We also de-dupe types, where appropriate.

---
[//]: # (BEGIN SAPLING FOOTER)
Stack created with [Sapling](https://sapling-scm.com). Best reviewed
with [ReviewStack](https://reviewstack.dev/openai/codex/pull/2423).
* #2424
* __->__ #2423
2025-08-18 09:36:57 -07:00
aeandGitHub da69d50c60 fix: stop using ANSI blue (#2421)
- One less color.
- Replaced with cyan which looks better next to other cyan components.
2025-08-18 16:02:25 +00:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
be6a4faa45 chore(deps-dev): bump @types/node from 24.2.1 to 24.3.0 in /.github/actions/codex (#2411)
Bumps
[@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)
from 24.2.1 to 24.3.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/node&package-manager=bun&previous-version=24.2.1&new-version=24.3.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-18 08:33:17 -07:00
aeandGitHub 5bce369c4d fix: clean up styles & colors and define in styles.md (#2401)
New style guide:

  # Headers, primary, and secondary text
  
- **Headers:** Use `bold`. For markdown with various header levels,
leave in the `#` signs.
  - **Primary text:** Default.
  - **Secondary text:** Use `dim`.
  
  # Foreground colors
  
- **Default:** Most of the time, just use the default foreground color.
`reset` can help get it back.
- **Selection:** Use ANSI `blue`. (Ed & AE want to make this cyan too,
but we'll do that in a followup since it's riskier in different themes.)
  - **User input tips and status indicators:** Use ANSI `cyan`.
  - **Success and additions:** Use ANSI `green`.
  - **Errors, failures and deletions:** Use ANSI `red`.
  - **Codex:** Use ANSI `magenta`.
  
  # Avoid
  
- Avoid custom colors because there's no guarantee that they'll contrast
well or look good on various terminal color themes.
- Avoid ANSI `black`, `white`, `yellow` as foreground colors because the
terminal theme will do a better job. (Use `reset` if you need to in
order to get those.) The exception is if you need contrast rendering
over a manually colored background.
  
  (There are some rules to try to catch this in `clippy.toml`.)

# Testing

Tested in a variety of light and dark color themes in Terminal, iTerm2, and Ghostty.
2025-08-18 08:26:29 -07:00
GitHub Action 3fc9d0c450 chore(release): 0.1.7 [skip ci] 2025-08-18 14:02:28 +00:00
James Peter 6e3b38f7e8 ci(release): set SKIP_SIGNING=1 to allow macOS cross-arch builds in CI 2025-08-18 23:47:53 +10:00
James Peter f75be4bef8 ci(release): guard sccache usage; only enable if installed to fix macOS/Windows builds 2025-08-18 23:44:44 +10:00
Michael BolinandGitHub a269754668 remove mcp-server/src/mcp_protocol.rs and the code that depends on it (#2360) 2025-08-18 00:29:18 -07:00
James Peter 752efaab5e chore: commit all current changes 2025-08-18 16:28:18 +10:00
Michael BolinandGitHub b581498882 fix: introduce EventMsg::TurnAborted (#2365)
Introduces `EventMsg::TurnAborted` that should be sent in response to
`Op::Interrupt`.

In the MCP server, updates the handling of a
`ClientRequest::InterruptConversation` request such that it sends the
`Op::Interrupt` but does not respond to the request until it sees an
`EventMsg::TurnAborted`.
2025-08-17 21:40:31 -07:00
Michael BolinandGitHub 71cae06e66 fix: refactor login/src/server.rs so process_request() is a separate function (#2388) 2025-08-17 12:32:56 -07:00
Eric TrautandGitHub 350b00d54b Added MCP server command to enable authentication using ChatGPT (#2373)
This PR adds two new APIs for the MCP server: 1) loginChatGpt, and 2)
cancelLoginChatGpt. The first starts a login server and returns a local
URL that allows for browser-based authentication, and the second
provides a way to cancel the login attempt. If the login attempt
succeeds, a notification (in the form of an event) is sent to a
subscriber.

I also added a timeout mechanism for the existing login server. The
loginChatGpt code path uses a 10-minute timeout by default, so if the
user fails to complete the login flow in that timeframe, the login
server automatically shuts down. I tested the timeout code by manually
setting the timeout to a much lower number and confirming that it works
as expected when used e2e.
2025-08-17 10:03:52 -07:00
GitHub Action 9d08e502de chore(release): 0.1.6 [skip ci] 2025-08-17 10:59:58 +00:00
James Peter 791239333b refactor(naming): switch binaries and artifacts from 'coder' to 'code'; keep 'coder' as fallback alias only. Update workflows, scripts, and postinstall. 2025-08-17 20:45:10 +10:00
James Peter 0364059fe5 chore(ci): disable Codespell, rust-ci, and generic CI workflows (manual only) 2025-08-17 20:34:32 +10:00
James Peter 347a2f4d89 chore(release): nudge workflow by touching postinstall.js (no functional change) 2025-08-17 20:31:10 +10:00
James Peter 6b4e86a485 chore(release): trigger release build for 0.1.14 2025-08-17 20:26:31 +10:00
James Peter d49e4b1c89 Merge branch 'upstream-merge-phase2' into main 2025-08-17 20:14:20 +10:00
James Peter cb5e1fdd24 chore(release): bump version to 0.1.14 2025-08-17 20:14:20 +10:00
James Peter 7467c95f16 merge(upstream): prefer our versions for exec, TUI app, bottom_pane_view, and MCP server to avoid breaking changes 2025-08-17 19:36:42 +10:00
James Peter 9965784886 merge(upstream): fix build issues (protocol shim methods, DebugLogger derives, Minimal effort, ModelFamily init, safety API) 2025-08-17 19:35:57 +10:00
James Peter 8e0061449c merge(upstream): restore our protocol and apply_patch; add Minimal to ReasoningEffort 2025-08-17 19:32:38 +10:00
James Peter 34df04a69d merge(upstream): resolve conflicts preferring our TUI/theme; add protocol shim and config mappings (Phase 2) 2025-08-17 19:29:05 +10:00
James Peter 4ba7172a74 chore(merge): update Cargo.lock after adding protocol crate 2025-08-17 19:28:17 +10:00
James Peter 65dba68801 merge: add protocol crate to workspace members 2025-08-17 19:27:34 +10:00
James Peter cea636e60b merge: introduce upstream codex-protocol crate (Phase 1) 2025-08-17 19:27:34 +10:00
James Peter 0400ca0124 docs(README): note about 'coder' alias to avoid conflicts with VS Code 'code' 2025-08-17 19:18:38 +10:00
James Peter b7179e4e24 feat(cli): add 'coder' bin alias and postinstall notice if existing 'code' is not ours 2025-08-17 19:16:42 +10:00
GitHub Action 9bc21c0906 chore(release): 0.1.4 [skip ci] 2025-08-17 09:12:38 +00:00
James Peter aeb0895e59 docs(README): add screenshots with captions; feat(README): mention diff viewer in Why Code; build(build-fast): suppress warnings in dev-fast output 2025-08-17 18:55:59 +10:00
James Peter abc7de3c83 chore: commit pending code changes across codex-rs (browser, core, tui) 2025-08-17 18:55:58 +10:00
James Peter f297c1981a core: agent APIs robustness pass
- agent_check: limit progress to last 50 lines; write full progress to .coder/agents/<id>/progress.log
- agent_result: return JSON with preview (500 lines) and file path for full output/error
- agent_wait: include preview + file path for the completed agent when return_all=false or waiting on agent_id; keep return_all=true lean (ids only) and wait for all
- add helpers to store artifacts under .coder/agents
2025-08-17 18:55:58 +10:00
James Peter 1ce7716271 core: make agent_wait return_all=true wait for all agents to finish before returning 2025-08-17 18:55:58 +10:00
James Peter 5c2440bff5 core: implement sequential agent_wait when return_all=false
- Track seen completed agents per batch in session state
- agent_wait returns next unseen completed agent; returns immediately if none remain
- Preserve agent_id and return_all=true behaviors
2025-08-17 18:55:58 +10:00