Introduction¶
In the Web client of DeepSeek Harness (DSH), when users configure third-party providers through the Settings -> Models page, the built-in form intentionally hides two key fields: the input modalities accepted by each model (whether images are allowed) and the reasoning level. This often forces developers to edit YAML configuration files directly or rely on adapter defaults. The dsh-models-input-modalities plugin addresses this configuration pain point by directly exposing these fields in the Web interface.
What This Is¶
This plugin is maintained by DamonBao and is a DSH Web client plugin. It adds a “Model Capabilities” collapsible panel to each third-party (pi-ai) provider card on the Settings -> Models page. The panel allows users to declare the input modalities and reasoning level accepted by each model without manually editing configuration files.
Core Features¶
- Input Modality Selector: Provides three options: Provider Default, Text Only, or Text and Image. The plugin writes the semantics required by the adapter based on the selection. Selecting “Text Only” writes
input: [text]; selecting “Text and Image” writesinput: [text, image]; selecting “Provider Default” removes the field. - Reasoning Level Selector: Provides three options: Catalog Default, Non-Reasoning Model, or Declared Level. Expanding “Declared Level” provides seven options: off, minimal, low, medium, high, xhigh, max. The plugin writes the selected level to the
reasoningEffortsdictionary. The adapter validates the declared set and rejects invalid settings (for example, a level with no value). - Conflict Handling: Uses revision-fenced writes. When the collapsible panel is opened to read data, the plugin records the current revision. Writes are made using that revision as the basis. If concurrent edits occur, a conflict notification is triggered and the data is reloaded, instead of silently overwriting.
- Localization Support: The interface supports English and Chinese, and remains consistent with the Web UI language setting.
- Settings Migration: Supports migrating legacy
llm-pi-aiconfigurations to the new pi-ai structure.
Installation and Enablement¶
The plugin must be installed through DSH’s plugin manager.
1. Find the plugin in DSH’s plugin list.
2. Run the installation.
3. After installation is complete, restart the dsh web process.
Typical Usage¶
- Open DSH and navigate to
Settings -> Models. - Find the corresponding third-party provider card and expand the “Model Capabilities” collapsible panel.
- For a specific model, select the input modality (for example: Text and Image).
- Select the reasoning level (for example: Declared Level, and check high).
- Click Save. The configuration will be written to the user-layer file
$DSH_HOME/profiles/<profile>/cordis.patch.yml.
Use Cases and Notes¶
- Use Cases: When you need to enable image input for a specific model or need precise control over the reasoning level (especially when the adapter requires specific parameter mapping), this plugin provides a more intuitive method than manually editing YAML.
- Notes:
- The plugin does not pre-write provider configuration (such as API Key, model list, etc.), and these still need to be created through the standard form.
- The adapter rejects invalid declared sets (for example, checking only
offwithout a value, or checking another level without a value). - The plugin prevents overwriting unsaved drafts.
- Back up
DSH_HOMEbefore upgrading DSH.
Brief Conclusion¶
This plugin provides DSH users with more fine-grained configuration control by allowing them to manage previously hidden model capability fields directly in the Web interface. Source code and documentation are available on GitHub.