
Security News
Deno Goes the Way of the Dinosaur
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.
dsh-reconnect
Advanced tools
Safe model-request retry for DeepSeek Harness with exponential backoff, model-availability recovery, and configurable unknown-error limits.
Safe model-request retry for DeepSeek Harness with exponential backoff, relay/proxy recovery, and a live settings page.
dsh-reconnect retries recoverable model requests so temporary network,
gateway, or provider failures do not interrupt an agent turn or a long-running
task.
The plugin listens to DSH's agent/request-error waterfall. After the built-in
normal Provider retry policy is exhausted, or when an always policy
delegates recovery downstream, ReConnect resubmits the same model request using
its own policy — so a relay that wobbles mid-stream is absorbed rather than
surfaced as a session error.
| Condition | Behavior |
|---|---|
EMPTY_RESPONSE, RATE_LIMIT, SERVER, STREAM_CLOSED, TIMEOUT, TRANSPORT | Retry indefinitely |
| Missing or unconfigured model | Retry indefinitely while configuration recovers |
QUOTA | Do not retry by default; enable with retryQuota |
Unknown errors such as PI_AI_ERROR | Retry indefinitely by default; disable retryUnknown to apply a limit |
| Tool, argument, authentication, credential, context-overflow, and aborted errors | Do not retry |
Tool execution failures in tool/result are outside this plugin's retry
boundary. ReConnect uses the machine-readable failure code from
agent/request-error; it does not infer model failures from arbitrary tool
output.
1s → 2s → 4s → …, capped at 60s by defaultRetry-After value as a minimum wait, even when
it exceeds the local backoff capllm/retry and llm/retry-started session eventsOpen Plugins → dsh-reconnect, then the reconnect row. Its configure control opens the plugin's settings card, and the changes apply to the next failed request without restarting DSH.
In a profile without a Web client (a terminal or headless profile, for example) the row's auto-generated settings form remains available as a fallback; on web profiles the dedicated card takes over.
- insert:
- id: reconnect
name: dsh-reconnect
config:
maxDelayMs: 15000
retryQuota: false
retryUnknown: true
unknownMaxRetries: 3
| Setting | Type | Default | Description |
|---|---|---|---|
maxDelayMs | integer | 60000 | Maximum local exponential-backoff delay in milliseconds |
retryQuota | boolean | false | Retry quota or exhausted-balance errors indefinitely |
retryUnknown | boolean | true | Retry unknown error codes indefinitely |
unknownMaxRetries | integer | 3 | Consecutive unknown-error limit when retryUnknown is disabled |
maxDelayMs limits only the local exponential delay. It does not cap a
Provider Retry-After value or the total retry duration.
All four fields are declared volatile, so a change saved from the Plugins page applies to the next failed request without a restart.
Install and activate the package in the DSH web profile:
dsh plugin --profile web add dsh-reconnect
Then restart the running DSH web process if one is already up. Open Plugins → dsh-reconnect to confirm the bundle and its settings card are active.
The dsh plugin command forwards to the profile package manager. Because this
package declares a dsh.bundle patch, DSH also adds it to the selected
profile's active bundle list; no manual cordis.yml edit is needed.
To update or remove it later:
dsh plugin --profile web update dsh-reconnect
dsh plugin --profile web remove dsh-reconnect
dsh plugin --profile web add github:mrbeandev/dsh-reconnect
Pin an exact release or commit for reproducible installations:
dsh plugin --profile web add github:mrbeandev/dsh-reconnect#v3.0.1
git clone https://github.com/mrbeandev/dsh-reconnect.git
dsh plugin --profile web add ./dsh-reconnect
^22.19.0 or >=24.0.0The settings card never reads credentials.
dsh-reconnect follows the Harness plugin API. Its breaking surface tracks
the harness minor version during the pre-1.0 0.x line:
| dsh-reconnect | Required DSH | Notes |
|---|---|---|
| 3.0.1+ | ≥ 0.2.0-rc.1 | First release for the 0.2 config rewrite (.volatile() Config fields, the configForms client service, and the plugins.row.config slot). |
| 3.0.0 | — | Do not use. Its web settings card fails to activate, so the Web UI shows "Failed to load plugins — dsh-reconnect". Fixed in 3.0.1. |
| 2.x | 0.1.5-rc.x | Released for the settings-namespace model that SettingsForms.register() supported. It cannot start on DSH ≥ 0.2 — ctx.settings.register no longer exists — so upgrade the profile instead. |
Only the current major line receives fixes. Install the matching line for your DSH profile rather than upgrading in place on an older release.
npm test
npm pack --dry-run
Publishing runs the test suite through prepublishOnly.
English edition maintained by the DeepSeek Harness community, based on the MIT-licensed MistRain-1/dsh-reconnect project. The original copyright notice is retained in LICENSE.
MIT
FAQs
Safe model-request retry for DeepSeek Harness with exponential backoff, model-availability recovery, and configurable unknown-error limits.
The npm package dsh-reconnect receives a total of 34 weekly downloads. As such, dsh-reconnect popularity was classified as not popular.
We found that dsh-reconnect demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.

Security News
Anthropic’s free OSS Scanner uses Mythos and other Claude models to find open source vulnerabilities and send maintainers reports with proposed fixes.

Security News
On Front Lines’ Early Adopters: CISO podcast, Andrew Becherer shares lessons from Datadog, weighs the long-term costs of AI-built tools, and explains how founders can actually gain a CISO’s trust.