mirror of
https://github.com/tiennm99/ccs.git
synced 2026-09-04 12:16:19 +00:00
feat(cliproxy): add Qoder to channel catalog, model routing, and UI
Add Qoder provider to integration layers and dashboard UI: - Channel-to-provider mapping in catalog-cache - Model routing owner hints - Provider editor owner map - Setup wizard provider list - Fallback visuals and brand color
This commit is contained in:
@@ -38,6 +38,7 @@ const CHANNEL_TO_PROVIDER: Record<string, CLIProxyProvider> = {
|
|||||||
kimi: 'kimi',
|
kimi: 'kimi',
|
||||||
kiro: 'kiro',
|
kiro: 'kiro',
|
||||||
'github-copilot': 'ghcp',
|
'github-copilot': 'ghcp',
|
||||||
|
qoder: 'qoder',
|
||||||
};
|
};
|
||||||
|
|
||||||
/** CCS provider → channel name mapping (reverse) */
|
/** CCS provider → channel name mapping (reverse) */
|
||||||
|
|||||||
@@ -57,6 +57,7 @@ const PROVIDER_OWNER_HINTS: Record<string, string[]> = {
|
|||||||
kimi: ['kimi', 'moonshot'],
|
kimi: ['kimi', 'moonshot'],
|
||||||
kiro: ['kiro', 'aws'],
|
kiro: ['kiro', 'aws'],
|
||||||
ghcp: ['github', 'copilot'],
|
ghcp: ['github', 'copilot'],
|
||||||
|
qoder: ['qoder'],
|
||||||
};
|
};
|
||||||
|
|
||||||
function normalize(value: string | null | undefined): string {
|
function normalize(value: string | null | undefined): string {
|
||||||
|
|||||||
@@ -92,6 +92,7 @@ export function ProviderEditor({
|
|||||||
qwen: ['alibaba', 'qwen'],
|
qwen: ['alibaba', 'qwen'],
|
||||||
iflow: ['iflow'],
|
iflow: ['iflow'],
|
||||||
kilo: ['kilo'],
|
kilo: ['kilo'],
|
||||||
|
qoder: ['qoder'],
|
||||||
kiro: ['kiro', 'aws'],
|
kiro: ['kiro', 'aws'],
|
||||||
ghcp: ['github', 'copilot'],
|
ghcp: ['github', 'copilot'],
|
||||||
kimi: ['kimi', 'moonshot'],
|
kimi: ['kimi', 'moonshot'],
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ const WIZARD_PROVIDER_ORDER: CLIProxyProvider[] = [
|
|||||||
'iflow',
|
'iflow',
|
||||||
'kilo',
|
'kilo',
|
||||||
'kiro',
|
'kiro',
|
||||||
|
'qoder',
|
||||||
];
|
];
|
||||||
|
|
||||||
export const PROVIDERS: ProviderOption[] = WIZARD_PROVIDER_ORDER.map((id) => ({
|
export const PROVIDERS: ProviderOption[] = WIZARD_PROVIDER_ORDER.map((id) => ({
|
||||||
|
|||||||
@@ -135,6 +135,7 @@ export const PROVIDER_FALLBACK_VISUALS: Record<ProviderVisualId, ProviderFallbac
|
|||||||
gitlab: { textClass: 'text-orange-600', letter: 'G' },
|
gitlab: { textClass: 'text-orange-600', letter: 'G' },
|
||||||
codebuddy: { textClass: 'text-blue-600', letter: 'B' },
|
codebuddy: { textClass: 'text-blue-600', letter: 'B' },
|
||||||
kilo: { textClass: 'text-rose-600', letter: 'K' },
|
kilo: { textClass: 'text-rose-600', letter: 'K' },
|
||||||
|
qoder: { textClass: 'text-amber-600', letter: 'Q' },
|
||||||
ghcp: { textClass: 'text-green-600', letter: 'C' },
|
ghcp: { textClass: 'text-green-600', letter: 'C' },
|
||||||
kimi: { textClass: 'text-orange-500', letter: 'K' },
|
kimi: { textClass: 'text-orange-500', letter: 'K' },
|
||||||
openai: { textClass: 'text-slate-900', letter: 'O' },
|
openai: { textClass: 'text-slate-900', letter: 'O' },
|
||||||
@@ -272,6 +273,7 @@ export const PROVIDER_COLORS: Record<string, string> = {
|
|||||||
gitlab: '#FC6D26',
|
gitlab: '#FC6D26',
|
||||||
codebuddy: '#2563EB',
|
codebuddy: '#2563EB',
|
||||||
kilo: '#E11D48',
|
kilo: '#E11D48',
|
||||||
|
qoder: '#D97706',
|
||||||
ghcp: '#43aa8b',
|
ghcp: '#43aa8b',
|
||||||
claude: '#D97757',
|
claude: '#D97757',
|
||||||
kimi: '#FF6B35',
|
kimi: '#FF6B35',
|
||||||
|
|||||||
Reference in New Issue
Block a user