dsh.pub

The plugin registry for DeepSeek Harness

DeepSeek Harness plugin registry.See the whole system.

Explore the modules already inside DSH, understand what they contribute, and see how built-in profile layers compose the experience.

Source-backedEnglish + 中文No account required
219source packages
170loadable plugins
39client modules
3bundles
6community plugins
01 / MARKETPLACE

Official bundles

Built-in profile activation layers. These monorepo packages are not standalone Git installs.

View all plugins

dsh-base

Built-in profile layerBuilt-in source

The shared dsh core as a profile bundle: `cordis.patch.yml` inserts every base plugin row — model adapters, the shared `agent-default-model` selection, tools, persistence, policy, settings/credentials, telemetry, and host-level subagent providers — over the empty profile root, as the first layer of every profile's `dsh.profile.bundles` list. Codex and Claude Code providers load dormant; Agent Presets independently decide whether their agent contributes either model-facing delegation tool. Later bundle layers (e.g. `dsh-web-app`) and the user's profile `cordis.patch.yml` override these rows by id; a patch replaces a row's whole `config`, so mode-specific values live in mode bundles, not here. The package has no runtime API; the profile composer resolves the patch through the `dsh.bundle.patch` manifest field, never through code.

BundlesBundlesbaseheadless
Version
0.1.0-rc.5
Type
Bundles
Availability
Web

dsh-headless

Built-in profile layerBuilt-in source

The dsh one-shot bundle. `cordis.patch.yml` rides directly over `dsh-base`: it supplies the coding persona and tool mode, disables HMR, mounts Code Mode's worker as a core execution capability, and inserts this package's `headless-runner` plugin (config `{task}`, resolved from the injected `headlessStartup` provider). It mounts no Host, HTTP server, Web runtime, or browser plugin.

BundlesBundlesConfigurableheadless
Version
0.1.0-rc.5
Type
Bundles
Availability
Included in DSH

dsh-web-app

Built-in profile layerBuilt-in source

The dsh browser-surface bundle. `cordis.patch.yml` rides over `dsh-base`: it sets the coding persona, inserts the Web host rows (webserver, API gateway, workspace, projection cache, storage) and the browser plugin roster, the always-on client-plugin reload chain (`dsh-client-hmr`, idle until a rebuild watcher rewrites client bundles), and mounts this package's `web-runtime` glue plugin (config `{printUrl, surfaceContext, trustedHosts}`). That plugin resolves the built frontend dist through `@deepseek-ai/dsh-web-frontend`'s exports, samples bind-dependent LAN trust once, provides it as `webRuntime` to the browser-trust fence and client roster, mounts the `frontend-static` fallback owner, registers the harness-source and web-surface prompt sections plus the bash-visible `DSH_WEB_URL` runtime variable when `surfaceContext` is true, and prints the `dsh web:` URL line when `printUrl` is true, after its Loader tree settles so a sibling failure cannot announce a dead app. This bundle also owns the app command line: the ordinary `web-startup` provider (`src/startup.ts`) injects `ctx.cmdlineArgs` (`dsh-cmdline`), parses `--host`, `--port`, repeatable `--trusted-host`, and the app's `--help`, then provides `webStartup`. It rejects `--host 0.0.0.0` before publishing that service because the CLI intentionally does not support all-interfaces binding yet. Flag-configured rows inject the service and read it directly from lazy config, so nothing binds a port before argument resolution and `dsh --profile web --help` starts no server. `dsh-headless` is a sibling surface over the same base and does not mount this bundle.

BundlesBundlesConfigurableweb
Version
0.1.0-rc.5
Type
Bundles
Availability
Web
02 / COMMUNITY

Community additions

Installable Git bundles from public Issue submissions and pinned community source records.

Community records pin public source. Issue submissions pass automated bundle checks; selected older records were source reviewed. Neither is a security audit or official endorsement.

View all plugins

dsh-open-in-vscode

External Git bundleCommunity · source reviewed

Adds an Open in VS Code action to each workspace row in the DSH web sidebar.

UI & clientBundlesConfigurableWeb UIweb
Version
0.1.5
UI
1
CLI installs

dsh-at-file

External Git bundleCommunity · source reviewed

Adds Codex-style @file mentions to the web composer and expands selected workspace files into the model request.

interactionBundlesConfigurableWeb UIweb
Version
0.1.0
UI
2
CLI installs

@dsh-external/dsh-automation

External Git bundleCommunity · source reviewed

Runs recurring or one-shot coding tasks in fresh DSH agent sessions and manages them from the web UI or agent tools.

OrchestrationBundlesConfigurableWeb UIweb
Version
0.1.5
UI
1
CLI installs

dsh-notification

External Git bundleCommunity · source reviewed

Shows configurable browser desktop notifications when a DSH session finishes a turn.

UI & clientBundlesConfigurableWeb UIweb
Version
0.1.1
UI
1
CLI installs

@omdsh-dev/dsh-genui

External Git bundleCommunity · source reviewed

Renders interactive components, charts, forms, and panels from model-produced dsh-ui fences inside assistant replies.

UI & clientBundlesWeb UIweb
Version
0.8.0
UI
2
CLI installs

dsh-cc-tui

External Git bundleCommunity · source reviewed

A full-screen Claude Code-style terminal front door for DSH agents, mounted as a Cordis bundle.

interactionBundlesConfigurablecc-tui
Version
0.1.6
Type
Bundles
CLI installs
04 / BUILT-IN ROSTER

Built into DSH

Cordis-loadable modules from the current Harness source snapshot.

View all plugins

dsh-client-ui-conversation

Included in DSHBuilt-in source

