DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
S

dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix

Sandbox Permissions Not Strictly Wider Justification Empty Fix

Fix no-op upgrade errors for the sandbox_permissions and justification fields in pwsh/bash/fs/dsh-sandbox. Prevent rejection when the session is already in danger-full-access mode and the model provides an empty justification or reasserts the same mode.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:yajiangandchenchen/dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix#ba2f0d0999ef340b1cac2624c9339e362d36d9cb
READMECompatibilityVersions

Compatibility and provenance

Sandbox Permissions Not Strictly Wider Justification Empty Fix is published as dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix and currently resolves to version 1.0.7. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
github
Registry updated
8/31/2026

Versions

1.0.7stable
8/31/2026
1.0.4stable
8/31/2026
1.0.3stable
8/28/2026
Show 1 more versionCollapse versions
1.0.0stable
8/27/2026

Related plugins

Loading related plugins…

Latest
1.0.7
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
any
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
8/31/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
Sandbox Permissions Not Strictly Wider Justification Empty Fix…

Related plugins

More verified plugins in security-access.

Doctor@linxin666/dsh-doctorTransactional rescue mode for DSH profiles with a supervised launcher, isolated recovery capsule, deterministic repairs, health monitoring, and a local Web recovery consolePocketdsh-pocketPut DeepSeek Harness in your pocket: one package, one settings page, and scan a QR code on your phone to access DSH on your computer in sync (LAN + public network, real-time screen mirroring).DSCODE@toddzheng024/dscode-bundleA complete DeepSeek coding agent with persistent shell, Ultra collaboration and automatic permission review.Auto Reviewdsh-auto-reviewSecond-model AI auto-review for DeepSeek Harness approval requests: a read-only reviewer subagent decides allow/deny on the approval answerer chain, with fail-closed fallback and full session-log audit.

README

dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix

English | 中文

A DSH plugin that fixes two related bugs in the sandbox_permissions and justification fields across four tools: pwsh, bash, fs (write/edit), and dsh-sandbox.

The Bug

When a session is already at danger-full-access mode, two errors can occur:

  1. Empty justification: The model sends justification: "" (empty string), which triggers validateEscalationArgs to throw invalid justification: expected a non-empty sentence.
  2. No-op escalation: The model sends sandbox_permissions: "danger-full-access" (same as current mode), which triggers approveEscalation to throw sandbox escalation to "X" is not strictly wider.

This is the 4th independent report (GitHub #3519 → #4359 → #4383 → #4412) and affects all sessions using non-default models.

The Fix

Two-layer defense:

  1. Schema descriptions: Updated to clearly explain that same-mode retries are accepted as no-ops, reducing the model's tendency to send empty fields.
  2. Runtime normalization: Added normalization logic at each tool's execute/resolvePolicy entry point to clear escalation parameters when the requested mode is not strictly wider than the effective mode.

How It Works

  • Install (dsh plugin add): The plugin is installed and Cordis injects the dynamic plugin line.
  • First load: The apply() function in index.js runs patch.js apply, which backs up original files and applies all modifications. This happens automatically on first plugin load.
  • Auto-repair: On every client start/restart, the plugin checks if patches are still valid. If patches are lost (e.g., after a desktop client update), it automatically re-applies them.
  • Multi-target: The plugin detects both DSH_HOME and desktop installation directories. If the hard link is broken (e.g., after a desktop update), it modifies both locations.
  • Uninstall (dsh plugin remove): The preuninstall script runs patch.js restore, which restores all original files from backups.

Installation

dsh plugin --profile web add dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix@latest

Uninstallation

Step 1: Restore original files from backups:

cd $env:DSH_HOME\profiles\web\node_modules\dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix
node scripts/patch.js restore

This restores the four tool files (dsh-sandbox, dsh-tool-pwsh, dsh-tool-bash, dsh-tool-fs) to their original state using backups stored in $env:DSH_HOME\backups\dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix\.

Step 2: Remove the plugin:

dsh plugin --profile web remove dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix

How backups work: When the plugin first applies patches, it copies the original files to DSH_HOME\backups\dsh-sandbox-permissions-not-strictly-wider-justification-empty-fix\ (outside the plugin directory). These backups persist even after the plugin is removed, so you can always restore.

What Gets Modified

FileChange
dsh-sandbox/lib/index.jsapproveEscalation: throw → return effectiveMode
dsh-tool-pwsh/lib/index.jsimport +WIDER_MODES, execute normalization, schema descriptions
dsh-tool-bash/lib/index.jsimport +WIDER_MODES, execute normalization, schema descriptions
dsh-tool-fs/lib/index.jsimport +WIDER_MODES, resolvePolicy normalization, schema descriptions

Compatibility

  • Compatible with the latest dsh-std plugin meta protocol
  • Does not conflict with other plugins (modifies only tool implementation files)
  • Works with both desktop and web installations (modifies DSH_HOME, which is hard-linked to the desktop app)

License

MIT