Introduction

DeepSeek Harness (DSH) uses a plugin-based architecture that allows users and developers to extend functionality. zhangzifei/dsh-model-aliases is a model inference plugin that provides persistent model alias functionality for DeepSeek Harness Web. By binding a provider, model, and reasoning effort into an easy-to-remember name, users can quickly switch using a single selector next to the input box without needing to reconfigure everything each time.

Core Features

  • Full Configuration Binding: An alias represents a complete model configuration, with the name binding a provider, model, and optional reasoning effort.
  • Two-Way Synchronization: The alias selector coexists with the native “Model / Reasoning Effort” controls. Selecting an alias rewrites the native control values; manually changing the native controls updates the alias display.
  • Persistence and Directory Awareness: Configuration is written to the model-aliases namespace in DSH and remains active after restart. It supports selecting from the current session directory dropdown or entering a custom ID directly in the same field.
  • Safe Fault Tolerance: Aliases that are temporarily missing from the directory are not lost, but are disabled with an explanation of the reason. Switching is prohibited while locked, and addressed child-agent sessions do not display the selector.
  • Native Validation: All selections are ultimately validated and applied through DSH ModelDirectory.select(), ensuring configuration validity.

Installation and Enablement

  1. Run the install command:
dsh plugin --profile web add github:ZhangZiFei/dsh-model-aliases
  1. Restart the dsh web process and refresh the page.
  2. Open Settings → Model Aliases for initialization.

Usage Flow

  1. Open Settings → Model Aliases.
  2. Add an alias by selecting or directly entering the provider, model, and optional reasoning effort from the dropdown menu.
  3. Adjust the order and save.
  4. Return to the session and use the alias selector in the bottom-right corner of the input box to switch; the adjacent native model selector will synchronously display the current model and reasoning effort, and you can also select manually there.

Configuration Notes

Configuration is stored in the model-aliases section of the DSH settings document:

model-aliases:
  aliases:
    - name: 日常
      provider: deepseek
      model: deepseek-chat
    - name: 深度推理
      provider: openai
      model: o3
      reasoningEffort: high

Configuration rules:
* The name, provider, model, and any present reasoning effort must be non-empty strings without leading or trailing whitespace.
* Alias names must be unique.
* The full selection consisting of provider, model, and reasoning effort must be unique.

Compatibility and Notes

  • Compatibility Target: Currently compatible with DeepSeek Harness Web 0.1.2-rc.1.
  • Automatic Injection: The plugin declares a DSH Bundle, and the install command automatically adds the Patch to the Web Profile, so there is no need to manually edit cordis.patch.yml.
  • Default Behavior: When the reasoning effort is set to “Provider Default”, the plugin does not write a fabricated default value; instead, it preserves the adapter or provider’s original behavior.
  • Preset Logic: On first use, preset aliases are written. If an empty list is saved, the plugin automatically restores preset values. Preset routes not present in the current model directory are retained but cannot be selected.

Summary

This plugin reduces the switching cost of model configuration in DeepSeek Harness Web through an alias mechanism, making it suitable for users who need to adjust model parameters frequently. Visit GitHub for more technical details.