Conversation domain: skeleton (header/tabs/composer/empty state), chat view (grouped step-summary flow, streaming tail isolation, and turn status), composer dock (session stats sticky with the input), input dock (queue rows plus the todo plan strip), details shell, and scope-addressed ConversationController. Tool presentation belongs to `ui-tool`.

UI & clientPluginsWeb UIweb
Version
0.1.0-rc.5
UI
1
Availability
Web

dsh-client-ui-trajectory

Included in DSHBuilt-in source

Trajectory renders a turn-aware event ledger with selectable User, Assistant, Tool, and nested Subtool records. Thick rules mark Turn boundaries, compact inline markers identify Steps, and the main ledger keeps only index, event, and content; selection opens a local inspector for token usage, duration, Input, Output, and Timing. Scrollable Summary regions keep their scrollbar thumbs transparent until the region is hovered or contains keyboard focus, without changing the reserved scroll geometry. A standalone compaction request appears chronologically in its own `Between turns` section, while a numbered compaction remains inside its owning turn. Long ledgers open at the current tail, load one older page when the user reaches the loaded range's top, and mount only the visible row window plus a small overscan; request-only separators share the next measurable virtual item, while semantic row keys and ARIA indexes survive prepends. Selection, timeline navigation, folding, search, and Request totals cover the currently loaded window. The ledger covers records with an explicit loading row until the initial tail is positioned. While an older prefix remains unloaded, a first-row control precedes the loaded records, loads one earlier page on click, and changes in place to a disabled loading status while that page is pending. A fixed Overview above the ledger projects real record start/duration timing from left to right; when earlier records remain unloaded and the viewport includes the loaded domain's start, a neutral ellipsis control identifies the omitted prefix and loads one earlier page without assigning unknown history fabricated duration. Assistant spans divide recorded TTFT from decoding, and a 500 ms hover reveals exact clock and duration details. Dragging an interval focuses the ledger on every record active at any point in that inclusive range, while clearing the selection restores the full loaded ledger. Wheel gestures zoom the time domain. A right-button click clears the selected interval, while a right-button drag pans an already zoomed viewport without changing it. The initial view and streaming updates stay at the tail; scrolling upward suspends following so new records do not interrupt inspection of earlier rows. Content-only stream frames preserve virtual row keys and heights, reuse measurements, and do not issue repeated tail-scroll writes. Completed replies retain assembled blocks, timing, and usage in Trajectory target State, while the shared Session window keeps the raw Events. Trajectory asks the conversation shell to float the composer over the full-height ledger, while its responsive vertical scrollers reserve the composer's live height so final rows remain reachable. Trajectory-owned Definitions assemble business records, including cancellation-frozen Assistant and Tool records, from the shared Session window, so Trajectory neither reads nor changes the Chat conversation snapshot. The package provides no service and declares no Context merge; it registers target-specific Event Definitions, a Trajectory view builder, and one tab in the conversation's `'conversation.view'` slot ring. Contract: api-contracts v3 §8.

UI & clientPluginsWeb UIweb
Version
0.1.0-rc.5
UI
1
Availability
Web

dsh-tool-bash

Included in DSHBuilt-in source

The model-facing `bash` tool registered over the `ctx.shell` executor seam. Foreground execution stays behind that seam; a background process handle is registered with the generic `ctx.jobs` runtime and controlled through `job_output`, `job_list`, and `job_kill` from `@deepseek-ai/dsh-tool-jobs`.

Model toolsPluginsConfigurablebaseheadless
Version
0.1.0-rc.5
Tools
1
Availability
Web

dsh-client-ui-goal

Included in DSHBuilt-in source

Goal surface plugin, browser half: the `GoalBar` strip is the second standalone card in the `conversation.input.dock` composer-context stack (order 10, after Todo and before Queue). The live goal arrives through `useProjection('goal')` — the host-computed whole value seeded by the history tail page and updated by `session/projection` frames — so the plugin owns no domain store, refresh chain, or event listener. The slot inject face carries only the four mutation verbs (edit / pause / resume / clear through `ctx.remote.goals` — an active goal offers the pause action, a paused one resume); each reads the CAS ref from the session's current projected value at call time and surfaces the rejected Remote error inline. The strip single-flights mutations synchronously because React's pending render cannot fence same-frame clicks; after a successful clear it immediately suppresses that exact goal id while the authoritative null projection catches up. Goal creation stays on the `/goal` host command; loading, absent, completed, and successfully cleared goals render nothing.

UI & clientPluginsWeb UIweb
Version
0.1.0-rc.5
UI
1
Availability
Web

dsh-llm-deepseek

Included in DSHBuilt-in source

DeepSeek chat-completions adapter for the harness LLM seam: direct `fetch` + SSE (framed by `eventsource-parser`) translating the official wire format (source of truth: the API docs — guides/thinking_mode, guides/tool_calls, api/create-chat-completion) into the `StreamChunk` protocol.

ModelsPluginsConfigurablebaseheadless
Version
0.1.0-rc.5
Type
Plugins
Availability
Web

dsh-storage-json

Included in DSHBuilt-in source

JSON backend for the storage hub: one human-readable `<unit>.json` file per unit under a configured root, registered as backend `json`. Design: domain KV storage Agent Note.

StoragePluginsConfigurableweb
Version
0.1.0-rc.5
Type
Plugins
Availability
Web

dsh-session-persistence-jsonl

Included in DSHBuilt-in source

The JSONL durable session-persistence backend — a concrete `SessionPersistence` (the `dsh-session-persistence` seam). Each session has one append-only logical JSONL log, stored as `.jsonl.zstd` by default or raw `.jsonl` when compression is disabled.

SessionsPluginsConfigurablebaseheadless
Version
0.1.0-rc.5
Type
Plugins
Availability
Web