dsh-web
zhu1090093659/dsh-webDeepSeek Harness(DSH)Web 插件聚合生态包 · 一切皆插件,创意工坊分发(dsh-market.com)
OpenCode Zen free model adapter for DeepSeek Harness (DSH) — DeepSeek V4 Flash Free, Nemotron 3 Ultra Free, MiMo V2.5 Free, Big Pickle
中文 | English
OpenCode Zen free model provider adapter for DeepSeek Harness (DSH).
Registers the opencode-zen provider route in DSH's LLM seam, giving your coding agent access to OpenCode Zen's free-tier models — no API key required for free models, no credit card, no setup friction.
Built-in catalog (verified against the gateway + models.dev on 2026-08-29; refreshed automatically at startup and weekly via CI):
| Model | ID | Context | Max Output | Notes |
|---|---|---|---|---|
| DeepSeek V4 Flash Free | deepseek-v4-flash-free | 200K | 128K | DeepSeek's V4 Flash, SWE-bench ~79% |
| Nemotron 3 Ultra Free | nemotron-3-ultra-free | 1M | 128K | NVIDIA's flagship, huge context |
| Nemotron 3.5 Lightning Free | nemotron-3.5-lightning-free | 128K | 128K | NVIDIA's fast variant |
| MiMo V2.5 Free | mimo-v2.5-free | 200K | 32K | Xiaomi's coding model |
| Hy3 Free | hy3-free | 190K | 64K | Tencent HY3 |
| Laguna S 2.1 Free | laguna-s-2.1-free | 256K | 32K | |
| Muse Spark 1.2 Free | muse-spark-1.2-contributor-free | 128K | 128K | |
| Ling 3.0 Flash Fin Free | ling-3.0-flash-fin-free | 128K | 128K | Finance-oriented free model (models.dev gives no context/output limit, falls back to 128K) |
| Big Pickle | big-pickle | 200K | 32K | Stealth general-purpose model |
Free models are served through OpenCode Zen's public gateway. Availability may change; the adapter auto-discovers models tagged
freefrom the/modelsendpoint, and the built-in catalog is re-synced in the background on every startup (see Startup catalog sync below).
# From npm (prebuilt, recommended)
dsh plugin --profile web add dsh-llm-opencode
# Or from GitHub directly
dsh plugin --profile web add "github:bobowsh/dsh-llm-opencode#main"
deepseek-v4-flash-free) and start coding — no API key needed.Paid models require an API key. Set
OPENCODE_API_KEYin DSH credentials (Settings → Credentials) or as an environment variable.
This plugin implements the LlmAdapter interface from @deepseek-ai/dsh-llm and registers a single provider route opencode-zen. When DSH routes a request to this provider:
UNSUPPORTED_CONTENT).eventsource-parser and translated into harness StreamChunk events (block-start, text-delta, reasoning-delta, tool-call-delta, usage, finish).User-Agent: opencode/1.0.0 and related headers to satisfy OpenCode Zen's client identity check (the default deepseek-harness/... user-agent is rejected by the gateway).OPENCODE_API_KEY) or the ambient environment. Free models work without a key; paid models require one./models from the gateway and filters for free-tagged entries.name / limit.context / limit.output metadata). Failures keep the built-in catalog; a custom models: list in settings is never overwritten. Disable with autoSyncModels: false.Zero configuration required. The plugin registers itself when installed into a profile (see Bundle Patch), and every setting has a sensible default — you do not need to touch settings.yaml at all.
Only override what you actually want to change: prefer the DSH Web Settings → Models page, or override individual fields in the llm-opencode section of your profile's settings.yaml. Changes take effect immediately without restart.
| Setting | Default | Description |
|---|---|---|
baseURL | https://opencode.ai/zen/v1 | Gateway endpoint |
apiKeyEnv | OPENCODE_API_KEY | Credential store key for the API token |
maxTokens | 128000 | Default max output tokens per request |
defaultContextWindow | 1000000 | Fallback context window for unknown models |
streamIdleTimeoutMs | 300000 | Max idle time (ms) before stream is considered dead |
models | (built-in catalog) | Override the model catalog |
autoSyncModels | true | Refresh the free model catalog from the gateway + models.dev on every startup |
retryPolicy | (built-in) | Retry behavior for transient errors |
settings.yaml snippet (optional)Only needed when overriding defaults:
llm-opencode:
baseURL: "https://opencode.ai/zen/v1"
maxTokens: 64000
models:
- id: deepseek-v4-flash-free
name: DeepSeek V4 Flash Free
contextWindow: 200000
maxTokens: 128000
See settings.example.yaml for a full annotated example.
The included cordis.patch.yml registers the llm-opencode plugin row into the DSH bundle loader, so the plugin is auto-loaded when installed into a profile.
npm install
npm test
npm run lint
>= 0.1.0-rc.7@deepseek-ai/cordis ^4.0.1 (peer dependency)MIT © bobowsh