DeepSeek Harness plugin

dsh-inherit

导入智能体设置:从 Claude Code / Cursor / Codex / cc-switch 一键导入 Skills、MCP、指令、模型供应商等到 DeepSeek Harness(设置 → 通用设置 → 导入智能体设置)

Jump to install

Source facts

Repository
MayBeTheWorld/dsh-inherit
Latest update
Aug 18, 2026
Category
Tools & Capabilities
GitHub stars
1
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/MayBeTheWorld/dsh-inherit
Plugin: dsh-inherit
Author: MayBeTheWorld

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer4 files
README.mdSource · read only
README language

dsh-inherit

English | 中文

Import agent settings into DeepSeek Harness — one-click migration of MCP servers and Skills from Claude Code / Cursor / Codex / cc-switch into DSH, from a row inside Settings → General → 导入智能体设置.

> Developer preview (0.1.0). Community plugin, MIT licensed, not affiliated with DeepSeek.

Why

Codex CLI ships an /import that pulls Claude Code / Cursor config into Codex. DSH had no equivalent. This plugin fills that gap with a General-settings row that opens a centered modal: pick which agents to import (right-side toggle switches, ON = highlighted, OFF = greyed out), expand a source to tick categories, preview first, confirm to write.

Features

  • Source auto-detect — scans ~/.claude, ~/.cursor, ~/.codex and cc-switch (~/.cc-switch/cc-switch.db via Node's built-in sqlite) and reports what each one carries.
  • Multi-source toggle selection — one toggle per agent card; off = excluded, on = included. Default all-on = one-click import-all.
  • Category checkboxes — per source: MCP servers, Skills; instructions/memory/providers are detected and annotated honestly (DSH natively reads CLAUDE.md/AGENTS.md; memory is injected by capability-matched community plugins — capability detection, never hard-coded plugin names).
  • Two-step safety预演 (preview) first, dry-run report only; 确认写入 (confirm) then writes.
  • MCP → official composition layer — servers land as @deepseek-ai/dsh-mcp-client rows in the profile's cordis.patch.yml (works with no manager plugin, Hanihahaha-style UI plugins, and future official UIs); ~/.dsh/mcp.json (zebbkira-style UI) is the auto-detected alternative target.
  • Skills → ~/.dsh/skills — SKILL.md directories copied (idempotent, skips existing).
  • Backup — every target file gets a .bak-<timestamp> before modification.
  • Capability-aware notes — e.g. "记忆:未检测到处理该能力的插件;本插件不导入此项" / "模型路由:由已加载插件「dsh-cc-switch」处理" — detects the actually-loaded plugin by capability, works with forks and differently-named plugins.

Sources × categories

SourceMCPSkillsInstructionsProvidersMemorySessions
Claude Codeℹ️ native-readℹ️ by bridge plugin
Cursorℹ️ℹ️
Codex✅ (TOML)ℹ️ native-readℹ️
cc-switch✅ (sqlite)ℹ️ by switch pluginℹ️
  • ✅ importable · ℹ️ detected + annotated (not imported by this plugin) · ⛔ not supported

Install

# from npm (once published)
dsh plugin --profile web add dsh-inherit
# or from a local checkout
dsh plugin --profile web add "D:\path\to\dsh-inherit"

Then open Settings → General → 导入智能体设置.

The package declares dsh.bundle.patch + dsh.client, so dsh plugin add reconciles it into the profile's dsh.profile.bundles layer and serves the browser half at /plugins/dsh-inherit/client.js. New bundles hot-mount after a short delay; host module code changes need a dsh web restart.

Usage

1. Settings → General → 导入智能体设置. 2. The modal lists detected sources with right-side toggle switches (default on). 3. Expand a source card → tick categories (MCP / Skills …). 4. 导入所选(预演) — read the dry-run report (imported / skipped / notes). 5. 确认写入 — applies for real (backup first).

How it works

dual-face plugin (one bundle row + dsh.client declaration)
├─ lib/index.js   host half — /api/dsh-inherit/sources + /api/dsh-inherit/run (loopback-only guard)
├─ lib/import.js  pure logic — source scan, multi-format parsing (mcpServers JSON, Codex TOML,
│                 cc-switch sqlite), MCP→patch / Skills→~/.dsh/skills
└─ lib/client.js  browser half — settings.general.item row → centered Modal → toggle cards →
                  category checkboxes → preview → confirm

Routes are loopback-only; every write is preceded by a .bak backup; imports are idempotent (same-name servers/skills skipped).

Similar community plugins

  • dsh-import (cms19859230182-lang) — Claude/Codex/Cursor MCP + rules + hooks into a Settings page (settings.section). No cc-switch, no Skills copy, single-source.
  • dsh-movein (sjh9714, 0.3.x) — the most mature mover: CLI + tool, dry-run by default, doctor + restore, credential-safe ${VAR}!!js process.env.VAR. Claude-Code-focused.

This plugin differentiates on: General-settings row placement, multi-source toggles, cc-switch sqlite source (providers/MCP/skills/prompts — nobody else reads it), Skills copy, and capability-based plugin detection. It does not (yet) migrate hooks, slash commands, or sessions — pair with dsh-claude-move / dsh-chat-import for those.

Limitations

  • MCP credentials (env/headers) are written in plaintext to cordis.patch.yml / ~/.dsh/mcp.json; mind file permissions. ${VAR} refs are not yet converted to !!js process.env.VAR (unlike dsh-movein) — watch for that in your sources.
  • Server names must match [A-Za-z0-9_-]{1,32} and be globally unique; sse/ws MCP transports are skipped with a warning.
  • No doctor / restore command yet — rollback is manual via the .bak files.
  • Client is a hand-written lazy-CJS bundle (no build step), depending only on react and the slots client service.

Development

node --check lib/import.js && node --check lib/index.js && node --check lib/client.js
# source scan + dry-run import (no writes):
node --experimental-sqlite -e "
import('./lib/import.js').then(m => {
  console.log(JSON.stringify(m.detectSources(), null, 1).slice(0, 2000))
  console.log(JSON.stringify(m.runImport([{source:'claude-code',categories:['mcp']}],{target:'patch',dryRun:true}), null, 1).slice(0, 800))
})"

License

MIT