How to use deepseek-harness-model-config
Add a "Model Advanced Configuration" page to DeepSeek Harness Web UI, supporting custom OpenAI/Anthropic endpoints with per-model context and inference intensity settings.
This article is auto-derived from indexed fields (wiki / faq / compatibility_json), not freshly AI-generated.
This article is derived from the plugin's already-indexed fields (wiki / faq / compatibility_json / readme), not freshly generated by AI. Source field is noted at the end of each section.
Quick start
deepseek-harness-model-config
— source: plugin_wiki.wiki_content
Install & verify
dsh plugin --profile web add github:MarvekG/deepseek-harness-model-config
Run the command above in your DSH Web Profile. Then enable the plugin in the plugin list.
— source: plugins.install
Key points
- 新增自定义端点:名称、URL、API Key 和协议。
- 支持在 provider 层配置自定义请求 Header,并应用于模型请求。
- 支持
openai-completions、openai-responses、anthropic-messages。 - 通过统一的
GET /models流程获取候选模型,支持全选、反选和全不选。 - 新增端点和已保存端点共用编辑器;已保存端点可重新拉取模型,新增模型默认不勾选,已有勾选模型在刷新后保留。
— source: plugin_wiki.readme_en (fallback readme_raw)
FAQ
Does this plugin conflict with DSH's built-in Models settings page?
Under the standard Web profile, both will be visible at the same time. DSH design explicitly makes them mutually exclusive. This plugin can run independently after disabling the ui-settings-models line at the profile layer; otherwise, two sets of UIs will modify the same configuration (src/client.js:1232 / docs/model-config-plugin-design.md:188).
Where is the API Key written? Will it leak to settings.yaml?
No. The plugin only writes credential references (like MY_ENDPOINT_API_KEY) through Harness's credentials service. The real key only exists in memory and is submitted once; plaintext will not appear in settings.yaml or configuration preview (package.json:5-7 / README.md:18).
Which API protocols are supported?
Currently three dropdown options are provided: openai-completions, openai-responses, anthropic-messages. When fetching model candidates, anthropic-messages is automatically switched to use OpenAI-compatible GET /models because model lists are generally in OpenAI format (src/client.js:1375-1377, 1181).
Can it still work normally when models.dev is unreachable?
Yes. The models returned by the endpoint can still be manually checked and edited, but context, output, input modalities, and reasoning capabilities will no longer be auto-completed. After submission, it will prompt "endpoint results can still be edited" (src/client.js:136, 270, 1184 / README.md:37).
When editing a saved endpoint, if the API Key field is left blank, will it overwrite the original Key?
No. Leaving it blank means "continue using existing credentials". Only filling in a new value will call credentials.set to update (docs/model-config-plugin-design.md:140).
How to uninstall and update?
Both use remove then add: dsh plugin --profile web remove dsh-models-config-plugin, then dsh plugin --profile web add github:MarvekG/deepseek-harness-model-config, then dsh web (README.md:62-77).
When re-fetching models, will the already checked ones be cleared?
No. Already checked models keep their checkmarks, newly appearing models default to unchecked, and models no longer returned by the endpoint are also kept displayed to avoid accidental deletion during refresh (src/client.js:1171-1174 / README.md:13).
Can I configure global custom headers for an endpoint? Are they also included when fetching models?
Custom headers can be added in endpoint advanced parameters, but headers are only attached when calling the model and won't appear in GET /models requests (README.md:30 / docs/llm-pi-ai-parameters.md:37).
— source: plugin_wiki.faq_json
Compatibility
- DSH: 未声明(package.json 未声明 engines/peerDependencies;按设计要求宿主需装载 llm-pi-ai 适配器并支持 settings.section / credentials / settings.mutate 等扩展点)
- Node: 未声明
- Platforms: macOS, Windows, Linux
— source: plugin_wiki.compatibility_json
Pitfalls
Review the upstream repo before installing. This guide is auto-derived from indexed fields and may lag the latest release. If anything contradicts the official docs, treat the upstream source as authoritative.
— source: general rule