dsh-claude-compat
A community plugin that brings project and user Claude Code skills, commands, rules, hooks, agents, MCP servers, plugins, and sessions into DeepSeek Harness.
Project overview
dsh-claude-compat is a community-maintained DeepSeek Harness plugin intended to keep existing Claude Code configuration useful inside DSH. It discovers project and user skills, commands, rules, agents, hooks, MCP servers, installed plugins, and historical sessions and maps them onto DSH registries, messages, and lifecycle mechanisms. This is not a permission-free format converter: hooks can execute a shell, MCP can start processes or reach networks, and plugin management and session migration write into user directories. A safer evaluation starts with a separate profile and test repository, with each feature enabled only after review.
Core capabilities
Skills, commands, and rules bridge
Scans project and user Claude directories, registers SKILL.md and command files as DSH skills, and injects rules within configured size caps, with project content taking precedence.
Hook lifecycle mapping
Maps PreToolUse, PostToolUse, UserPromptSubmit, SessionStart, and SessionEnd to DSH events, runs commands through a shell, and translates exit status into DSH decisions.
MCP configuration mounting
Reads project .mcp.json, translates command-based servers to stdio and URL-based servers to streamable HTTP, and mounts each through dsh-mcp-client.
Claude plugin discovery and management
Discovers installed plugin skills, commands, agents, and optional MCP. Management prefers the claude CLI and falls back to direct JSON and git marketplace operations.
Session import and skill export
Reads Claude session JSONL and writes a DSH event log, and can export DSH-native skills into .claude/skills. Back up both destinations first.
Installation and usage
Pin v0.8.0 in a separate DSH web profile, leave higher-risk compatibility features off, and first verify discovery with a side-effect-free skill or command. Review hooks, MCP, plugin management, and session migration separately before enabling them.
Let an AI Agent install it
Send this prompt to Codex, Claude Code, or another AI agent that can work with your local environment.
Help me safely evaluate and install dsh-claude-compat v0.8.0.
Project: https://github.com/biedongbin/dsh-claude-compat
First read README.md, package.json, LICENSE, CHANGELOG.md, src/hooks.js, src/mcp.js, src/plugin-manager.js, scripts/cc-resume.mjs, and scripts/dsh-restart.sh. Confirm the DSH profile, Node.js 20+, pnpm, the target project, and backup state. Only run dsh plugin --profile web add dsh-claude-compat@0.8.0 in an isolated web profile. List the project .claude and .mcp.json paths and user ~/.claude paths the plugin will read. Do not execute shell hooks, mount MCP, manage plugins, import sessions, export skills, or run the restart script. After startup, verify only that one side-effect-free test skill is discovered. Any write to ~/.claude, ~/.dsh, or project files, any network MCP, environment-variable pass-through, git marketplace operation, or process termination requires explicit confirmation. Report commands, file changes, read scope, verification results, and unverified items.- DeepSeek Harness and a writable isolated profile
- Node.js 20 or newer
- pnpm available on PATH
- A recoverable test project that does not reuse production ~/.claude data
- zstd on PATH if /cc-resume will be used
dsh plugin --profile web add dsh-claude-compat@0.8.0- 1Isolate the profile and test configuration
Prepare a separate web profile and test project with one side-effect-free sample skill, and back up any existing ~/.claude and ~/.dsh data.
- 2Install a pinned version
After confirming Node.js 20+ and pnpm, run dsh plugin --profile web add dsh-claude-compat@0.8.0 rather than tracking main.
- 3Verify discovery and precedence first
Start dsh web, confirm the sample skill or command appears, and verify that project .claude outranks DSH-native and user ~/.claude content. Leave hooks and MCP off.
- 4Review executable configuration item by item
Inspect every settings.json hook command and all .mcp.json command, args, env, cwd, url, and headers fields. Enable only entries with understood sources and permissions.
- 5Approve write features separately
Before /cc-plugin, /cc-resume, or /cc-export, confirm each ~/.claude, ~/.dsh, and project destination, retain backups, and inspect overwrite behavior.
- 6Document uncovered differences
Record real differences between Claude and DSH, particularly timeout allow-through, agent shims, MCP startup lifecycle, and plugin skill runtime-layer issues.
After installation, run dsh web and confirm only the expected test skill or command appears in the skill picker, then check precedence. Do not start by executing hooks or connecting MCP. For further tests, review every settings.json command and each .mcp.json env, headers, cwd, and destination. This page did not perform those tests.
- The package declares a dsh.bundle, so normal installation does not require manual cordis.patch.yml editing
- Pin 0.8.0 instead of tracking main; the repository has no formal GitHub Release
- Plugin-provided MCP is disabled by default, and .mcp.json edits require a DSH restart
- Do not treat dsh-claude-compat-restart as a routine installation step; it patches dependencies and manages processes
Use cases
Reuse existing Claude skills
Let project and user Claude skills appear in DSH's skill picker without maintaining duplicate documentation.
Reuse project automation conventions
Bring reviewed commands, rules, and selected hooks into DSH while preserving project-level precedence.
Connect an existing MCP configuration
Hand stdio and HTTP services from project .mcp.json to the DSH MCP client after reassessing network, credential, and child-process boundaries.
Move conversations and maintain skills both ways
Selectively import Claude history into DSH or export DSH skills into .claude when an individual workflow accepts the documented translation loss.
Assessment
dsh-claude-compat addresses a concrete migration problem: keeping Claude Code configuration useful in DSH without rewriting everything. Its bilingual documentation, source separation, version history, tests, and installation commands are unusually explicit for a young community plugin. That value comes with a broad local permission surface: shell hooks, MCP, plugin marketplaces, session import, and skill export touch command execution, networks, credentials, user data, and file writes. The repository is still young, has a small community, publishes no SECURITY.md or formal GitHub Release, and recent activity is partly automated chart updates. This catalog review verified public evidence only and did not install or execute the plugin.
Why it may be useful
- Covers skills, commands, rules, agents, hooks, MCP, plugins, and session migration
- Bilingual READMEs, changelog, install skill, source, and test evidence are well structured
- Precedence, timeout behavior, MCP lifecycle, and known issues are documented explicitly
- MIT licensed, with package version and git tag aligned at 0.8.0
What to know first
- This run did not install the plugin, execute tests, or verify a real Claude and DSH configuration
- Shell hooks and MCP enlarge command, network, environment-variable, and credential exposure
- Write and restart helpers may overwrite files, rewrite sessions, or terminate processes
- The project is young, has few stars, no SECURITY.md, and no formal GitHub Release; long-term stability is unknown
README
dsh-claude-compat
Overview
A community plugin that brings project and user Claude Code skills, commands, rules, hooks, agents, MCP servers, plugins, and sessions into DeepSeek Harness. A community plugin bridging Claude Code .claude configuration, hooks, MCP, plugins, and sessions into DeepSeek Harness.
Getting started
- Pin v0.8.0 in a separate DSH web profile, leave higher-risk compatibility features off, and first verify discovery with a side-effect-free skill or command. Review hooks, MCP, plugin management, and session migration separately before enabling them.
- The plugin resolves name collisions in this order: project .claude, DSH-native content, then user ~/.claude. Skills and commands enter DSH's skill registry, rules are injected as a user-role system-reminder message, and agents become callable delegation shims rather than native Claude subagents.
- A subset of project and user settings.json hooks maps onto DSH events. PreToolUse, PostToolUse, and UserPromptSubmit can affect execution or context; SessionStart and SessionEnd run best effort. Commands always execute through /bin/sh -c, so the trust boundary is the hook configuration itself.
- After installation, run dsh web and confirm only the expected test skill or command appears in the skill picker, then check precedence. Do not start by executing hooks or connecting MCP. For further tests, review every settings.json command and each .mcp.json env, headers, cwd, and destination. This page did not perform those tests.
Configuration
dsh plugin --profile web add dsh-claude-compat@0.8.0Read the complete README on GitHub →