Clients/DeepSeek Harness
Use the Wokey API with DeepSeek Harness
Get a Wokey API key, point DeepSeek Harness at the Wokey base URL, then confirm the connection with one curl request.
On this pageexpand_more
Get an API key and the base URLlink
Every client uses the same Wokey API key and the same base URL.
Create an API key
Sign in and create a platform key on the API page. Keys in one account share its balance.
Create an API keykeyUse the Wokey base URL
Set the client base URL to the gateway domain; the configuration below shows whether to append /v1.
Configure the clientlink
DeepSeek Harness (dsh) accepts custom gateways, so one Wokey key covers DeepSeek, GPT, GLM and Claude models. Tested on 2026-10-18 with dsh 0.2.1-rc.2: deepseek-flash over Chat Completions and claude-haiku-5-5 over Messages each finished a multi-turn tool-calling task (run the tests, find the bug, fix it, rerun) in about 24 s and 16 s, with about 99% of input served from cache on repeat runs.
- 1
Install the 0.2.1 pre-release
npm’s latest tag is still 0.2.0; DeepSeek recommends v0.2.1-rc.1 or later for V4.1-Flash-1017, so install @next.
- 2
Set the API key variable
The config only names apiKeyEnv, so the key never lands in the file. You can also save the key under Settings → Models in the web UI.
- 3
Add the providers
Edit ~/.dsh/profiles/web/cordis.patch.yml (profiles/headless for dsh headless). Each provider speaks one protocol: DeepSeek, GPT, GLM and similar models use OpenAI Chat Completions with /v1 in the base URL; Claude uses Anthropic Messages without /v1. The same values work in Settings → Models → Add model provider → Custom model API, where Fetch available models reads Wokey’s /v1/models.
- 4
Keep existing providers
This override replaces the whole llm-pi-ai entry config, so if you already added providers in the UI, list them under providers too. Changes apply on the next request without a restart.
# 1. Install or update to 0.2.1
npm install -g @deepseek-ai/dsh@next
export WOKEY_API_KEY="YOUR_API_KEY"
# 2. ~/.dsh/profiles/web/cordis.patch.yml
- id: llm-pi-ai
config:
providers:
wokey:
displayName: Wokey
apiKeyEnv: WOKEY_API_KEY
api: openai-completions
baseURL: https://api.wokey.ai/v1
compat:
thinkingFormat: deepseek
models:
- id: deepseek-flash
name: DeepSeek-V4.1-Flash
contextWindow: 1000000
maxTokens: 393216
input: [text, image]
wokey-claude:
displayName: Wokey (Claude)
apiKeyEnv: WOKEY_API_KEY
api: anthropic-messages
baseURL: https://api.wokey.ai
models:
- id: claude-haiku-5-5
name: Claude Haiku 5.5
contextWindow: 1000000
maxTokens: 128000
input: [text, image]
- id: agent-default-model
config:
provider: wokey
model: deepseek-flash
# 3. Start
dsh webVerify with curllink
If the client reports an error, rule out the key and base URL with curl first.
DeepSeek Harness uses the OpenAI Chat Completions format by default. A 200 from this request means the key and base URL are right. Replace YOUR_API_KEY with your key before sending it.
curl https://api.wokey.ai/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6-sol",
"messages": [
{ "role": "user", "content": "Hello" }
]
}'Errors & Troubleshootinglink
Separate auth, balance, rate limit, model availability, and upstream timeout cases first.
invalid api key
The key is missing, mistyped, deleted, or Authorization / x-api-key headers conflict.
insufficient balance
The account balance is too low. Top up before sending more requests.
rate limited
Traffic is too frequent. Retry later or reduce concurrency.
upstream unavailable
The upstream model service is temporarily unavailable. Switch models or retry later.
upstream timeout
The upstream response timed out. Shorten context, reduce max_tokens, or retry.
upstream overloaded
The upstream model is temporarily overloaded and Wokey already retried on other routes (code upstream_unavailable). It is unrelated to your balance. Retry shortly or switch models.