opencode with SeibertGPT
Coding agent for the terminal and as a desktop app – reads, changes and tests code in your project.
1. Prerequisites
You need a SeibertGPT plan and an API key. You get both after signing in.
2. Download for Windows
- Use the installer (.exe) from the download page; package managers like winget aren't supported by opencode.
- SmartScreen warning: “More info” → “Run anyway”.
3. Set up
Paste the command into the PowerShell window. The script asks for your key, stores it securely on your computer and sets up the config. The key is only sent to the SeibertGPT API at https://api.seibert.ai/v1.
irm "https://gpt.seibert.ai/en/clients/opencode/setup.ps1" | iexSet the key as an environment variable
Run this in PowerShell and paste the key when asked, then restart opencode:
$secure = Read-Host -AsSecureString 'SeibertGPT API key (starts with sgpt_)'; $bstr = [Runtime.InteropServices.Marshal]::SecureStringToBSTR($secure); try { $key = [Runtime.InteropServices.Marshal]::PtrToStringBSTR($bstr).Trim() } finally { [Runtime.InteropServices.Marshal]::ZeroFreeBSTR($bstr) }; if ($key.StartsWith('sgpt_')) { [Environment]::SetEnvironmentVariable("SEIBERTGPT_API_KEY", $key, "User") } else { Write-Host 'Not a SeibertGPT key (keys start with sgpt_), nothing saved.' }Store the config file
Download the file and put it in the folder shown. If there's already an opencode.json there, copy over only the block under “provider” → “seibertgpt”.
Choose the model
Start opencode, run /models and choose “SeibertGPT” → deepseek-v41-flash-fast.
File: %USERPROFILE%\.config\opencode\opencode.json · Download opencode.json
Important: if opencode.json already exists, don't replace it. The file also contains your other settings; copy over only our entries.
{
"$schema": "https://opencode.ai/config.json",
"model": "seibertgpt/deepseek-v41-flash-fast",
"small_model": "seibertgpt/deepseek-v41-flash-fast",
"provider": {
"seibertgpt": {
"npm": "@ai-sdk/openai-compatible",
"name": "SeibertGPT",
"options": {
"baseURL": "https://api.seibert.ai/v1",
"apiKey": "{env:SEIBERTGPT_API_KEY}"
},
"models": {
"deepseek-v41-flash": {
"name": "Standard with thinking",
"tool_call": true,
"attachment": true,
"modalities": {
"input": [
"text",
"image"
],
"output": [
"text"
]
},
"limit": {
"context": 1000000,
"output": 32000
}
},
"deepseek-v41-flash-fast": {
"name": "No thinking – fast",
"tool_call": true,
"attachment": true,
"modalities": {
"input": [
"text",
"image"
],
"output": [
"text"
]
},
"limit": {
"context": 1000000,
"output": 32000
}
},
"deepseek-v41-flash-low": {
"name": "Low reasoning effort",
"tool_call": true,
"attachment": true,
"modalities": {
"input": [
"text",
"image"
],
"output": [
"text"
]
},
"limit": {
"context": 1000000,
"output": 32000
}
},
"deepseek-v41-flash-high": {
"name": "High reasoning effort",
"tool_call": true,
"attachment": true,
"modalities": {
"input": [
"text",
"image"
],
"output": [
"text"
]
},
"limit": {
"context": 1000000,
"output": 32000
}
},
"deepseek-v41-flash-max": {
"name": "Maximum reasoning effort",
"tool_call": true,
"attachment": true,
"modalities": {
"input": [
"text",
"image"
],
"output": [
"text"
]
},
"limit": {
"context": 1000000,
"output": 32000
}
}
}
}
}
}
4. Test
In the project folder, ask “Which files are here?” – opencode should list the files using a tool.
5. Troubleshooting
Desktop app can't find the key (macOS)
The setup script takes care of this; manually: start the app from the terminal with “open -a OpenCode”.
Context too large
Summarize the history with /compact or start over with /new.
HTTP 401 – key rejected
The key was copied incorrectly or has been revoked. Create a new key under Account → API keys.
HTTP 403 – IP binding
Your key is currently bound to a different IP (e.g. another device). Wait for the lock period to expire or release the binding under Account → API keys.
HTTP 413 – cold_request_too_large
A new or long-paused session starts with a lot of context. Start a new session or shorten the history.
“Hinweis von SeibertGPT: Der Kontext ist zu … gefüllt” (German context notice)
You're approaching your plan's context limit. Summarize the history (e.g. /compact) or start over.
Nothing works after an update
These tools change quickly. The version the guide was tested with is shown at the top – let us know if something no longer matches.