deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
English | 中文
A DeepSeek Harness bundle that adds an Auto model option. When a session selects auto, the plugin classifies each turn with a small Flash call and routes it to deepseek-v4-flash (SIMPLE) or deepseek-v4-pro (COMPLEX).
It is a plain-JavaScript bundle, so it installs straight from a git host with no build step. It uses only shipped core APIs and runs against an unmodified harness.
Install into the web profile (the profile the dsh web command boots):
From a local checkout:
dsh plugin --profile web add ./dsh-auto-model
From GitHub:
dsh plugin --profile web add github:AL-spiritphoenix/dsh-auto-model
Then boot it:
dsh web
dsh web is the web profile's alias, so no --profile flag is needed. The model selector now lists Auto alongside Flash and Pro. The concrete model the router chooses is what the session log records in each request header.
deepseek-auto provider route, whose listModels() returns the auto entry at runtime. The directory entry is therefore independent of llm-deepseek's models config, so a settings.yaml override cannot hide it.agent/request waterfall (outside installModelSelection) and rewrites auto — whichever provider carried it — to a concrete provider/model before dispatch.classifierModel (defaults to the fast model); later steps of the same turn reuse the decision. A failed call falls back to onClassifierError (default slow).All fields are optional and default to the DeepSeek V4 pair:
| Key | Default | Meaning |
|---|---|---|
provider |
deepseek-official |
Provider route the concrete requests are routed to. |
model |
auto |
Virtual model id shown and submitted; never dispatched. |
providerName |
DeepSeek(Auto) |
Selector group label. |
name |
Auto |
Selector model label. |
description |
(built-in) | Selector detail. |
fastModel |
deepseek-v4-flash |
Model for SIMPLE tasks. |
slowModel |
deepseek-v4-pro |
Model for COMPLEX tasks. |
classifierModel |
fastModel |
Model serving the classifier call. |
classifierPrompt |
(built-in) | Classifier system prompt. |
classifierMaxTokens |
16 |
Classifier output-token cap. |
classifierTimeoutMs |
10000 |
Classifier call deadline. |
contextBudgetChars |
4000 |
Maximum task characters fed to the classifier. |
onClassifierError |
slow |
Target when classification fails or returns an unknown token. |
Override them in the web profile's cordis.patch.yml:
- id: auto-model
config:
fastModel: deepseek-v4-flash
slowModel: deepseek-v4-pro
onClassifierError: slow
auto is advertised as a text model, so an image-containing session cannot select it.auto is session-local: after a restart, a non-blank session resumes from the logged concrete model rather than re-classifying.CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。