xiamubumu/dsh-aux-degrade ↗★ 0
dsh-aux-degrade
DSH plugin: stop auxiliary LLM calls from burning the output budget. Degrades reasoning effort for compaction summaries, session titles and prompt enhancement; raises their max_tokens floor; appends verbatim-retention sections to compaction instructions; and strips tools from compaction calls, so a high default thinking level cannot silently truncate a checkpoint. 适合希望减少会话标题生成、提示词增强等辅助任务Token消耗的用户。
설치
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:xiamubumu/dsh-aux-degradeConfiguration
The configuration file is the profile's cordis.patch.yml:
- id: aux-degrade
config:
enabled: true
purposes: []
models: []
effort: off
| Key | Type | Code default | Effect |
|---|---|---|---|
enabled | boolean | false | Controls only #1 (lowering reasoning effort). It takes effect only when set to true — what this repository's cordis.patch.yml sets is true |
purposes | string[] | [] → ['compaction', 'session-title', 'title'] | Identify auxiliary calls by purpose |
auxPlugins | string[] | [] → ['dsh-prompt-enhance'] | Identify auxiliary calls by originating plugin. Passing ['__none__'] disables this criterion entirely |
models | string[] | [] (unrestricted) | Apply only to the specified models |
effort | string | 'off' | The level to lower to |
noTools | boolean | true | Whether compaction calls have tools cleared (#4) |
⚠️
enabled: falsedoes not mean "zero side effects". The old documentation said so, and it is wrong.enabledonly stops #1 (lowering reasoning effort); #2–#4 (raising themaxTokensfloor, appending the two faithful-preservation requirements, clearingtoolsfor compaction) run before anyenabledcheck in the code, and execute as soon as thepurposeconditions are met. To stop #2, useDSH_AUX_MAXTOKENS_FLOOR=0; for #4 useconfig.noTools = false; #3 (appending the two sections) has no separate switch.
Why is dsh-prompt-enhance recognized by default?
Because when it initiates a call it does not pass purpose — the "by purpose" criterion above is completely ineffective for it. Without this auxPlugins criterion, its calls would inherit the high reasoning level all the way through, the output budget would be eaten by inference, and the symptom would be a flood of 502s and half responses. This criterion exists for its sake.