DSH Hub
dsh-better-reasoning-effort cover

HaoyueQin/dsh-better-reasoning-effort

dsh-better-reasoning-effort

UIWeb UI1 GitHub stars· updated 2026-08-23

Reasoning-effort editing for third-party models in DeepSeek Harness: per-model thinking levels with a knowledge base + protocol inference, edited inside the official Models page card.

Install

npx @deepseek-ai/dsh plugin --profile web add dsh-better-reasoning-effort

Restart `dsh web` after install. Bundle APIs can change during the developer preview.

README badge

dsh-better-reasoning-effort DSH Hub badge
[![DSH Hub](https://dshhub.dev/badge/dsh-better-reasoning-effort.svg)](https://dshhub.dev/plugins/dsh-better-reasoning-effort)

Paste this into your README. The star count updates with every catalog sync.

From the README

Excerpt from HaoyueQin/dsh-better-reasoning-effort, cleaned of badges and images.

DSH Better Reasoning Effort

English | 中文

Reasoning-effort and input-modality editing for third-party models in DeepSeek Harness — thinking levels and image-input support declared per model, auto-adapted from a model knowledge base + wire-protocol inference, edited right inside the official Models page card.

Why

The llm-pi-ai adapter of DeepSeek Harness natively supports per-model reasoningEfforts declarations (which thinking levels a model accepts, and the exact string to send on the wire for each). But the official Models page editor deliberately keeps this field out of reach — the official notes say it is a per-model capability and a provider-level knob would break some models. As a result:

  • Third-party models get no thinking-level picker in the composer (getSupportedThinkingLevels short-circuits to ["off"]);
  • Only the official DeepSeek API (the built-in catalog) can set reasoning effort;
  • Setting levels for a third-party model meant hand-writing the reasoningEfforts / compat blocks in settings.yaml.
  • Hand-declared third-party models are treated as text-only (input defaults to ["text"]): image attachments are refused before they are sent, the read-image tool refuses, and every gateway path in between gates on the same flag. The core already accepts a per-model input: ["text", "image"] declaration — the official page just does not expose it either.

This plugin brings both configuration surfaces back into the UI: edit right inside the official model editor card, plus one-click auto-adapt.

Features

  • In-page injection: an editor block appears in the official Models page under each model row's disclosure, next to context window / max tokens — not a separate settings page, but part of the official editing flow (same settings.mutate contract, same save style). The block spans the full row; its level rows split into the same two columns as the official capacity pair. It now carries two sections — Reasoning effort and Input modalities — owned by one pair of Apply/Reset buttons at the bottom.
  • Create-card staging: the editor also appears while a provider is still being created — auto-adapt works from the typed protocol/endpoint, Stage holds the declaration, and the plugin writes it automatically the moment the provider is saved (a declaration already in the document is never overwritten).
  • Input-modality declaration: one checkbox ("Image input") turns a hand-declared model vision-capable end to end — composer attachments, the read-image tool, and proxy gating all key off the same flag. Unchecking narrows the declaration to text-only; clearing it writes a durable inputUnset marker that host auto-fill respects, exactly like its reasoning-efforts sibling.
  • Zoned suggestion display: Auto-adapt reports what it applied (source · confidence) on its own line, says where modality advice came from (endpoint listing / knowledge base / name heuristic — the last one explicitly flagged low-confidence), and renders reference capacities (context window, max output) in a separate read-only block marked "hints only, never auto-filled". Values are thousands-grouped so you can copy them straight into the official capacity inputs by hand.
  • Auto-adapt: a built-in model knowledge base (DeepSeek V3/V4/R1 with its vision experiment; OpenAI GPT-4o/GPT-5 by generation and o-series; Claude 4/5, Gemini 3.x, Grok 4.x, Mistral Magistral / Medium 3.

Related plugins