Commit Graph
178 Commits
Author SHA1 Message Date
James Peter 7ad81dd5ef Merge branch 'code-branch-20251106-060724' into main 2025-11-07 15:34:19 +10:00
James Peter 9b91a3dcfc feat(tui/settings): move auto-resolve controls to review section 2025-11-07 14:39:56 +10:00
James Peter b85f50f65a feat(tui/validation): move review auto resolve controls to settings 2025-11-06 18:30:37 +10:00
James Peter a6c56ce700 feat(auto-drive): harden sequencing and document reliability 2025-11-06 08:07:01 +10:00
James Peter cdaa6add85 fixed background system status handling 2025-11-05 23:19:17 +10:00
James Peter b04fce8859 Merge branch 'main' into code-branch-20251027-155643 2025-10-28 12:39:33 +10:00
James Peter ead7257abe docs: refresh videos and sync v0.4.3 release notes 2025-10-28 12:36:50 +10:00
James Peter 5dcbb56315 fix(config,agents,docs): default to gpt-5; Codex optional (closes #207) 2025-10-28 02:26:15 +10:00
James Peter 5734f15760 docs(readme): link to youtube demos with thumbnails 2025-10-28 01:00:38 +10:00
James Peter 569d9f3a26 Merge branch 'code-branch-20251023-215902' into code-branch-20251026-025326 2025-10-26 15:49:10 +10:00
James Peter 15f2b22a40 chore(tui): remove auto drive preview scaffolding 2025-10-26 15:34:49 +10:00
James Peter a705b99a9a feat(tui/theme): add shared card theme catalog 2025-10-26 15:22:20 +10:00
James Peter 3ab30a9511 feat(auto-drive): model goal entry + bypass in phase enum 2025-10-26 07:32:05 +10:00
James Peter 3af2e4f990 refactor(auto-drive): finish migration to phase-driven controller/TUI 2025-10-25 13:11:41 +10:00
James Peter 276c9ad905 refactor(auto): add controller helpers and use for TUI prompt submission; docs: add auto_state usage inventory 2025-10-25 03:19:09 +10:00
James Peter c665342e74 docs: capture remaining Auto Drive phase migration work 2025-10-24 22:08:49 +10:00
James Peter 704f310794 feat(debug): bucket helper transcripts into tagged folders 2025-10-21 18:52:51 +10:00
James Peter 5800f992cf feat(auto-drive): scaffold qa orchestrator and observer plumbing 2025-10-21 16:17:02 +10:00
James Peter 66ea050c44 chore(tui): update settings and auto copy 2025-10-20 17:45:52 +10:00
James Peter 562c8e3119 docs(settings): add two-level Settings overlay design plan 2025-10-16 14:12:22 +11:00
James Peter 2b404c6f4f feat(tui/settings): finish agents and limits overlay migration 2025-10-16 13:55:33 +11:00
James Peter e802e71ee8 feat(tui/settings): add unified settings overlay 2025-10-16 09:22:52 +11:00
James Peter 610eec73d1 feat(agents): finalize model slug rollout 2025-10-14 12:08:22 +11:00
James Peter 4ab3ffda46 refactor(tools): unify browser tool and normalize agent actions 2025-10-08 16:24:36 +10:00
James Peter 76e9dd6da0 Merge upstream/main: adopt tool parallelism and exec formatting 2025-10-06 11:19:57 +10:00
James Peter 0fcfbc43de refactor(upstream): re-export crates and prune docs 2025-10-06 10:21:27 +10:00
Fouad MatinandGitHub f10c9e8ca1 add codex sandbox {linux|macos} (#4782)
## Summary
- add a `codex sandbox` subcommand with macOS and Linux targets while
keeping the legacy `codex debug` aliases
- update documentation to highlight the new sandbox entrypoints and
point existing references to the new command
- clarify the core README about the linux sandbox helper alias

## Testing
- just fmt
- just fix -p codex-cli
- cargo test -p codex-cli


------
https://chatgpt.com/codex/tasks/task_i_68e2e00ca1e8832d8bff53aa0b50b49e
2025-10-05 15:51:57 -07:00
James Peter ab33834aae chore(tui): drop vt100-tests flag and sync docs 2025-10-06 08:40:54 +10:00
James PeterandClaude 12543222de docs: add comprehensive session summary for 2025-10-06
Created detailed summary document capturing all work completed during
the Phase 1 cleanup session.

Session Achievements:
- Completed Phase 1-3: Baseline & Tooling, Crate Adoption, Fork Cleanup
- Removed 35,000 lines of legacy test code (106 files)
- Adopted upstream crates (mcp-client, responses-api-proxy)
- Audited feature flags and module usage (all active, no dead code)
- Documented test scaffolding patterns (ChatWidgetHarness)
- Created 5 new migration/maintenance documentation files

Metrics Summary:
- Test files: 205 → 99 (-52%)
- Test code lines: 46,300 → 11,300 (-76%)
- Orphaned modules: 6 → 0 (100% removed)
- Build time: 1m 30s (no regression)
- Documentation: 5 new comprehensive guides

Commits Created (4):
1. Legacy test retirement and upstream crate adoption
2. Feature flag and module audit completion
3. Test scaffolding patterns documentation
4. Roadmap update with completion status

Next Steps Identified:
- Checkout upstream to codex-rs/ for test porting
- Begin Phase 2: Port 6 critical core runtime tests
- Begin Phase 3: Port 3 TUI rendering tests
- Expand smoke test coverage using documented patterns

Status: Phase 1 Complete ✅ | Phase 2-4 Ready 🔄 | Upstream Checkout Needed 📋

Session captured all deliverables, metrics, lessons learned, and blockers
for future reference and continuity.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
2025-10-06 05:25:36 +10:00
James PeterandClaude 72437dddb6 chore: complete legacy test retirement and upstream crate adoption
This commit completes Phase 1 of the codebase cleanup plan documented in
ROADMAP.md and related migration documents.

Major changes:
- Removed legacy test suites from code-rs/ crates (~35,000 lines)
- Adopted upstream codex-mcp-client and codex-responses-api-proxy
- Deleted TUI compat layer, agent task planning docs, and orphaned modules
- Updated documentation to reflect current state and future phases

Test Coverage:
- Deleted tests from: app-server, apply-patch, chatgpt, cli, core, exec,
  login, mcp-server
- Documented 9 remaining coverage gaps requiring new tests (see
  docs/migration/legacy-tests-retirement.md)
- Preserved smoke test infrastructure in tui/tests/ui_smoke.rs

Crate Adoptions:
- mcp-client: Now re-exports codex-mcp-client with fork-specific buffer config
- responses-api-proxy: Now re-exports codex-responses-api-proxy with minimal
  wrapper
- mcp-types: Updated to use upstream types where possible

TUI Cleanup:
- Removed compat.rs ratatui adapter layer
- Deleted obsolete modules: app_backtrack, custom_terminal, scroll_view,
  text_block, transcript_app
- Archived agent_tasks/ planning docs to docs/archive/

Documentation Updates:
- ROADMAP.md: Marked Phases 1-2 complete, updated next actions
- TEST_SUITE_RESET.md: Documented Phase 1 completion
- DEAD_CODE_INVENTORY.md: Updated with deletion outcomes
- Added docs/migration/legacy-tests-retirement.md with 6-week plan
- Added docs/maintenance/prompt-architecture.md

Next Steps (Phase 2-3):
- Port critical test coverage (9 test files identified)
- Expand smoke test scenarios
- Continue upstream tracking per monthly cadence

See docs/migration/ for detailed migration status and roadmap.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
2025-10-06 05:15:48 +10:00
James Peter 100db6b093 docs: reset roadmap and add maintenance guides 2025-10-05 20:48:06 +10:00
James Peter 991ffd5e88 Revert "refactor(tui): route ratatui imports through compat"
This reverts commit 40c479f2cc.
2025-10-05 19:48:52 +10:00
James Peter 40c479f2cc refactor(tui): route ratatui imports through compat 2025-10-05 19:27:12 +10:00
James Peter 970096b02c docs(tui): expand legacy plan and add smoke test scaffold 2025-10-05 18:34:07 +10:00
James Peter 408f4be916 feat(tui): add compat adapter and smoke documentation 2025-10-05 17:33:29 +10:00
Code Snapshot 6a26f04c48 code snapshot 2025-10-05 16:22:02 +10:00
James Peter 2690f8729b fix(core/git_worktree): restore cache mirror toggle 2025-10-05 12:02:23 +10:00
James Peter 3cd0db1903 fix(core/git_worktree): gate cache copying behind env 2025-10-05 11:32:59 +10:00
James Peter ddffc8284a fix(core/git-worktree): gate target cache mirroring 2025-10-05 10:38:55 +10:00
James Peter 59f22502c2 chore(workspace): sync codex tree and finish reset plan 2025-10-05 09:04:09 +10:00
James Peter c09362bc63 docs(plan): record snapshot and pruning strategy 2025-10-05 04:57:59 +10:00
James Peter 929a57ffab feat(code-rs): add forked workspace and dual build support 2025-10-05 04:27:49 +10:00
James Peter 09d77044c8 docs(plan): reset strategy for code/core refactor 2025-10-04 22:34:23 +10:00
Michael BolinandGitHub 2a2a0d46f9 chore: subject docs/*.md to Prettier checks (#4645)
Apparently we were not running our `pnpm run prettier` check in CI, so
many files that were covered by the existing Prettier check were not
well-formatted.

This updates CI and formats the files.
2025-10-03 11:35:48 -07:00
Gabriel PealandGitHub fcd5b67e7f [MCP] Add support for MCP Oauth credentials (#4517)
This PR adds oauth login support to streamable http servers when
`experimental_use_rmcp_client` is enabled.

This PR is large but represents the minimal amount of work required for
this to work. To keep this PR smaller, login can only be done with
`codex mcp login` and `codex mcp logout` but it doesn't appear in `/mcp`
or `codex mcp list` yet. Fingers crossed that this is the last large MCP
PR and that subsequent PRs can be smaller.

Under the hood, credentials are stored using platform credential
managers using the [keyring crate](https://crates.io/crates/keyring).
When the keyring isn't available, it falls back to storing credentials
in `CODEX_HOME/.credentials.json` which is consistent with how other
coding agents handle authentication.

I tested this on macOS, Windows, WSL (ubuntu), and Linux. I wasn't able
to test the dbus store on linux but did verify that the fallback works.

One quirk is that if you have credentials, during development, every
build will have its own ad-hoc binary so the keyring won't recognize the
reader as being the same as the write so it may ask for the user's
password. I may add an override to disable this or allow
users/enterprises to opt-out of the keyring storage if it causes issues.

<img width="5064" height="686" alt="CleanShot 2025-09-30 at 19 31 40"
src="https://github.com/user-attachments/assets/9573f9b4-07f1-4160-83b8-2920db287e2d"
/>
<img width="745" height="486" alt="image"
src="https://github.com/user-attachments/assets/9562649b-ea5f-4f22-ace2-d0cb438b143e"
/>
2025-10-03 13:43:12 -04:00
Michael BolinandGitHub aa9f80ea6c feat: codex exec writes only the final message to stdout (#4644)
This updates `codex exec` so that, by default, most of the agent's
activity is written to stderr so that only the final agent message is
written to stdout. This makes it easier to pipe `codex exec` into
another tool without extra filtering.

I introduced `#![deny(clippy::print_stdout)]` to help enforce this
change and renamed the `ts_println!()` macro to `ts_msg()` because (1)
it no longer calls `println!()` and (2), `ts_eprintln!()` seemed too
long of a name.

While here, this also adds `-o` as an alias for `--output-last-message`.

Fixes https://github.com/openai/codex/issues/1670
2025-10-03 16:22:12 +00:00
James Peter 350655bb3a Merge upstream/main: adopt CLI stdin login and TUI fixes 2025-10-03 23:11:53 +10:00
Michael BolinandGitHub 2e61f7c8df fix: replace --api-key with --with-api-key in codex login (#4646)
Previously, users could supply their API key directly via:

```shell
codex login --api-key KEY
```

but this has the drawback that `KEY` is more likely to end up in shell
history, can be read from `/proc`, etc.

This PR removes support for `--api-key` and replaces it with
`--with-api-key`, which reads the key from stdin, so either of these are
better options:

```
printenv OPENAI_API_KEY | codex login --with-api-key
codex login --with-api-key < my_key.txt
```

Other CLIs, such as `gh auth login --with-token`, follow the same
practice.
2025-10-03 06:17:31 +00:00
James Peter 38189b8fd2 feat(protocol): add MCP shim and sync tool stack 2025-10-03 14:36:00 +10:00
James Peter 8c2e22be95 merge(upstream): add automation prompts and exec docs 2025-10-03 14:26:48 +10:00