zeng6125-rgb / dsh-llm-retry-settings

Listed

DSH 插件:LLM 自动重试设置卡片,在设置里调整重试次数与退避时间并实时生效。

mainModel View source

Installation

npm run build # bash scripts/build.sh (requires DSH_CHECKOUT)

This command is generated from the GitHub repository address. Inspect the upstream README and source before running it; pin a release or commit when reproducibility matters.

README

Maintainer-authored documentation snapshot.

View on GitHub ↗
Commit 966be98Synced Aug 18, 2026

@dsh-external/dsh-llm-retry-settings

A settings card for the DSH LLM auto-retry engine (@deepseek-ai/dsh-llm-retry). Tune the retry count and backoff from Settings → General; changes take effect immediately.

中文说明

Features

  • Includes the settings UI (client bundle lib/client.js): a card in Settings → General — no separate UI package needed.
  • Overrides maxRetries, initialDelayMs, maxDelayMs, and jitterRatio on the agent/request-error retry policy.
  • Preserves each provider's own mode and retryableCodes — only the retry count and backoff timing are overridden.
  • Default enabled: false = fully bypassed; nothing changes until you enable the override.

Install

Prerequisite: a DSH Desktop profile (the web profile lives at ~/.dsh/profiles/web).

# 1. download the packaged plugin tgz from the v0.0.1 release
gh release download v0.0.1 -R zeng6125-rgb/dsh-llm-retry-settings

# 2. unpack it into the profile's node_modules
mkdir -p ~/.dsh/profiles/web/node_modules/@dsh-external
tar -xzf dsh-external-dsh-llm-retry-settings-0.0.1.tgz -C ~/.dsh/profiles/web/node_modules/@dsh-external/
mv ~/.dsh/profiles/web/node_modules/@dsh-external/package \
   ~/.dsh/profiles/web/node_modules/@dsh-external/dsh-llm-retry-settings

# 3. register the bundle in the profile, then restart DSH
#    add "@dsh-external/dsh-llm-retry-settings" to dsh.profile.bundles
#    in ~/.dsh/profiles/web/package.json

Option B — dsh CLI / pnpm (requires git + network)

The dsh plugin command forwards its arguments to pnpm in the profile directory:

# from a git repo (pnpm clones it; the committed lib/ means no build needed)
dsh plugin --profile web add github:zeng6125-rgb/dsh-llm-retry-settings

# or from the release tarball URL
dsh plugin --profile web add https://github.com/zeng6125-rgb/dsh-llm-retry-settings/releases/download/v0.0.1/dsh-external-dsh-llm-retry-settings-0.0.1.tgz

Then enable the plugin in the profile: add "@dsh-external/dsh-llm-retry-settings" to dsh.profile.bundles (or use the Desktop plugin-inventory UI) and restart DSH.

Note: the command is dsh plugin (a subcommand of the dsh CLI), not dsh-plugin. The dsh CLI is bundled with the Desktop app; if it is not on your PATH, invoke it via the app's node_modules bin, e.g. node "<app>/node_modules/@deepseek-ai/dsh/lib/bin.js" plugin --profile web ....

Option C — from source

git clone https://github.com/zeng6125-rgb/dsh-llm-retry-settings.git
cd dsh-llm-retry-settings
npm run build        # bash scripts/build.sh (requires DSH_CHECKOUT)

Link the local build into the profile and register the bundle:

dsh plugin --profile web link "$PWD"
# then add "@dsh-external/dsh-llm-retry-settings" to dsh.profile.bundles and restart DSH

Usage

  1. Open DSH Settings → General.
  2. Find the LLM 自动重试 card.
  3. Toggle 开启覆盖 (enabled) to apply the override.
  4. Set maxRetries / initialDelayMs / maxDelayMs / jitterRatio and click 保存.

Changes are written to the dsh-llm-retry settings namespace and picked up live by the retry engine.

Configuration

KeyTypeDefaultDescription
enabledbooleanfalseEnable the retry-policy override.
maxRetriesinteger (≥ 0)2Maximum retry count (0 = do not retry).
initialDelayMsinteger (≥ 1)500Initial backoff before the first retry (ms).
maxDelayMsinteger (≥ 1)10000Upper bound for backoff (ms).
jitterRationumber (0–1)0.1Random jitter applied to backoff (0 = none).

How it works

The host half registers the dsh-llm-retry settings namespace (schema validation + persistence + live sync) and prepends an agent/request-error listener that rewrites retryPolicy before the official @deepseek-ai/dsh-llm-retry recover runs:

agent/request-error  →  [this plugin: override count/backoff]  →  dsh-llm-retry recover

UI

Settings → General → LLM 自动重试 card. Edits are draft-based: click 保存 to commit or 放弃 to discard. After saving, the card verifies the write against the settings snapshot and shows 已保存 ✓ / 保存失败 ✗.

Requirements

  • Host plugin: @deepseek-ai/dsh-llm-retry
  • Client runtime: @deepseek-ai/dsh-client-web-react
  • DSH settings service

Build

npm run build        # bash scripts/build.sh (requires DSH_CHECKOUT)
npm run typecheck    # tsc --noEmit

License

MIT

Repository information

Language
JavaScript
License
MIT
Latest release
v0.0.2
Last updated
Aug 17, 2026, 5:23 PM

Install deliberately

Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.