Foreword¶
The community ecosystem of DeepSeek Harness (DSH) emphasizes “everything is a plugin”; the community directory is an independent site with no official affiliation to DeepSeek/Huafan. dsh-model-garden is a static profile plugin for the DSH Web UI (dsh web).
It provides a table-based model selector to handle the difficulty of searching, sorting, and filtering local models when there are many of them, and to address the issues of not seeing prices, context windows, real-time task costs, and session cost breakdowns.
What is this¶
Below is an overview of its two main components:
- Client:
client.js, registers theconversation.input.modelslot (priority-1, shadowing the native seat) and renders the model selector. - Host:
index.js, provides three same-domain JSON routes on the harnesswebServerservice.
Repository URL:
https://github.com/mrdevlorx/dsh-model-garden
License: MIT
Runtime Requirements: package.json declares a requirement for Node >=22
Runtime Dependencies: The host requires a web stack (the webServer service); it remains inert in the minimal/TUI profile and does not block startup.
Core Features¶
Model List¶
- Instant search for model names and descriptions.
- Sort by name, context, or price; third click restores the view grouped by provider.
- Bookmark models and toggle to show only favorites; bookmarks are saved in
localStorage. - Determine local providers based on the
baseURLof the real endpoint and filter local models. - Provider groups are collapsible; collapse state is saved per provider.
- Automatically refresh the model catalog while the selector is mounted, with a default interval of 5 minutes and configurable.
Pricing and Context Windows¶
- Use
models.devpricing, displaying input/output prices per 1M tokens; prices are cached for 24 hours. - Local models remain unpriced.
- Subscription routes are resolved to pay-as-you-go reference prices via
PROVIDER_ALIASES. - Read context windows from the host
llmservice and fall back tomodels.devwhen necessary.
Cost and Inference Settings¶
- Always display real-time per-task usage and cost (
in / out / cache) when the panel is open. - Hovering over approximate costs opens session cost details, supporting copying the summary or exporting sorted CSVs.
- Provides an inference strength selector for models supporting inference-level settings; always start from the strongest inference level when selecting a model.
- Detail tooltips show description, price, context window, max output, and inference strength.
- Uses harness tokens to adapt to light and dark themes.
Installation and Usage¶
- Install using the DSH plugin CLI:
dsh plugin --profile <profile> add dsh-model-garden
-
Restart the DSH server after installation and perform a hard browser refresh (
Cmd/Ctrl+Shift+R). -
Verify that the host routes are available:
curl -s http://127.0.0.1:3080/model-garden/catalog | head -c 200
This step checks that /model-garden/catalog returns JSON data, not HTML.
Typical Usage¶
Host Endpoints¶
The host provides the following same-domain JSON routes:
GET /model-garden/cost?session=<sessionId>
GET /model-garden/cost-history?session=<sessionId>&limit=<n>
GET /model-garden/catalog
/model-garden/cost: For getting session-related usage/cost data./model-garden/cost-history: For getting session cost details; the number of steps can be limited vialimit./model-garden/catalog: For getting the model catalog; it is automatically refreshed while the selector is mounted.
Upgrading from Manual Installation¶
If you previously installed the old model-garden dependency manually, do two steps first:
-
Remove the old
model-gardendependency. -
Delete the manual
- insert:line from the profile’scordis.patch.yml.
After that, install using the plugin CLI command above to avoid duplicate plugin mounting.
Manual Installation¶
If you are not using the plugin CLI but managing the profile with npm:
-
Add the dependency.
-
List
dsh-model-gardenindsh.profile.bundlesin the profile’spackage.json. -
Reinstall and restart the DSH server.
Use Cases and Notes¶
Suitable for users who use multiple providers, local models, and subscription routes in the DSH Web UI and want to see prices, context windows, real-time costs, and session cost details when selecting models.
Notes before installation:
- The plugin runs with the current
dshprocess permissions; please check the source code and license before installing. - The host requires a web stack; the plugin remains inert in the minimal/TUI profile.
package.jsondeclares a requirement forNode >=22.- Local models remain unpriced; the reference price for subscription routes depends on
PROVIDER_ALIASESresolution.
Conclusion¶
The value of dsh-model-garden lies in extending the model selection in the DSH Web UI from “selectable” to “filterable, sortable, and cost-visible”. It does not change the plugin-based runtime of DSH, but simply provides a set of model selection interfaces on the web side that are searchable, sortable, and capable of tracking costs.
Repository URL:
https://github.com/mrdevlorx/dsh-model-garden