Introduction¶
When developing agents with DeepSeek Harness (DSH), setting an appropriate thinking depth (reasoningEffort) for each Prompt is a repetitive and error-prone task. Manual adjustments are not only inefficient but also make it difficult to ensure consistency. The dsh-jev-thinking plugin integrates with TypeSafe’s Jev model to automatically analyze the reasoning intensity required for each message and writes the result into the request, thereby simplifying this process.
What It Is¶
dsh-jev-thinking is a model-reasoning plugin maintained by kyan001 and released under the MIT license. It dynamically determines the reasoningEffort parameter of a model request by asking the Jev model, “How much internal reasoning does the current message require?”
Core Features¶
The plugin mainly implements the following logic:
1. Read routing options: The plugin reads the thinking levels provided by the current route (such as off, low, and high) and sends them as options to Jev. Jev cannot select an unsupported level, and the plugin also does not adjust the level after making a decision.
2. Single-round question: Regardless of how many tool calls a message contains, the plugin asks Jev only once.
3. Context completion: To prevent the model from incorrectly judging that short replies (such as just the word “good”) require no reasoning, the plugin also sends the previous assistant reply to Jev.
Installation¶
To install the plugin in a terminal, specify the Profile name (using web in the example):
dsh plugin --profile web add dsh-jev-thinking
Or execute it through an Agent inside DSH:
plugin_manager { action: install_bundle, target: "dsh-jev-thinking" }
Configuration and Usage¶
After installation, configure the API Key. You can configure it manually on the DSH plugin page or set it directly in ~/.dsh/.credentials.yaml.
The default plugin configuration items are as follows:
| Field | Default Value | Description |
|---|---|---|
apiKeyRef |
TYPESAFE_API_KEY |
Name in the credential store |
endpoint |
https://api.typesafe.ai/v1/systemone |
System One endpoint |
model |
jev-latest |
Model that answers the question |
timeoutMs |
2500 |
Timeout; fallback is triggered when timeout occurs |
level |
Empty | Fallback level on failure; requires route support |
verbose |
false |
Whether to log every decision |
Caveats¶
When using this plugin, note the following limitations:
* Context dependency: The plugin uses only the latest message. References to older messages (such as “do as you said”) may be misjudged.
* Token consumption: The previous assistant turn is sent to TypeSafe, consuming approximately 7,500 to 9,600 tokens.
* Route support: If xhigh or max routes are provided, they are added to the options. The model may select the highest level, which can increase costs.
* Fallback strategy: Insufficient quota does not trigger fallback; each Prompt will still attempt to pay.
* No restriction options: There is no option to exclude or restrict levels.
Conclusion¶
This plugin reduces the workload of manual tuning through automated decision-making, making it suitable for DSH users who need fine-grained control over model reasoning depth. The related code and repository can be found on GitHub.