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.

Deliberation — DSH Plugin for DeepSeek Harness
← Plugins
D

dsh-deliberation

Deliberation

Primary-controlled deliberation and opt-in masked review for DeepSeek Harness

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

npx -y @deepseek-ai/dsh plugin --profile web add github:fly1989/dsh-deliberation#17c70ff35eaca053807e1aada3c5e19025c1a27c
READMECompatibilityVersions

Compatibility and provenance

Deliberation is published as dsh-deliberation and currently resolves to version 0.1.0. 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

0.1.0stable
8/31/2026

Related plugins

Loading related plugins…

Latest
0.1.0
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
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in

Related plugins

More verified plugins in agents-orchestration.

Headless@deepseek-ai/dsh-headlessThe dsh one-shot bundle: a direct core Agent/Session runner over dsh-base with no Host, HTTP, or browser layerExperimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profileExperimental Web profile layer for Agent Teams Remote and UI pluginsSubagent Codex@deepseek-ai/dsh-subagent-codexOne-shot Codex subagent provider over the official app-server protocolSubagent Claude Code@deepseek-ai/dsh-subagent-claude-codeOne-shot Claude Code subagent provider over the official Agent SDK

README

dsh-deliberation

English | 简体中文

An unofficial DeepSeek Harness plugin for bounded, Primary-controlled deliberation and opt-in reasoning-masked review.

Status: experimental preview. The runtime and failure boundaries are tested. Paired benchmark data does not yet establish a correctness or cost benefit, so automatic review is disabled by default.

The plugin adds two related capabilities:

CapabilityTriggerWhat it does
deliberate toolThe Primary calls itRuns 1–3 bounded alternative, audit, or masked-review children concurrently and returns compact JSON packets
automatic masked reviewOptional agent/turn-stopping hookRe-reads the current tool-bearing Turn without its recorded reasoning and publishes only decision-relevant updates

Children propose evidence, uncertainty, possible errors, and next checks. They never vote, select a winner, or replace the Primary.

Quick start

Requirements

  • Node.js 22.19+ or 24+
  • pnpm available on PATH (dsh plugin forwards installs to pnpm)
  • a working DeepSeek Harness Web profile and model credentials

Check the prerequisites:

node --version
pnpm --version
npx @deepseek-ai/dsh --version

Install the published package

npx @deepseek-ai/dsh plugin --profile web add dsh-deliberation@0.1.0
npx @deepseek-ai/dsh --profile web --dump-config
npx @deepseek-ai/dsh web

Restart a running Web process after adding, removing, or updating the bundle. The dump should contain all three rows:

subagent-mid-fork-step-family-in-process
subagent-mid-fork-current-turn-in-process
tool-deliberation

Start Web from the directory that should become the Agent workspace.

Test a local checkout before publishing

git clone https://github.com/fly1989/dsh-deliberation.git
cd dsh-deliberation
npm ci
npm run release:check

# Latest DSH anchors `.` to this checkout before entering the profile directory.
npx @deepseek-ai/dsh plugin --profile web add .
npx @deepseek-ai/dsh --profile web --dump-config
npx @deepseek-ai/dsh web

The local install is a link, so rebuild after changing TypeScript and restart the runtime after changing bundle membership or compiled code:

npm run build

First manual test

The plugin registers a model-facing tool named deliberate. The model still chooses whether to call it, so use an explicit smoke prompt first:

Inspect this workspace and diagnose the failing check. Do not edit yet.
First use the read-only tools to collect one concrete observation. Then call
deliberate with one trajectory-audit branch and one masked-review branch over
the most recent completed Step. Use route=same; use capability=read-only for
the audit and reason-only for the masked review. After receiving the packets,
choose the cheapest discriminating check and continue normally.

Expected behavior:

  1. The Primary performs at least one completed tool-bearing Step.
  2. A generic deliberate tool card appears.
  3. Separate child Sessions run; their transcripts do not enter the Primary context.
  4. The tool result contains one compact packet per successful branch.
  5. The Primary decides whether to use the packet.

Enable automatic masked review

Automatic review is deliberately opt-in. The included example is a complete DSH config-row replacement:

$reviewPatch = (Resolve-Path .\examples\auto-review.patch.yml).Path
npx @deepseek-ai/dsh --profile web --patch $reviewPatch --dump-config
npx @deepseek-ai/dsh --profile web --patch $reviewPatch

The example enables:

autoReview:
  enabled: true
  scope: tool-bearing-turns
  provider: mid-fork-current-turn
  route: same
  capability: read-only
  publish: updates-only
  timeoutMs: 300000

For a persistent deployment, copy the complete tool-deliberation entry from examples/auto-review.patch.yml into the profile's cordis.patch.yml. DSH patch rows replace the target row's entire config; they do not deep-merge nested keys. Ordinary profile patch edits hot-reload, but installing or removing the plugin bundle still requires a restart.

Use publish: observe-only first when collecting shadow-evaluation data. It runs and persists the child but never writes to the Primary inbox.

Roles

RoleHistoryIncumbentIntended use
independent-alternativefresh / spawnhiddenFind one materially different mechanism or strategy
trajectory-auditcompleted prefix / forkvisibleFalsify the current trajectory and localize the earliest questionable decision
masked-reviewolder native prefix + recent-Step snapshothiddenRe-read observable actions/results without the selected Steps' recorded reasoning

