DeepSeek Harness (DSH) is built on the core idea that “everything is a plugin.” When building agents, exposing the full toolset consumes a large number of tokens and can easily lead the model to choose the wrong tool; exposing only a minimal toolset, however, lacks extensibility. dsh-standard-toolkit is a “tool butler” installed into DSH. It manages tools through a staging area, loads them on demand, and automatically removes them after use.
Positioning and Maintainer¶
dsh-standard-toolkit is a DeepSeek Harness plugin maintained by developer suanniniu. It solves the problem of chaotic tool management in agent development. Its core value is: saving tokens, automatic on-demand expansion, and support for creating tools on the fly.
The plugin is open-sourced under the MIT License.
Core Features¶
The plugin implements automated tool management through a series of mechanisms:
- Tool staging area: Tools are kept in the repository by default; if not loaded, they do not occupy the schema. They are “placed on the desktop” only when retrieved.
- On-demand automatic expansion: Matching trigger keywords automatically loads the corresponding tool.
- Session isolation: Dynamic tool registration happens at the agent layer. Tools are automatically uninstalled when the session is destroyed, avoiding tool contamination between different sessions.
- Self-evolving capability: The model can use
register_new_toolto create a tool on the fly, automatically completing specification review, smoke testing, classification, storage, and immediate availability. - Two-level trigger keyword matching: Supports strong triggers (one word matches) and normal triggers (at least two words combined match), avoiding false triggers.
- Security mechanisms: Before a tool is accepted, it must pass specification review (
vetTool); access to non-injected services is rejected; smoke testing is performed before storage.
Installation and Activation¶
Before installing, ensure Node.js (>=18) is installed.
npm i dsh-standard-toolkit@1.1.1
Release strategy note (from v1.1.1): The npm package contains only the plugin core (index.js + skills/ + vendor/ + docs/); the toolset is not published with the package. The toolbox/ directory is a local asset and must be cloned from the repository or generated via register_new_tool.
Manually mounting the plugin usually involves copying files to the DSH runtime directory and injecting configuration. The installation scripts install.sh or install.bat can complete copying, mounting, and verification:
# Linux/macOS/git-bash
./install.sh /path/to/dsh/runtime
# Windows
install.bat D:\path\to\dsh\runtime
After installation, restart DSH. The logs should show information similar to mode=auto 暂存区=N 雷达=M.
Usage¶
User side¶
Usage on the user side is transparent. Just converse normally; the plugin automatically loads tools based on trigger keywords.
Example
You: Calculate the number of days between 2026-08-01 and 2026-08-16
dsh: → (trigger keyword matched, auto-loaded days_between) → returned 15 days
Model side¶
The plugin injects the available tool directory into the system prompt. The model can use the following two “key” tools:
load_tool(name): Load a tool into the current session by name.register_new_tool(def): Create a new tool on the fly.
register_new_tool supports parameters such as name, execute (source code string), parameters, smoke, and triggerKeywords. Registering a new tool requires the smoke parameter for smoke testing.
Custom tools¶
Custom tool definition files are placed in the toolbox/<category>/ directory, where the file name is the tool name. The file must default-export an object containing fields such as name, execute, parameters, and metadata (including triggerKeywords and smoke).
export default {
name: 'days_between',
description: '计算两个日期(YYYY-MM-DD)之间相隔的自然日天数',
parameters: {
type: 'object',
properties: { date1: {type:'string'}, date2: {type:'string'} },
required: ['date1','date2']
},
execute: async function (args, exec) { /* 纯逻辑 */ },
metadata: {
triggerKeywords: ['算','隔','天'],
smoke: { date1:'2026-08-01', date2:'2026-08-16' }
},
}
Security and Verification¶
The plugin has built-in security review mechanisms:
* Specification review: vetTool checks fields, JSON Schema, naming, and the service access whitelist.
* Exception capture: Full-chain exception capture with normalized return, never blocking the request flow.
* Smoke testing: Before storage, only the smoke parameters explicitly declared by the author are run, avoiding accidental real side effects.
The plugin logic can be verified with the following command:
cd dsh-standard-toolkit && npm test
Applicable Scenarios and Precautions¶
- Target users: DSH agent developers, especially in scenarios requiring fine-grained control over the tool exposure scope and session environment.
- Permissions note: The plugin runs with the current DSH process privileges. Check the source code and license before installation.
- Ecosystem context: The DSH ecosystem directory (such as skillhub.cn) is a community site and has no official affiliation with DeepSeek or Huanfang.
Summary¶
dsh-standard-toolkit provides a full-lifecycle management solution covering tool definition, staging, automatic loading, and disposal. Through the staging area and session isolation, it addresses token consumption and tool contamination issues, and lowers the barrier to creating new tools via register_new_tool.
For more details, see:
* GitHub repository
* Plugin directory page