Introduction¶
In the DeepSeek Harness (DSH) plugin ecosystem, plugins are usually provided as flat session catalogs. However, in scenarios such as bioinformatics, a carefully curated skill library may contain hundreds of skills. Loading these directly into the session prompt leads to a large size (about 230 KB / 60–80k tokens), causing context waste.
The dsh-bioinf-routed plugin aims to solve this problem. It replaces the original catalog pattern with a search-based routing pattern, allowing agents to retrieve skills by keywords instead of loading everything at once.
Plugin Overview¶
This is an integrated bioinformatics resource routing plugin. It inherits the core design style of dsh-bioinf, retains BM25 skill search and scenario-guided features, and extends these with capabilities such as a data lake, model registry (ADMET/docking/repurposing + server), knowledge documents, and software libraries. These resources are managed centrally and operate behind a small routing model (bioinf_route), with an optional LLM router for expansion.
This plugin is maintained by user gsh150801 and is licensed under the MIT license.
Core Features¶
The plugin mainly provides the following capabilities:
- BM25-style skill search: Supports a CJK bilingual tokenization scoring mechanism for skill retrieval.
- Category tree browsing tool: Provides top-level categories and subcategories, supporting browsing by domain.
- Bioinformatics library integration: Registers 986 skills into the context for on-demand invocation by the native
skilltool. - Web search provider: Registers
dsh-bioinf-anysearchtoctx.web, providing data source support for the nativeweb_searchtool. - Remote execution tool (optional): Supports executing commands on a configured GPU training server via SSH (for example,
nvidia-smi, background training, log polling, and prediction tasks). - Guidance prompt module: Includes routing rules (such as “never guess skill names”) and three scenario scripts (in-depth literature review, biological data retrieval/analysis, and remote training/prediction).
Configuration and Enablement¶
Using this plugin requires local files and configuration.
Prerequisites:
* A local skillsIndexFile file is required.
* A local anysearch-plugin.js file is required.
* Peer Dependencies must be installed: @deepseek-ai/cordis, @deepseek-ai/dsh-skill, @deepseek-ai/dsh-tools, @deepseek-ai/dsh-web, @deepseek-ai/schemastery.
Configuration example (using cordis.patch.yml or a configuration file):
- insert:
# 注册 bioinf 技能库和索引
- id: bioinf
name: 'file:///path/to/dsh-bioinf/lib/index.js'
config:
skillsIndexFile: '/path/to/skills_meta/_dsh_index.json'
# 注册 Web 搜索提供程序
- id: bioinf-anysearch
name: 'file:///path/to/dsh-bioinf/lib/anysearch-plugin.js'
config:
apiKey: 'your_api_key'
Typical Usage¶
After enabling the plugin, it usually needs to be used together with dsh-tool-skill, and the native catalog feature should be disabled.
- Disable the native catalog:
When configuring@deepseek-ai/dsh-tool-skill, setcatalogtooff.
- id: tool-skill
name: '@deepseek-ai/dsh-tool-skill'
config:
catalog: off
- Enable remote execution:
If SSH execution of remote GPU tasks is required, set host and user information in the configuration.
config:
remote:
host: 'gpu-server.example.com'
user: 'username'
Notes¶
- Permissions and security: The plugin runs with the permissions of the current DSH process. Please check the source code and license before use.
- File dependencies: The paths for
skillsIndexFileandanysearch-plugin.jsmust be configured correctly; otherwise, the related features cannot be loaded. - Remote connection: Using the remote execution feature requires correct SSH connection parameters (
remote.hostandremote.user).
Summary¶
By introducing search and routing mechanisms, dsh-bioinf-routed solves the loading bottleneck of large bioinformatics skill libraries within the DSH context. It decouples resource management from routing logic, enabling agents to efficiently invoke tools and documents for specific scenarios.
For more details and source code, please refer to:
* Plugin directory page
* GitHub repository