OpenCode
Senast uppdaterad:
På denna sida
Kör OpenCode mot staik via Anthropic-endpointen — svensk GPU-infrastruktur med prompt caching på återanvänd kontext.
Konfiguration
Lägg till staik som Anthropic-provider i ~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"staik": {
"npm": "@ai-sdk/anthropic",
"name": "staik",
"options": {
"baseURL": "https://api.staik.se/v1",
"apiKey": "{env:STAIK_API_KEY}"
},
"models": {
"qwen3.6:35b-a3b": {
"name": "Qwen 35B (staik)",
"limit": { "context": 262144, "output": 32768 }
},
"qwen3.5:9b": {
"name": "Qwen 9B (staik)",
"limit": { "context": 262144, "output": 8192 }
},
"gemma4:31b": {
"name": "Gemma 4 31B (staik)",
"limit": { "context": 262144, "output": 32768 }
}
}
}
}
}export STAIK_API_KEY=sk-st-your-keyNyckeln skickas som x-api-key. baseURL pekar på /v1 — OpenCode lägger
själv på /messages. Inga andra ändringar behövs.
Prompt caching
Agent-loopar skickar tillbaka samma stora kontext (systemprompt, repo-filer,
historik) varje tur. Via Anthropic-endpointen märker OpenCode den stabila delen
med cache_control, och staik billar den som rabatterad cache_read i stället
för fullpris varje gång. Du ser det i svaret:
"usage": {
"input_tokens": 101,
"output_tokens": 2,
"cache_creation_input_tokens": 0,
"cache_read_input_tokens": 560
}Detaljer om TTL och breakpoints finns i Messages-referensen.
Modeller
qwen3.6:35b-a3b (standard) har 262K kontextfönster — räcker för stora
repo-kontexter. qwen3.5:9b för snabba enklare uppgifter, gemma4:31b för
granskning. Se Modeller.
Thinking-alias på /v1/messages
Thinking-aliasen (…-thinking) strippas i Anthropic-översättningen — de
beter sig som basmodellen utan separat reasoning-output. Vill du ha thinking,
använd chat completions för
det anropet.
Vill du köra Claude Code eller Anthropic SDK i stället? Se Claude Code.