DSH Hub

wyouwd1/dsh-opencode-models

dsh-opencode-models

UIWeb UI0 GitHub stars· updated 2026-08-24

Manage OpenCode Zen free-tier and Go-tier models in DeepSeek Harness: live listings from opencode.ai, drift per route, four agent tools plus an OpenCode Models settings section.

Install

npx @deepseek-ai/dsh plugin --profile web add github:wyouwd1/dsh-opencode-models

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-opencode-models DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-opencode-models.svg)](https://dshhub.dev/plugins/dsh-opencode-models)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from wyouwd1/dsh-opencode-models, cleaned of badges and images.

dsh-opencode-models

English | 中文

Manage OpenCode Zen free-tier and Go-tier models in DeepSeek Harness: fetch the live model listings from opencode.ai on demand, compare them with what your routes actually serve, and add or remove entries — through four agent tools and an "OpenCode Models" settings page. The free tier is an explicit official allowlist from the OpenCode Zen docs pricing table (big-pickle, ox-alpha-free, mimo-v2.5-free, hy3-free, nemotron-3-ultra-free, nemotron-3.5-lightning-free, muse-spark-1.2-contributor-free): paid ids the free endpoint also advertises never count, drift or get offered, and suffix-only ids outside that table are not adoptable either.

dsh plugin --profile web add github:wyouwd1/dsh-opencode-models

What it does

DeepSeek Harness serves OpenCode Zen through two llm-pi-ai provider routes configured in ~/.dsh/settings.yaml:

RouteTierEndpointModel ids
opencodeFree (PI_AI_API_KEY)https://opencode.ai/zen/v1usually -free-suffixed
opencode-goGo subscriptionhttps://opencode.ai/zen/go/v1unsuffixed

The listing endpoints disclose ids only — no context windows, output caps, modalities, or reasoning levels — and the lists change over time (limited-time models get delisted). This plugin keeps the two layers honest against each other. The same model often has different ids per tier (x-preview-f-free vs x-preview-f); it never mixes them.

Agent tools

ToolWhat it does
oc_model_statusFetches both listings live and reports per tier: configured count, live count, online-but-not-configured ids, delisted-but-still-configured ids. Read-only.
oc_model_addAdds entries to one route. Pass ids copied verbatim from a status report or full models entries. Ids whose capacities the listing hides require assumeDefaults: true (contextWindow 128000, maxTokens 32000, input text) — every assumption is reported so you can correct it later. An id present only in the other tier's listing is refused with the two-tier id rule explained.
oc_model_removeRemoves configured ids from one route; reports not-found ids and skips the write when nothing matched.
oc_model_syncPreviews drift for both tiers by default. With apply: true it adds every online-not-configured id (assumed capacities flagged); with pruneStale: true it also removes delisted ids.

Model-list edits take effect on the next request — no restart. This plugin never adds or removes whole routes; declaring a new route (apiKeyEnv/baseURL) stays on the Models page and still needs a restart.

"OpenCode Models" settings section

Related plugins