DSH Plugins Marketplace

DSH Plugins

Plugins

/

Development & Infrastructure

/

dsh-migrator

f

dsh-migrator

Identified★ 1

DSH Migrator - list your installed DeepSeek Harness plugins and export them as a paste-ready note or a self-contained zip kit

DSH Migrator

A settings-page plugin for DeepSeek Harness: see every plugin installed in your DSH profile, tick the ones you want, and take them to another machine — either as a paste-ready migration note, or as a zip kit that carries the local plugin sources and a restore script.

DSH 插件迁移工具:在「设置 → 插件迁移」里勾选已装插件,生成一段可粘贴的安装单,或直接下载带源码与恢复脚本的压缩包,换电脑时一把带走。


What it solves

DSH installs plugins in two very different ways:

kindwhat it ishow it survives a move
officialships with DSHnothing to do
npminstalled from the registryonly the version has to be remembered
locala directory linked with link: (usually your own plugin)the source has to travel with you

Without this plugin you have to read ~/.dsh/profiles/desktop/package.json by hand, work out which entries are local links, and copy those directories yourself. DSH Migrator does that inventory for you and produces something you can act on.

Features

  • Full inventory of the active profile: name, version, kind, GitHub repo (read from each package's repository/homepage), enabled state.
  • Selective export — defaults to “every enabled non-official plugin”, with select-all / select-none helpers.
  • Migration note — Markdown with a fenced json dsh-plugin-migration block plus seven execution instructions; paste it into a session on the new machine and the agent can follow it.
  • Zip kit — self-contained package:
安装单.md              the same note, for humans
manifest.json          machine-readable inventory (name/version/kind/repo/leaf/order/enabled)
restore-plugins.ps1    restore script (supports -DryRun)
dsh-plugins/<leaf>/    sources of every selected local plugin
dsh-skills/            whatever lives in ~/.dsh/skills (imported skills and experts)
  • Restore script — copies local plugin sources into the plugin root, merges dependencies, re-orders dsh.profile.bundles, backs up the original package.json, and copies skills without overwriting existing ones.
  • No network calls. Everything is read from the local profile and written back into the response.

Install

From a local checkout:

# link the directory into the profile
cd "$env:USERPROFILE\.dsh\profiles\desktop"
pnpm add "link:D:/path/to/dsh-migrator"
# then add "@local/dsh-migrator" to dsh.profile.bundles in package.json and restart DSH

Or simply run:

plugin_manager install_bundle D:\path\to\dsh-migrator

Once active, a new page appears in Settings → 插件迁移.

Usage

  1. Open Settings → 插件迁移.
  2. Tick the plugins to take with you (official bundles are shown but cannot be selected).
  3. Pick one:
    • 生成安装单 → copy / download .md, paste into a DSH session on the new machine.
    • 下载压缩包 (.zip) → extract on the new machine and run the restore script.

Restoring the zip on the new machine

# see the plan first
pwsh -File .\restore-plugins.ps1 -DryRun

# apply
pwsh -File .\restore-plugins.ps1

Parameters:

parameterdefaultmeaning
-Kitthe script's own directorywhere the kit was extracted
-PluginRootmanifest.json's pluginRoot, else D:\DSH\...\dsh-plugins, else %USERPROFILE%\dsh-pluginswhere local plugin sources land
-ProfileDir~/.dsh/profiles/desktopthe DSH profile to update
-DryRunoffprint the plan, change nothing

Then restart DSH. If the plugin page reports pending installs, run pnpm install inside the profile directory.

Routes

methodpathpurpose
GET/migrator/listprofile plugins with kind/version/repo/leaf
POST/migrator/build{names} → migration note text
POST/migrator/zip{names} → application/zip

Security and boundaries

  • Reads only ~/.dsh/profiles/desktop/package.json, the linked plugin directories and ~/.dsh/skills.
  • No network access, no credential access: credentials, sessions and settings secrets are not included.
  • The zip is assembled in memory with a built-in ZIP writer (no third-party dependency).
  • The restore script backs up the target package.json before writing and never removes existing bundle entries.

Limits

  • npm plugins are recorded by name and version only; the new machine still needs registry access to install them.
  • Local plugins published on GitHub are listed with their repo, but the kit ships the local source as-is — it does not pull from the remote.
  • Skills are copied verbatim; plugin-specific state files (for example a session-scoped selection) are intentionally left out, since they refer to sessions that do not exist on the new machine.

Development

index.js          host side: inventory, note builder, zip writer, HTTP routes
client.js         web side: settings page (inline styles, no external CSS)
cordis.patch.yml  bundle patch that inserts the plugin

node --check index.js && node --check client.js before shipping; the client bundle only re-mounts after the plugin is toggled off and on again.

License

MIT

Comments

Loading…

From the same category

awesome-dsh-plugin

by awesome-dsh-plugin

A curated list of plugins for DeepSeek Harness (dsh) · DeepSeek Harness 插件精选列表

Development & Infrastructure

★ 23.4k

CC0-1.0

Python

Nov 6, 2026

Index only — not installable

by 0xsline

DeepSeek Harness (DSH) ecosystem: curated plugins, tools, and infrastructure from dsh-external/hub and the public dsh-plugin topic.

Development & Infrastructure

★ 1.3k

CC0-1.0

Python

Nov 6, 2026

Index only — not installable

by uumit-ai

Open dsh web from your phone or another computer through a UUMit account, without running your own server or installing another program: a built-in tunnel client connects to UUMit's hosted tunnel, and

Tools & CapabilitiesDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 499

↓ 268/wk

MIT

JavaScript

Oct 21, 2026

dsh plugin --profile web add @uumit-ai/dsh-uumit-remote

by Yuuyuko-uu

DSH 鱼的记忆:给会话一份会淡忘的长期记忆,每条都带时间

Development & InfrastructureMemory & ContextSessions & MessagesManifest valid

★ 491

MIT

JavaScript

Nov 4, 2026

dsh plugin --profile web add dsh-fish-memory

by SAOS-3624

Scene-aware storyboard for DeepSeek Harness: 9-16 numbered cells with timestamps + transcript + an audio envelope, packed into ONE image (384 tokens). Two tools: video_storyboard and video_zoom.

Tools & CapabilitiesVision & MultimodalDevelopment & InfrastructureManifest valid

★ 453

↓ 17k/wk

MIT

JavaScript

Nov 6, 2026

dsh plugin --profile web add dsh-video-storyboard

by woniuniuniu

DeepSeek Harness 自媒体工作台插件:一句话记灵感,一键生成脚本、封面、配图和分镜

Development & InfrastructureManifest valid

★ 367

↓ 1.2k/wk

MIT

JavaScript

Nov 6, 2026

dsh plugin --profile web add dsh-media-desk