dsh-retry-guard
Observes consecutive identical tool failures and optionally pauses before the next model step, preserving original results and successful repeats, with an in-chat report in DSH Web.
Install
dsh plugin --profile web add dsh-retry-guard
Sandbox test
This plugin has not been tested yet. Submit a test →
README
DSH Retry Guard
Pause before the next model step after three identical DSH tool errors.
20-second recording: real DSH Web, scripted model, no API key.
The demonstration uses a deliberately failing local tool, not a production AI model.
In DSH, open Plugins → Add plugin, enter this package name, click Install, then
Enable now:
dsh-retry-guard@alpha
Supported target: DSH Web 0.2.0-rc.2 · Node.js 24. Early prototype, MIT.
Unofficial community plugin; independently maintained and not endorsed by DeepSeek.
Default: observe. Opt-in: pause. The plugin requires no separate account,
API key or network connection. Installing dependencies requires registry access.
Install in your DSH Web
Requires an existing DSH Web 0.2.0-rc.2 installation on Node.js 24.
The released archive contains built JavaScript. You do not need Git, pnpm, a
source checkout, or a build to install it. The alpha tag selects the current
prerelease. To pin this version, enter dsh-retry-guard@0.1.0-alpha.2.
1. Open Plugins → Add plugin. Enter dsh-retry-guard@alpha into
Package name or address and click Install.
2. Wait for the installed screen, then click Enable now. Installing the
files alone does not enable the plugin. Keep this screen open until enabled.
3. In Plugins, open the dsh-retry-guard bundle, then its
dsh-retry-guard component (Configure).
4. Leave Observe selected to see notices while work continues. To stop
repeated failures, choose Pause and click Save settings.
5. Continue working in your normal DSH conversation. You do not need to invoke
Retry Guard with a command.
See verification scope for the installation checks.
Terminal installation
dsh plugin --profile web add dsh-retry-guard@alpha
Restart DSH Web after a CLI installation, then open the settings as above.
Use DSH's plugin manager to install and activate the bundle; a plain
npm install in an unrelated project does not activate it in DSH.
GitHub download alternative
The earlier alpha.1 archive
remains available with identical detector, host and browser code. Download its
.tgz and SHA256SUMS, then install it from the download directory:
dsh plugin --profile web add ./dsh-retry-guard-0.1.0-alpha.1.tgz
The archive's dsh.bundle manifest points to cordis.patch.yml; this is a
package manifest field, not a separate file extension. DSH 0.2.0-rc.2 does not
automatically update installed plugins. To switch versions, uninstall the old
bundle and install the desired version, then check its saved mode.
What happens when a failure repeats?
For example, a tool repeatedly returns the same missing-argument error with the
same arguments. On the third consecutive failure:
- Observe: work continues and a Retry Guard notice appears when the turn ends.
- Pause: the next model step does not start. The notice shows the failed tool,
count, time, and original event/call references.
- After repair: inspect the original failure in Trajectory, fix the cause,
then send a new instruction in Chat. Failed calls are not replayed automatically.
The plugin notices a repeated error; it does not work out or fix its cause.
The notice currently gives record references, not a one-click inspector link.
See the error-record walkthrough.
You can watch the recording above without installing development tools. To run
our exact keyless demonstration yourself, follow the separate
developer demo guide. Its scripted model and failing tool belong
to the source checkout and are not included in the normal plugin installation.
In that one deterministic fixture, Observe runs 6 tool calls / 7 model requests;
Pause runs 3 / 3, followed by one successful call after a new repair instruction.
These are fixture counts, not a general cost-saving claim. See
verification scope, alternatives,
and reported failures and detection limits.
Behavior
Within one agent and turn, three consecutive failed calls must have the same
tool name, recursively key-sorted JSON arguments, and exact failure content.
"Failed" means DSH marks the tool result isError: true. A Bash command returning
exit code 1 is normally a successful tool execution in DSH and is not counted.
Array order, strings, and failure details are significant. A successful call,
changed arguments/error/tool, an excluded call, or a new turn breaks the chain.
Excluded names are exact matches, not wildcards.
- Observe: add one source-attributed notice per uninterrupted failure streak.
- Pause: also reject the next model step. Already-running parallel calls can
still finish. This does not guarantee a maximum of three executions per batch.
- Continue: inspect the original tool results, correct the cause, and send a
new instruction. The plugin never automatically replays a failed call.
- Evidence: the notice includes count, tool, timestamp, session/call IDs and
original event sequence references. The Web report appears below the completed
turn; use Trajectory to inspect the cited calls. Original results remain unchanged.
Configuration has exactly three field
…(truncated)
Rendered from the README published on npm. Formatted only, not edited.
Versions
Published on npm::1,最后更新 2026-10-02