mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-03-01 15:03:57 +08:00
feat(cli-settings): support multi-provider settings for Claude, Codex, and Gemini
Decouple CLI settings architecture from Claude-only to support multiple
providers. Each provider has independent settings UI and backend handling.
- Add CliProvider type discriminator ('claude' | 'codex' | 'gemini')
- Add CodexCliSettings (profile, authJson, configToml) and GeminiCliSettings types
- Update EndpointSettings with provider field (defaults 'claude' for backward compat)
- Refactor CliSettingsModal with provider selector and provider-specific forms
- Remove includeCoAuthoredBy field across all layers
- Extend CliConfigModal to show Config Profile for all tools (not just claude)
- Add provider-aware argument injection in cli-session-manager (--settings/--profile/env)
- Rename addClaudeCustomEndpoint to addCustomEndpoint (old name kept as deprecated alias)
- Replace providerBasedCount/directCount with per-provider counts in useCliSettings hook
- Update CliSettingsList with provider badges and per-provider stat cards
- Add Codex and Gemini test cases for validateSettings and createDefaultSettings
This commit is contained in:
@@ -859,12 +859,12 @@ export function removeClaudeApiEndpoint(
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use addClaudeApiEndpoint instead
|
||||
* Adds tool to config based on tags:
|
||||
* Add a custom CLI settings endpoint tool to cli-tools.json
|
||||
* Adds tool based on tags:
|
||||
* - cli-wrapper tag -> type: 'cli-wrapper'
|
||||
* - others -> type: 'api-endpoint'
|
||||
*/
|
||||
export function addClaudeCustomEndpoint(
|
||||
export function addCustomEndpoint(
|
||||
projectDir: string,
|
||||
endpoint: { id: string; name: string; enabled: boolean; tags?: string[]; availableModels?: string[]; settingsFile?: string }
|
||||
): ClaudeCliToolsConfig {
|
||||
@@ -895,10 +895,13 @@ export function addClaudeCustomEndpoint(
|
||||
return config;
|
||||
}
|
||||
|
||||
/** @deprecated Use addCustomEndpoint instead */
|
||||
export const addClaudeCustomEndpoint = addCustomEndpoint;
|
||||
|
||||
/**
|
||||
* Remove endpoint tool (cli-wrapper or api-endpoint)
|
||||
*/
|
||||
export function removeClaudeCustomEndpoint(
|
||||
export function removeCustomEndpoint(
|
||||
projectDir: string,
|
||||
endpointId: string
|
||||
): ClaudeCliToolsConfig {
|
||||
@@ -918,6 +921,9 @@ export function removeClaudeCustomEndpoint(
|
||||
return config;
|
||||
}
|
||||
|
||||
/** @deprecated Use removeCustomEndpoint instead */
|
||||
export const removeClaudeCustomEndpoint = removeCustomEndpoint;
|
||||
|
||||
/**
|
||||
* Get config source info
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user