chore(crush): synthetic now upstream, add gemini 3

Amolith created

Change summary

dot_config/crush/crush.json | 114 +++++++++++---------------------------
1 file changed, 35 insertions(+), 79 deletions(-)

Detailed changes

dot_config/crush/crush.json 🔗

@@ -67,95 +67,51 @@
 				}
 			]
 		},
-		"synthetic": {
-			"name": "Synthetic",
-			"type": "openai-compat",
-			"api_key": "$SYNTHETIC_API_KEY",
-			"base_url": "https://api.synthetic.new/openai/v1",
+		"gemini": {
+			"name": "Google Gemini",
+			"id": "gemini",
+			"api_key": "$GEMINI_API_KEY",
+			"api_endpoint": "$GEMINI_API_ENDPOINT",
+			"type": "gemini",
 			"models": [
 				{
-					"id": "hf:moonshotai/Kimi-K2-Thinking",
-					"name": "Kimi K2 Thinking",
-					"cost_per_1m_in": 0.55,
-					"cost_per_1m_out": 2.19,
-					"cost_per_1m_in_cached": 0.55,
-					"cost_per_1m_out_cached": 2.19,
-					"context_window": 204800,
-					"default_max_tokens": 65536,
-					"can_reason": true,
-					"has_reasoning_efforts": true,
-					"reasoning_levels": ["low", "medium", "high"],
-					"default_reasoning_effort": "high",
-					"supports_attachments": false
-				},
-				{
-					"id": "hf:zai-org/GLM-4.6",
-					"name": "GLM-4.6",
-					"cost_per_1m_in": 0.55,
-					"cost_per_1m_out": 2.19,
-					"cost_per_1m_in_cached": 0.55,
-					"cost_per_1m_out_cached": 2.19,
-					"context_window": 204800,
-					"default_max_tokens": 65536,
-					"can_reason": true,
-					"has_reasoning_efforts": true,
-					"reasoning_levels": ["low", "medium", "high"],
-					"default_reasoning_effort": "high",
-					"supports_attachments": false
-				},
-				{
-					"id": "hf:MiniMaxAI/MiniMax-M2",
-					"name": "MiniMax M2",
-					"cost_per_1m_in": 0.55,
-					"cost_per_1m_out": 2.19,
-					"cost_per_1m_in_cached": 0.55,
-					"cost_per_1m_out_cached": 2.19,
-					"context_window": 196608,
-					"default_max_tokens": 65536,
+					"id": "gemini-3-pro-preview",
+					"name": "Gemini 3 Pro Preview",
+					"cost_per_1m_in": 1.25,
+					"cost_per_1m_out": 10,
+					"cost_per_1m_in_cached": 1.625,
+					"cost_per_1m_out_cached": 0.31,
+					"context_window": 1048576,
+					"default_max_tokens": 50000,
 					"can_reason": true,
-					"has_reasoning_efforts": true,
-					"reasoning_levels": ["low", "medium", "high"],
-					"default_reasoning_effort": "high",
-					"supports_attachments": false
-				},
-				{
-					"id": "hf:moonshotai/Kimi-K2-Instruct-0905",
-					"name": "Kimi K2 Instruct 0905",
-					"cost_per_1m_in": 1.2,
-					"cost_per_1m_out": 1.2,
-					"cost_per_1m_in_cached": 1.2,
-					"cost_per_1m_out_cached": 1.2,
-					"context_window": 256000,
-					"default_max_tokens": 65536,
-					"can_reason": false,
 					"has_reasoning_efforts": false,
-					"supports_attachments": false
+					"supports_attachments": true
 				},
 				{
-					"id": "hf:Qwen/Qwen3-Coder-480B-A35B-Instruct",
-					"name": "Qwen3 Coder",
-					"cost_per_1m_in": 0.45,
-					"cost_per_1m_out": 1.8,
-					"cost_per_1m_in_cached": 0.45,
-					"cost_per_1m_out_cached": 1.8,
-					"context_window": 256000,
-					"default_max_tokens": 65536,
-					"can_reason": false,
+					"id": "gemini-2.5-pro",
+					"name": "Gemini 2.5 Pro",
+					"cost_per_1m_in": 1.25,
+					"cost_per_1m_out": 10,
+					"cost_per_1m_in_cached": 1.625,
+					"cost_per_1m_out_cached": 0.31,
+					"context_window": 1048576,
+					"default_max_tokens": 50000,
+					"can_reason": true,
 					"has_reasoning_efforts": false,
-					"supports_attachments": false
+					"supports_attachments": true
 				},
 				{
-					"id": "hf:deepseek-ai/DeepSeek-V3-0324",
-					"name": "DeepSeek V3 0324",
-					"cost_per_1m_in": 1.2,
-					"cost_per_1m_out": 1.2,
-					"cost_per_1m_in_cached": 1.2,
-					"cost_per_1m_out_cached": 1.2,
-					"context_window": 128000,
-					"default_max_tokens": 65536,
-					"can_reason": false,
+					"id": "gemini-2.5-flash",
+					"name": "Gemini 2.5 Flash",
+					"cost_per_1m_in": 0.3,
+					"cost_per_1m_out": 2.5,
+					"cost_per_1m_in_cached": 0.3833,
+					"cost_per_1m_out_cached": 0.075,
+					"context_window": 1048576,
+					"default_max_tokens": 50000,
+					"can_reason": true,
 					"has_reasoning_efforts": false,
-					"supports_attachments": false
+					"supports_attachments": true
 				}
 			]
 		}