mirror of
https://github.com/router-for-me/CLIProxyAPIPlus.git
synced 2026-04-26 23:55:48 +00:00
feat: add Claude Sonnet 4.6 model support for Kiro provider
This commit is contained in:
@@ -417,6 +417,18 @@ func GetKiroModels() []*ModelInfo {
|
|||||||
MaxCompletionTokens: 64000,
|
MaxCompletionTokens: 64000,
|
||||||
Thinking: &ThinkingSupport{Min: 1024, Max: 32000, ZeroAllowed: true, DynamicAllowed: true},
|
Thinking: &ThinkingSupport{Min: 1024, Max: 32000, ZeroAllowed: true, DynamicAllowed: true},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
ID: "kiro-claude-sonnet-4-6",
|
||||||
|
Object: "model",
|
||||||
|
Created: 1739836800, // 2025-02-18
|
||||||
|
OwnedBy: "aws",
|
||||||
|
Type: "kiro",
|
||||||
|
DisplayName: "Kiro Claude Sonnet 4.6",
|
||||||
|
Description: "Claude Sonnet 4.6 via Kiro (1.3x credit)",
|
||||||
|
ContextLength: 200000,
|
||||||
|
MaxCompletionTokens: 64000,
|
||||||
|
Thinking: &ThinkingSupport{Min: 1024, Max: 32000, ZeroAllowed: true, DynamicAllowed: true},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
ID: "kiro-claude-opus-4-5",
|
ID: "kiro-claude-opus-4-5",
|
||||||
Object: "model",
|
Object: "model",
|
||||||
@@ -559,6 +571,18 @@ func GetKiroModels() []*ModelInfo {
|
|||||||
MaxCompletionTokens: 64000,
|
MaxCompletionTokens: 64000,
|
||||||
Thinking: &ThinkingSupport{Min: 1024, Max: 32000, ZeroAllowed: true, DynamicAllowed: true},
|
Thinking: &ThinkingSupport{Min: 1024, Max: 32000, ZeroAllowed: true, DynamicAllowed: true},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
ID: "kiro-claude-sonnet-4-6-agentic",
|
||||||
|
Object: "model",
|
||||||
|
Created: 1739836800, // 2025-02-18
|
||||||
|
OwnedBy: "aws",
|
||||||
|
Type: "kiro",
|
||||||
|
DisplayName: "Kiro Claude Sonnet 4.6 (Agentic)",
|
||||||
|
Description: "Claude Sonnet 4.6 optimized for coding agents (chunked writes)",
|
||||||
|
ContextLength: 200000,
|
||||||
|
MaxCompletionTokens: 64000,
|
||||||
|
Thinking: &ThinkingSupport{Min: 1024, Max: 32000, ZeroAllowed: true, DynamicAllowed: true},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
ID: "kiro-claude-opus-4-5-agentic",
|
ID: "kiro-claude-opus-4-5-agentic",
|
||||||
Object: "model",
|
Object: "model",
|
||||||
|
|||||||
@@ -40,6 +40,18 @@ func GetClaudeModels() []*ModelInfo {
|
|||||||
MaxCompletionTokens: 128000,
|
MaxCompletionTokens: 128000,
|
||||||
Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: false},
|
Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: false},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
ID: "claude-sonnet-4-6",
|
||||||
|
Object: "model",
|
||||||
|
Created: 1739836800, // 2025-02-18
|
||||||
|
OwnedBy: "anthropic",
|
||||||
|
Type: "claude",
|
||||||
|
DisplayName: "Claude 4.6 Sonnet",
|
||||||
|
Description: "High-performance model balancing intelligence and speed",
|
||||||
|
ContextLength: 200000,
|
||||||
|
MaxCompletionTokens: 64000,
|
||||||
|
Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: false},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
ID: "claude-opus-4-5-20251101",
|
ID: "claude-opus-4-5-20251101",
|
||||||
Object: "model",
|
Object: "model",
|
||||||
@@ -896,6 +908,7 @@ func GetAntigravityModelConfig() map[string]*AntigravityModelConfig {
|
|||||||
"claude-sonnet-4-5-thinking": {Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: true}, MaxCompletionTokens: 64000},
|
"claude-sonnet-4-5-thinking": {Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: true}, MaxCompletionTokens: 64000},
|
||||||
"claude-opus-4-5-thinking": {Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: true}, MaxCompletionTokens: 64000},
|
"claude-opus-4-5-thinking": {Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: true}, MaxCompletionTokens: 64000},
|
||||||
"claude-opus-4-6-thinking": {Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: true}, MaxCompletionTokens: 64000},
|
"claude-opus-4-6-thinking": {Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: true}, MaxCompletionTokens: 64000},
|
||||||
|
"claude-sonnet-4-6-thinking": {Thinking: &ThinkingSupport{Min: 1024, Max: 128000, ZeroAllowed: true, DynamicAllowed: true}, MaxCompletionTokens: 64000},
|
||||||
"claude-sonnet-4-5": {MaxCompletionTokens: 64000},
|
"claude-sonnet-4-5": {MaxCompletionTokens: 64000},
|
||||||
"gpt-oss-120b-medium": {},
|
"gpt-oss-120b-medium": {},
|
||||||
"tab_flash_lite_preview": {},
|
"tab_flash_lite_preview": {},
|
||||||
|
|||||||
@@ -1709,6 +1709,7 @@ func (e *KiroExecutor) mapModelToKiro(model string) string {
|
|||||||
// Amazon Q format (amazonq- prefix) - same API as Kiro
|
// Amazon Q format (amazonq- prefix) - same API as Kiro
|
||||||
"amazonq-auto": "auto",
|
"amazonq-auto": "auto",
|
||||||
"amazonq-claude-opus-4-6": "claude-opus-4.6",
|
"amazonq-claude-opus-4-6": "claude-opus-4.6",
|
||||||
|
"amazonq-claude-sonnet-4-6": "claude-sonnet-4.6",
|
||||||
"amazonq-claude-opus-4-5": "claude-opus-4.5",
|
"amazonq-claude-opus-4-5": "claude-opus-4.5",
|
||||||
"amazonq-claude-sonnet-4-5": "claude-sonnet-4.5",
|
"amazonq-claude-sonnet-4-5": "claude-sonnet-4.5",
|
||||||
"amazonq-claude-sonnet-4-5-20250929": "claude-sonnet-4.5",
|
"amazonq-claude-sonnet-4-5-20250929": "claude-sonnet-4.5",
|
||||||
@@ -1717,6 +1718,7 @@ func (e *KiroExecutor) mapModelToKiro(model string) string {
|
|||||||
"amazonq-claude-haiku-4-5": "claude-haiku-4.5",
|
"amazonq-claude-haiku-4-5": "claude-haiku-4.5",
|
||||||
// Kiro format (kiro- prefix) - valid model names that should be preserved
|
// Kiro format (kiro- prefix) - valid model names that should be preserved
|
||||||
"kiro-claude-opus-4-6": "claude-opus-4.6",
|
"kiro-claude-opus-4-6": "claude-opus-4.6",
|
||||||
|
"kiro-claude-sonnet-4-6": "claude-sonnet-4.6",
|
||||||
"kiro-claude-opus-4-5": "claude-opus-4.5",
|
"kiro-claude-opus-4-5": "claude-opus-4.5",
|
||||||
"kiro-claude-sonnet-4-5": "claude-sonnet-4.5",
|
"kiro-claude-sonnet-4-5": "claude-sonnet-4.5",
|
||||||
"kiro-claude-sonnet-4-5-20250929": "claude-sonnet-4.5",
|
"kiro-claude-sonnet-4-5-20250929": "claude-sonnet-4.5",
|
||||||
@@ -1727,6 +1729,8 @@ func (e *KiroExecutor) mapModelToKiro(model string) string {
|
|||||||
// Native format (no prefix) - used by Kiro IDE directly
|
// Native format (no prefix) - used by Kiro IDE directly
|
||||||
"claude-opus-4-6": "claude-opus-4.6",
|
"claude-opus-4-6": "claude-opus-4.6",
|
||||||
"claude-opus-4.6": "claude-opus-4.6",
|
"claude-opus-4.6": "claude-opus-4.6",
|
||||||
|
"claude-sonnet-4-6": "claude-sonnet-4.6",
|
||||||
|
"claude-sonnet-4.6": "claude-sonnet-4.6",
|
||||||
"claude-opus-4-5": "claude-opus-4.5",
|
"claude-opus-4-5": "claude-opus-4.5",
|
||||||
"claude-opus-4.5": "claude-opus-4.5",
|
"claude-opus-4.5": "claude-opus-4.5",
|
||||||
"claude-haiku-4-5": "claude-haiku-4.5",
|
"claude-haiku-4-5": "claude-haiku-4.5",
|
||||||
@@ -1739,11 +1743,13 @@ func (e *KiroExecutor) mapModelToKiro(model string) string {
|
|||||||
"auto": "auto",
|
"auto": "auto",
|
||||||
// Agentic variants (same backend model IDs, but with special system prompt)
|
// Agentic variants (same backend model IDs, but with special system prompt)
|
||||||
"claude-opus-4.6-agentic": "claude-opus-4.6",
|
"claude-opus-4.6-agentic": "claude-opus-4.6",
|
||||||
|
"claude-sonnet-4.6-agentic": "claude-sonnet-4.6",
|
||||||
"claude-opus-4.5-agentic": "claude-opus-4.5",
|
"claude-opus-4.5-agentic": "claude-opus-4.5",
|
||||||
"claude-sonnet-4.5-agentic": "claude-sonnet-4.5",
|
"claude-sonnet-4.5-agentic": "claude-sonnet-4.5",
|
||||||
"claude-sonnet-4-agentic": "claude-sonnet-4",
|
"claude-sonnet-4-agentic": "claude-sonnet-4",
|
||||||
"claude-haiku-4.5-agentic": "claude-haiku-4.5",
|
"claude-haiku-4.5-agentic": "claude-haiku-4.5",
|
||||||
"kiro-claude-opus-4-6-agentic": "claude-opus-4.6",
|
"kiro-claude-opus-4-6-agentic": "claude-opus-4.6",
|
||||||
|
"kiro-claude-sonnet-4-6-agentic": "claude-sonnet-4.6",
|
||||||
"kiro-claude-opus-4-5-agentic": "claude-opus-4.5",
|
"kiro-claude-opus-4-5-agentic": "claude-opus-4.5",
|
||||||
"kiro-claude-sonnet-4-5-agentic": "claude-sonnet-4.5",
|
"kiro-claude-sonnet-4-5-agentic": "claude-sonnet-4.5",
|
||||||
"kiro-claude-sonnet-4-agentic": "claude-sonnet-4",
|
"kiro-claude-sonnet-4-agentic": "claude-sonnet-4",
|
||||||
@@ -1769,6 +1775,10 @@ func (e *KiroExecutor) mapModelToKiro(model string) string {
|
|||||||
log.Debugf("kiro: unknown Sonnet 3.7 model '%s', mapping to claude-3-7-sonnet-20250219", model)
|
log.Debugf("kiro: unknown Sonnet 3.7 model '%s', mapping to claude-3-7-sonnet-20250219", model)
|
||||||
return "claude-3-7-sonnet-20250219"
|
return "claude-3-7-sonnet-20250219"
|
||||||
}
|
}
|
||||||
|
if strings.Contains(modelLower, "4-6") || strings.Contains(modelLower, "4.6") {
|
||||||
|
log.Debugf("kiro: unknown Sonnet 4.6 model '%s', mapping to claude-sonnet-4.6", model)
|
||||||
|
return "claude-sonnet-4.6"
|
||||||
|
}
|
||||||
if strings.Contains(modelLower, "4-5") || strings.Contains(modelLower, "4.5") {
|
if strings.Contains(modelLower, "4-5") || strings.Contains(modelLower, "4.5") {
|
||||||
log.Debugf("kiro: unknown Sonnet 4.5 model '%s', mapping to claude-sonnet-4.5", model)
|
log.Debugf("kiro: unknown Sonnet 4.5 model '%s', mapping to claude-sonnet-4.5", model)
|
||||||
return "claude-sonnet-4.5"
|
return "claude-sonnet-4.5"
|
||||||
@@ -1780,6 +1790,10 @@ func (e *KiroExecutor) mapModelToKiro(model string) string {
|
|||||||
|
|
||||||
// Check for Opus variants
|
// Check for Opus variants
|
||||||
if strings.Contains(modelLower, "opus") {
|
if strings.Contains(modelLower, "opus") {
|
||||||
|
if strings.Contains(modelLower, "4-6") || strings.Contains(modelLower, "4.6") {
|
||||||
|
log.Debugf("kiro: unknown Opus 4.6 model '%s', mapping to claude-opus-4.6", model)
|
||||||
|
return "claude-opus-4.6"
|
||||||
|
}
|
||||||
log.Debugf("kiro: unknown Opus model '%s', mapping to claude-opus-4.5", model)
|
log.Debugf("kiro: unknown Opus model '%s', mapping to claude-opus-4.5", model)
|
||||||
return "claude-opus-4.5"
|
return "claude-opus-4.5"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user