When using the Web profile in DeepSeek Harness (DSH), a long model list can make it inefficient to find a specific model. The odelbos/dsh-models-filter plugin adds a filter input field at the top of the model list in the composer model menu, optimizing the model selection workflow through case-insensitive filtering and keyboard navigation.

Plugin Positioning

This is a DeepSeek Harness client plugin maintained by odelbos and licensed under the MIT License. It adds a filtering layer to the model selection menu without changing other parts of the menu (such as Model/Effort cells or the root panel).

Core Features

  • Filter input field: Adds a new input field at the top of the model list; once focused, you can start filtering.
  • Multi-dimensional filtering: Supports case-insensitive filtering by model name, ID, description, or provider name/ID.
  • Combobox keyboard navigation: Supports moving the highlight with ArrowDown and ArrowUp, selecting with Enter, and clearing the query with Esc or clicking ×.
  • Synchronization and design: Synchronizes with the shared per-session ModelDirectory and uses built-in DSH CSS classes to maintain consistent design.

Installation and Activation

Use the following command to install the plugin:

dsh plugin --profile web add gh:odelbos/dsh-models-filter

After installation, restart the profile (dsh web) to activate the new layer.

Typical Usage

  1. Open the composer model menu and type text in the input field at the top of the list; the list filters in real time.
  2. Use the ↓ or ↑ keys to move the highlight between visible rows, while focus remains in the input field.
  3. Press Enter to select the currently highlighted row.
  4. Press Esc or click the × next to the input field to clear the query and restore the full list.

Notes

  • Version dependency: The plugin depends on DSH version 0.1.1-rc.2, because it hard-codes a CSS class hash prefix.
  • Code quality: This plugin was entirely generated by GLM-5.3-FLASH; the author states they have no experience with DSH plugin development.
  • Potential risk: The plugin uses a const C = {} mapping, and future DSH versions may cause it to fail if the class name prefix changes.
  • License: Licensed under the MIT License.

Summary

By adding a filter function at the top of the menu, this plugin simplifies the model selection workflow. For more details, refer to the plugin directory or the GitHub repository.