Add Codex provider with app-server auth flows#359
Conversation
There was a problem hiding this comment.
Pull request overview
Adds Codex as a first-class LLM provider, including a local codex app-server (stdio) integration, device-code auth endpoints, and UI flows in both Settings and Onboarding, plus Docker host-login reuse support and documentation.
Changes:
- Introduces
codexprovider normalization/defaults across shared settings and server/provider strategy wiring. - Implements Codex app-server JSON-RPC client + device-code login flow, plus Settings API routes and tests.
- Adds Codex sign-in UX (status/start/polling) and documents Docker host-login reuse via
CODEX_HOME_MOUNT.
Reviewed changes
Copilot reviewed 32 out of 32 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| shared/src/settings-registry.ts | Adds codex provider + default model handling |
| shared/src/settings-registry.test.ts | Tests Codex default model behavior |
| orchestrator/src/server/services/settings.ts | Sets Codex default base URL behavior |
| orchestrator/src/server/services/llm/types.ts | Extends LlmProvider union with codex |
| orchestrator/src/server/services/llm/service.ts | Routes Codex calls to CodexClient + normalization |
| orchestrator/src/server/services/llm/service.test.ts | Adds Codex normalization + delegation/retry tests |
| orchestrator/src/server/services/llm/providers/index.ts | Registers Codex provider strategy |
| orchestrator/src/server/services/llm/providers/codex.ts | Adds Codex strategy stub (stdio / no HTTP) |
| orchestrator/src/server/services/llm/codex/login.ts | Implements device-code login session tracking |
| orchestrator/src/server/services/llm/codex/login.test.ts | Tests device-code parsing/session behavior |
| orchestrator/src/server/services/llm/codex/client.ts | Implements stdio JSON-RPC app-server client |
| orchestrator/src/server/services/llm/codex/client.test.ts | Tests JSON-RPC flow, auth status, model listing |
| orchestrator/src/server/api/routes/settings.ts | Adds /codex-auth + /codex-auth/start endpoints |
| orchestrator/src/server/api/routes/settings.codex-auth.test.ts | Tests Codex auth endpoints |
| orchestrator/src/client/pages/settings/utils.ts | Adds Codex provider labels/hints/config |
| orchestrator/src/client/pages/settings/utils.test.ts | Tests Codex provider UI config behavior |
| orchestrator/src/client/pages/settings/components/ModelSettingsSection.tsx | Adds Codex sign-in block + polling in Settings |
| orchestrator/src/client/pages/onboarding/components/LlmConnectionStep.tsx | Adds Codex sign-in block + polling in Onboarding |
| orchestrator/src/client/pages/SettingsPage.tsx | Adds codex to settings search terms |
| orchestrator/src/client/pages/SettingsPage.test.tsx | Tests starting Codex sign-in from Settings |
| orchestrator/src/client/pages/OnboardingPage.test.tsx | Adds onboarding coverage for Codex sign-in |
| orchestrator/src/client/api/client.ts | Adds client methods/types for Codex auth endpoints |
| docs-site/versioned_docs/version-0.3.1/troubleshooting/common-problems.md | Adds Codex device-code troubleshooting entry |
| docs-site/versioned_docs/version-0.3.1/getting-started/self-hosting.md | Documents CODEX_HOME_MOUNT host-login reuse |
| docs-site/versioned_docs/version-0.3.1/getting-started/codex-auth.md | Adds dedicated Codex auth guide (versioned) |
| docs-site/docs/troubleshooting/common-problems.md | Adds Codex device-code troubleshooting entry |
| docs-site/docs/getting-started/self-hosting.md | Documents CODEX_HOME_MOUNT host-login reuse |
| docs-site/docs/getting-started/codex-auth.md | Adds dedicated Codex auth guide (current) |
| docker-compose.yml | Adds Codex home volume + CODEX_HOME env |
| README.md | Documents Codex container login + host-login reuse |
| Dockerfile | Installs Codex CLI + creates codex home directory |
| .env.example | Documents CODEX_HOME_MOUNT option |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
346d6a2 to
49b059a
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 32 out of 32 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 33 out of 33 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary
codexas a first-class LLM provider across shared settings, provider normalization, and UI labels/help textTesting
orchestrator/src/server/services/llm/codex/client.test.tsorchestrator/src/server/services/llm/codex/login.test.tsorchestrator/src/server/api/routes/settings.codex-auth.test.tsorchestrator/src/client/pages/SettingsPage.test.tsxorchestrator/src/client/pages/OnboardingPage.test.tsx(added coverage for onboarding Codex sign-in)biomechecks on touched code/docs paths