Manual masked-review requires recentSteps from 1 through maxRecentSteps (8 in the bundle). A Step is one completed model decision and every tool call/result caused by that response; parallel tool calls remain one Step. The active Step containing deliberate is excluded.

Automatic review uses window: current-turn: earlier completed Turns remain native history, while completed Steps in the stopping Turn become the reasoning-masked snapshot.

Result packet

Children return structured decision support, never hidden reasoning or a full transcript:

{
  "role": "masked-review",
  "status": "update",
  "items": [
    { "kind": "possible_error", "certainty": "likely", "content": "..." },
    { "kind": "unknown", "certainty": "uncertain", "content": "..." },
    { "kind": "suggestion", "certainty": "likely", "content": "..." }
  ]
}
  • status: update or no_update
  • kind: observation, conclusion, assumption, unknown, possible_error, or suggestion
  • certainty: certain, likely, or uncertain

Certainty is the child's self-report, not fact verification. A real timeout, abort, child error, malformed packet, or role mismatch publishes no packet. A strict final-text JSON fallback is accepted only when the child Session proves that its Turn completed normally.

Configuration reference

Tool configuration

KeyBundle valueMeaning
freshProviderspawnProvider used by independent-alternative
forkProviderforkProvider used by trajectory-audit
midForkProvidermid-fork-stepPrefix of the recent-Step provider family
maxRecentSteps8Maximum K exposed to manual masked review
maxBranches3Maximum branches in one tool call
maxDepth1Absolute child delegation-depth ceiling
branchTimeoutMs600000Independent wall-clock timeout per manual branch
routessameDeployment-approved model routes visible to the Primary
capabilityProfilesreason-only, read-onlyDeployment-approved child tool boundaries
debugfalseSafe lifecycle breadcrumbs; never logs prompts or child content

Automatic review

KeyValuesMeaning
enabledfalse / trueMount or disable the stopping-boundary policy
scopetool-bearing-turns / all-primary-turnsEligible top-level Primary Turns
providerdefault mid-fork-current-turnDeployment-owned history projection
routedefault sameChild provider/model route
capabilitydefault read-only in bundleChild tool ceiling
publishupdates-only / all / observe-onlyWhich packets may enter the Primary inbox
timeoutMs300000Automatic child wall-clock timeout

Projection provider

KeyBundle valueMeaning
windowrecent-steps or current-turnSnapshot selection policy
maskreasoning-onlyRemove reasoning/replay state; action-only is an evaluation overlay
maxSnapshotChars65536Whole-snapshot text budget; overflow skips rather than truncates
maxSnapshotImages20Projected-suffix image ceiling

Routes and capabilities are allowlists, not registrations. The portable same route inherits the Primary model; it is not model-family independence. read-only requests read, grep, and glob, but a profile that does not expose those tools safely degrades toward reasoning-only execution.

Safety and runtime boundaries

  • Children never receive deliberate; maxDepth prevents recursive branch growth.
  • Manual siblings run concurrently and fail independently.
  • Reasoning masking never edits the append-only Parent Session.
  • In-process children share the workspace. Tool filtering is not filesystem, process, or credential isolation.
  • The bundle provides no mutation-capable child profile and cannot roll back files, commands, databases, or network side effects.
  • Image-bearing reviews start only when the effective child route explicitly supports image input; otherwise they skip before child creation.
  • turn-stopping is a deterministic checkpoint, not a token-entropy detector.
  • Same-model agreement is weak evidence. Children are proposal generators, not external fact verifiers.
  • Every automatic attempt pays for a child LLM call; a published update also creates a Primary assimilation Step.

Troubleshooting

deliberate is missing

Restart Web after installing the bundle, then inspect:

npx @deepseek-ai/dsh plugin --profile web why dsh-deliberation
npx @deepseek-ai/dsh --profile web --dump-config

The model did not call deliberate

Installation makes the tool available; it does not force invocation. Use the explicit smoke prompt above. Automatic review is a separate runtime path and remains disabled unless configured.

Automatic review ran but the Primary showed no update

With updates-only, a valid no_update intentionally creates no parent notice or assimilation Step. Use publish: all for protocol debugging or observe-only for shadow evaluation.

Git installation is blocked by pnpm build approval

Git-hosted source dependencies run prepare, which pnpm 10 may block until the profile's pnpm-workspace.yaml allows the package build. Prefer the published npm package or follow the exact allowBuilds key printed by pnpm and rerun the install.

pnpm reports missing DSH peer dependencies

DSH profiles intentionally set autoInstallPeers: false. Out-of-tree plugins declare the Host APIs as peers, while the DSH launcher supplies the installation's single Cordis/DSH instances through its healed profile fallback. A peer warning during plugin add is therefore expected; do not install a second Cordis copy into the plugin. Confirm compatibility with --dump-config and an actual Web boot.

Development and release check

npm ci
npm run release:check

The release check runs type checking, all tests, the production build, and an npm tarball dry run. The package targets the DSH 0.1.1-rc.2 line; DeepSeek Harness is still a developer preview, so rerun the smoke test after every Harness upgrade.

Documentation

  • Runtime flow
  • Cordis / Harness / source mapping
  • Research assumptions, papers, local experiments, and evaluation plan
  • Reasoning-masked fork implementation notes
  • Terminology
  • Deferred and unsupported work

MIT. This project is not affiliated with or endorsed by DeepSeek.