You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add plan-based Claude/OpenAI connections with OAuth (#509)
* feat: Add OpenAI Codex provider and OAuth integration
- Introduced OpenAI Codex as a new provider type with OAuth support.
- Implemented authentication flow including token exchange and callback server.
- Updated settings schema to include Codex provider and associated OAuth fields.
- Enhanced chat and provider management to accommodate Codex integration.
- Added migration logic to transition existing settings to support the new provider.
- Comprehensive tests added for migration and Codex functionality.
* feat: Enhance HTTP transport for Codex integration
- Added comments explaining the use of Node's http/https modules for Codex endpoints due to CORS restrictions.
- Updated the nodePost function to throw an error when called on mobile platforms, ensuring proper platform handling.
- Refactored the import of IncomingMessage type for better clarity and consistency.
* feat: Add Anthropic Claude Code provider with OAuth support
- Introduced the Anthropic Claude Code provider, including OAuth integration for authentication.
- Implemented the necessary authentication flow, including token exchange and authorization URL generation.
- Updated settings schema to include the new provider type and associated OAuth fields.
- Enhanced provider management and chat model handling to accommodate Claude Code integration.
- Added migration logic to transition existing settings to support the new provider.
- Comprehensive tests added for migration and Claude Code functionality.
* chore: Update OpenAI package and refactor message adapters
- Upgraded OpenAI package from version 4.91.1 to 6.8.1 in package.json and package-lock.json.
- Refactored DeepSeekMessageAdapter and PerplexityMessageAdapter to normalize tool calls using the new method.
- Enhanced OpenAIMessageAdapter with a new normalizeToolCalls method to streamline tool call handling.
- Updated NoStainlessOpenAI to improve header management in requests.
* feat: Add OpenAI Codex model settings and reasoning support
- Introduced settings for the OpenAI Codex model, allowing users to configure reasoning effort and summary.
- Enhanced CodexMessageAdapter to handle reasoning summary extraction and inclusion in responses.
- Updated OpenAICodexProvider to normalize requests with reasoning parameters.
- Modified chat model schema to accommodate new reasoning fields.
- Added utility functions for reasoning summary extraction in response payloads.
* feat: Update ChatModelSettings to support new Anthropic Claude Code model
* feat: Refactor provider settings and enhance migration logic for OpenAI and Anthropic models
- Reintroduced OpenAI provider settings in the constants file for consistency.
- Updated DEFAULT_PROVIDERS and DEFAULT_CHAT_MODELS to include new models for OpenAI Codex and Anthropic Claude Code.
- Enhanced migration logic to ensure proper transition to version 15, incorporating new default providers and chat models.
* feat: Refactor provider types and update settings for OpenAI and Anthropic models
- Replaced 'openai-codex' and 'anthropic-claude-code' with 'openai-plan' and 'anthropic-plan' in constants and provider settings.
- Updated DEFAULT_PROVIDERS and DEFAULT_CHAT_MODELS to reflect new provider types.
- Adjusted migration logic to ensure compatibility with the new provider types.
- Enhanced related components and schemas to support the updated provider structure.
* feat: Implement subscription connection settings for OpenAI and Anthropic plans
- Added new PlanConnectionsSection to manage connections for OpenAI and Claude subscriptions.
- Introduced ConnectClaudePlanModal and ConnectOpenAIPlanModal for OAuth authentication flows.
- Enhanced styles for plan connection cards and status indicators.
- Updated SettingsTabRoot to include the new PlanConnectionsSection.
- Refactored ProvidersSection to exclude subscription providers from API key management.
* feat: Add PLAN_PROVIDER_TYPES constant and update provider filtering logic
* refactor: Clean up provider connection logic and improve formatting
* chore: Update .gitignore to exclude CLAUDE.md
* style: Enhance layout and descriptions in PlanConnectionsSection
* fix: Resolve coderabbit review
- Refactored URL parameter extraction to support dynamic keys for better reusability.
- Added state validation to ensure OAuth state consistency during the connection process.
- Updated error messages for clearer user guidance in case of missing or mismatched OAuth states.
- Introduced a new utility function for posting form data to streamline token requests.
- Enhanced HTTP transport methods to support form URL encoding and improved error handling.
* chore: Update column header in ProvidersSection from 'Credential' to 'API Key'
* chore: Update README for v1.2.7 release
* test: Enhance migration tests for v14 to v15