Start with the deepest cause

Find the final nested cause after “plugin tree failed to load.” The loader entry and system error code usually identify the failing layer more reliably than the first line.

Deepest signalLikely layerFirst safe check
EXDEV + workspace.jsonStorage path or Windows redirectionInspect the path for a junction, reparse point, or redirected home.
Cannot find package or moduleDependency or published artifactConfirm the package landed and its built files exist.
Missing patch or loader entryBundle packagingCompare dsh.bundle.patch with the published package contents.
Duplicate service or toolPlugin interactionReproduce in a clean profile, then reduce the active set.

Preserve the evidence before changing the profile

Record the exact DSH, Node, platform, profile, and failing stack. Copy the profile manifest and patch files to a safe location before editing them. Do not delete workspace.json simply because it is named in a failed atomic write.

Record the runtime first
node -v
dsh --version

Separate the profile from the installation

A package can exist in node_modules without being registered in dsh.profile.bundles, and a registered bundle can still fail while the profile composes. Check the profile manifest first; if the tree can dump, inspect the resolved configuration next.

Inspect the profile when the loader can still compose it
dsh --profile web --dump-config

Use a clean home as a diagnostic control

A new, disposable DSH home distinguishes a machine-level runtime problem from corruption or composition in the existing home. It does not repair or migrate the original profile; it only creates a comparison point.

POSIX clean-home control
DSH_HOME=/tmp/dsh-clean-home npx -y @deepseek-ai/dsh@0.1.0-rc.8 web

Reduce interactions only after the failure is stable

If every plugin works in isolation but a combination breaks the profile, removing one plugin at a time can miss the interaction. The external dsh-plugin-reducer tests subsets in shadow homes and returns a 1-minimal failure-inducing set.

DeepSeek Harness is in developer preview. Recheck official documentation and plugin evidence when the host version changes.

Sources and evidence

Official documentation and community evidence are labeled separately in the source pages and in this article.