mirror of
https://github.com/tiennm99/ccs.git
synced 2026-10-15 10:14:36 +00:00
feat(catalog): add Claude Opus 4.8 to Anthropic model registry
Register `claude-opus-4-8` in the cliproxy model catalog, web-server pricing table, and UI catalog as an additive entry next to 4.7. Defaults are unchanged (claude provider stays on sonnet-4-6); users opt into 4.8 explicitly via ANTHROPIC_MODEL or the dashboard. Configuration mirrors 4.7: - adaptive thinking levels (low through max), max distinct from xhigh - extendedContext (1M) available - nativeImageInput - pricing $5/$25 in/out, $6.25/$0.5 cache Built [OnSteroids](https://onsteroids.ai)
This commit is contained in:
1 parent
5b8923c85e
commit
357ce8b07a
7 files changed
+92
-17
No files matched your search
@@ -630,10 +630,22 @@ export const MODEL_CATALOGS: Record<string, ProviderCatalog> = {
|
||||
displayName: 'Claude (Anthropic)',
|
||||
defaultModel: 'claude-sonnet-4-6',
|
||||
models: [
|
||||
{
|
||||
id: 'claude-opus-4-8',
|
||||
name: 'Claude Opus 4.8',
|
||||
description: 'Latest flagship model',
|
||||
extendedContext: true,
|
||||
presetMapping: {
|
||||
default: 'claude-opus-4-8',
|
||||
opus: 'claude-opus-4-8',
|
||||
sonnet: 'claude-sonnet-4-6',
|
||||
haiku: 'claude-haiku-4-5-20251001',
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 'claude-opus-4-7',
|
||||
name: 'Claude Opus 4.7',
|
||||
description: 'Latest flagship model',
|
||||
description: 'Previous flagship model',
|
||||
extendedContext: true,
|
||||
presetMapping: {
|
||||
default: 'claude-opus-4-7',
|
||||
@@ -645,7 +657,7 @@ export const MODEL_CATALOGS: Record<string, ProviderCatalog> = {
|
||||
{
|
||||
id: 'claude-opus-4-6',
|
||||
name: 'Claude Opus 4.6',
|
||||
description: 'Previous flagship model',
|
||||
description: 'Older flagship model',
|
||||
extendedContext: true,
|
||||
presetMapping: {
|
||||
default: 'claude-opus-4-6',
|
||||
|
||||
@@ -16,12 +16,14 @@ describe('claude preset utils', () => {
|
||||
vi.restoreAllMocks();
|
||||
});
|
||||
|
||||
it('keeps the claude catalog default on Sonnet 4.6 while exposing Opus 4.7', () => {
|
||||
it('keeps the claude catalog default on Sonnet 4.6 while exposing Opus 4.7 and 4.8', () => {
|
||||
const claudeCatalog = MODEL_CATALOGS.claude;
|
||||
const ids = claudeCatalog.models.map((model) => model.id);
|
||||
|
||||
expect(claudeCatalog.defaultModel).toBe('claude-sonnet-4-6');
|
||||
expect(claudeCatalog.models.map((model) => model.id)).toContain('claude-opus-4-7');
|
||||
expect(claudeCatalog.models.map((model) => model.id)).toContain('claude-sonnet-4-6');
|
||||
expect(ids).toContain('claude-opus-4-8');
|
||||
expect(ids).toContain('claude-opus-4-7');
|
||||
expect(ids).toContain('claude-sonnet-4-6');
|
||||
});
|
||||
|
||||
it('applies the default claude preset from the catalog default model mapping', async () => {
|
||||
|
||||
Reference in new issue
Block a user