更好的模型 Provider
Better custom-provider model onboarding for DeepSeek Harness (dsh), with per-model declaration of native vision input, reasoning-effort levels, and token capacities (context window / max output).
이것은 DeepSeek Harness(DSH) 플러그인입니다. 이 사이트는 GitHub README, 설치 정보, 유지보수 상태, 공개 보안 시그널을 모아 보여줍니다.
업스트림에서 중국어 README를 제공하지 않아 저장소 원본 내용을 표시합니다.
better-model-provider
Better custom-provider model onboarding for DeepSeek Harness (dsh), with per-model declaration of native vision input, reasoning-effort levels, and token capacities (context window / max output).
English | 中文

Why you may need it
The official Models page manages providers and model rows, but two per-model capability fields stayed YAML-only: reasoningEfforts (which reasoning levels the model accepts, plus each level's wire spelling) and input (which request modalities the model admits). This page edits those two plus the per-model token capacities (contextWindow / maxTokens) — on the models you declare — so one row fully configures one model. Until the capability fields are declared:
- the composer's model picker shows no reasoning-effort control for your model;
- image sessions refuse to switch to it (
Model ... does not accept image input), because a hand-declared model defaults to text-only.
Install
# From GitHub:
dsh plugin --profile web add github:sanshanya/better-model-provider
# Local checkout:
dsh plugin --profile web add link:<absolute path to this repo>
Restart dsh web, hard-refresh the browser, and the settings sidebar gains Model capabilities. Uninstall:
dsh plugin --profile web rm better-model-provider
Use
- Configure the provider on the official Models page first (that's where the API key lives; this page never touches credentials).
- Open Settings → Model capabilities.
- Expand a model row: pick Custom under reasoning effort and check the levels; for vision models check
imageunder input modalities; fill the context window / max output tokens when the provider default is wrong. Provider and model lifecycle stays on the official Models page. - Apply. The picker immediately offers exactly the declared levels, and the host's image admission admits the model.
Small note: declaring { high } alone gives the picker only High; also check off (blank wire → null) if Off should be available.
Development
See CONTRIBUTING.md for the gate list (build / test / coverage / lint / typecheck / verify:pack) and the two real-harness lanes; ci runs the hermetic gates per push and live runs nightly.
Compatibility
Verified against a DeepSeek Harness checkout at master commit 47f943859b (2026-08-13; the published contract line is 0.1.0-rc.6, whose real npm ancestry is rc.2 → rc.3 → rc.6 — there never was an rc.5). Minimum-known-good: the contract that commit serves — settings.describe/mutate, llm.providers, the { rpcId, result } envelope, and the model row schema. Internal-only surfaces (settings.section registration shape) are treated as experimental compatibility: a newer harness that doesn't serve them degrades silently instead of breaking the page.
License
MIT
보안 및 설치 증거
이 점수는 공개 저장소 메타데이터와 이 사이트에 등록된 설치 증거에만 기반하며, 코드 보안 감사와 다릅니다.
공개 플러그인 카탈로그에서 왔으며, 공개 GitHub 저장소로 연결됩니다.
저장소가 MIT 라이선스를 선언했습니다.
최근 180일 내 코드 업데이트가 있습니다.
재현 가능한 정확한 설치 메타데이터가 아직 등록되지 않았습니다. 저장소 설명에 따라 직접 확인하세요.
검사한 패키지 메타데이터에 설치 라이프사이클 스크립트가 선언되지 않았습니다.