dsh-cliproxyapi-provider
Manifest valid★ 2Auto-discovery CLIProxyAPI provider for DeepSeek Harness, featuring dynamic model sync, native model switching, and vision-model selection.
DSH CLIProxyAPI Provider
An auto-discovery CLIProxyAPI provider for DeepSeek Harness (DSH).
It discovers a local CPA service and synchronizes the live model catalog into DSH's native model picker.
Why this plugin?
Generic OpenAI-compatible routes usually require a manually maintained base URL and model list. This plugin treats CLIProxyAPI as a first-class, dynamic DSH provider:
- Zero-address local setup — probes
127.0.0.1:8317,localhost:8317, and[::1]:8317. - Live model discovery — reads
/v1/models?client_version=pi, with standarddata[].idfallback. - Native model switching — models appear under
CLIProxyAPI (auto)in DSH's model picker. - Newest versions first — versions are sorted newest-first inside each model family.
- Native capability sync — imports context/output limits, reasoning support, image input, and service tiers when CPA reports them.
- Automatic refresh — CPA account or model changes are picked up without reinstalling the plugin.
- Credential-safe — the API key is stored through DSH's credential service, not in
settings.yaml. - Standard DSH bundle — works with DSH Web, headless profiles, and DSH Desktop; it is not a Desktop-only extension.
Requirements
- DeepSeek Harness
0.1.5-rc.1(public contracts0.1.5-rc.2) - Node.js
22.19+or24+ - A running CLIProxyAPI instance
The plugin is built and tested against the public DSH 0.1.5-rc.2 contracts used by the
0.1.5-rc.1 CLI release. Version 0.1.8 and later use the current settings and browser module APIs.
Install
Install directly from GitHub into the profile you use:
dsh plugin --profile web add github:ChadCSong/dsh-cliproxyapi-provider
For DSH Desktop, use its active profile (normally desktop):
dsh plugin --profile desktop add github:ChadCSong/dsh-cliproxyapi-provider
Restart the corresponding DSH process once after installation. No manual profile patching is needed;
the standard DSH bundle declaration lives in package.json and cordis.patch.yml.
Install from a local checkout
git clone https://github.com/ChadCSong/dsh-cliproxyapi-provider.git
cd dsh-cliproxyapi-provider
pnpm install
pnpm build
dsh plugin --profile web add "$PWD"
Replace web with the profile you actually use.
Setup and usage
- Start CLIProxyAPI. Leave the URL empty when it listens on the default port,
8317. - Open Settings → Plugins → CLIProxyAPI (auto discovery) in DSH.
- If CPA bearer authentication is enabled, enter the API key once.
- Return to a conversation and select any model under CLIProxyAPI (auto) in DSH's native picker.
Useful commands:
/cpa-status
/cpa-refresh
/cpa-status reports the current endpoint and synchronized model count. /cpa-refresh immediately
probes CPA and refreshes the DSH model catalog.
Configuration
The settings namespace intentionally remains dsh-cliproxyapi for upgrade compatibility:
dsh-cliproxyapi:
enabled: true
# Empty means local auto-discovery. Remote CPA is also supported.
baseURL: ''
apiKeyEnv: CLIPROXYAPI_API_KEY
protocol: openai-completions
refreshIntervalSeconds: 300
probeTimeoutMs: 2000
Endpoint resolution
Candidates are deduplicated and tried in this order:
- Explicit
baseURLsetting CLIPROXYAPI_BASE_URLfrom the DSH launch environment- Local loopback candidates on port
8317
A non-loopback service is contacted only when you explicitly configure it.
API key storage
apiKeyEnv is a credential reference, not the secret itself. The settings UI writes the key through
DSH's credential service. The default reference is CLIPROXYAPI_API_KEY.
Inference protocol
The default, openai-completions, uses CPA's /v1/chat/completions route. Select
openai-responses only when your CPA deployment exposes the target models through the Responses API.
Image input
The plugin forwards the input capabilities reported by CPA. Models that declare image input receive images through DSH's official adapter; text-only models remain text-only. There is no separate vision model, image-to-text preprocessing, or capability override. DSH applies its native compatibility rules when a session contains images.
How it works
The plugin manages one route in DSH's official @deepseek-ai/dsh-llm-pi-ai adapter through the public
settings contract. It does not patch Harness or reimplement model transport. Streaming, tool calls,
attachments, reasoning, image handling, and errors continue through the official adapter.
The host bundle imports no Electron or dsh-plugin-desktop APIs. Its settings card uses public DSH
client services and slots, allowing the same package to run in CLI/Web and Desktop profiles.
Development
pnpm install
pnpm test
pnpm typecheck
pnpm build
When developing against a local Harness checkout:
DSH_CHECKOUT=/absolute/path/to/deepseek-harness pnpm test
DSH_CHECKOUT=/absolute/path/to/deepseek-harness pnpm build
Alternatively, point DSH_PACKAGES_ROOT at a DSH node_modules directory. Generated local path files
are ignored by Git and never included in published packages.
Security
Automatic discovery only contacts loopback addresses. The plugin never writes a literal API key to its settings, model cache, or logs. See SECURITY.md to report a vulnerability privately.
Contributing
Issues and pull requests are welcome. For behavior changes, please include or update Vitest coverage and
verify pnpm test, pnpm typecheck, and pnpm build before submitting.
License
Comments
Loading…
From the same category
by deepseek-ai
DeepSeek Harness: Everything is a Plugin.
★ 232.3k
MIT
TypeScript
Sep 17, 2026
by nexu-io
🎨 Best DeepSeek Harness Design Plugin. The open-source Claude Design alternative. 🖥️ Local-first desktop app. 🖼️ Your coding agent becomes the design engine: prototypes, landing pages, dashboards,
★ 97.5k
Apache-2.0
TypeScript
Sep 21, 2026
by Tencent
Open-source LLM knowledge platform: turn raw documents into a queryable RAG, an autonomous reasoning agent, and a self-maintaining Wiki.
★ 28.5k
↓ 831/wk
NOASSERTION
Go
Sep 21, 2026
dsh plugin --profile web add @wxg-prc-cpg/dsh-weknoraby awesome-dsh-plugin
A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表
★ 16.5k
CC0-1.0
Python
Sep 21, 2026
by zhu1090093659
DeepSeek Harness (DSH) Web Plugin Aggregation Ecosystem · Everything is a plugin, distributed via the Creative Workshop
★ 7.9k
Apache-2.0
TypeScript
Sep 21, 2026
dsh plugin --profile web add dsh-webby yjh051108
dsh-routing-suite — injector + router-standard kit: install the runtime injector first, then the task-aware reasoning-mode router preset (measured P1-P23).
★ 7.2k
MIT
JavaScript
Sep 18, 2026
dsh plugin --profile web add @dsh-external/dsh-super-injector