In DeepSeek Harness, directly read and reuse Claude Code's memory, skills, and global instructions. No file migration needed—let both tools share the same memory and skills.
- Language
- TypeScript
- License
- MIT
- Branch
- master
Install
$ dsh plugin --profile web add dsh-plugin-claude-bridgeRun the command above in your terminal to install this plugin via the dsh CLI. You can switch Profile in the top-right corner. New to dsh? Read the beginner tutorial
Install via your agent
Install the DeepSeek Harness plugin YYTbit/dsh-plugin-claude-bridge for me: review the repository at https://github.com/YYTbit/dsh-plugin-claude-bridge first, then run the install command and verify the plugin loads successfully.
Paste this instruction to the DSH Web GUI assistant — it will install and verify for you.
One-line Description
Enables DeepSeek Harness to directly reuse Claude Code's memories, skills, and global instructions without migration or file copying—reads them as-is and injects them into the system prompt.
Core Features
- Injects project-level memory into the system prompt, re-reads on every request, new memories take effect immediately
- Parses the skills directory into a skill list visible to the model (shows only name and description)
- Injects global CLAUDE.md as a high-priority early system prompt segment
- Supports additional skill scanning directories, compatible with existing conventions like ~/.agents/skills
- All three capabilities can be independently toggled; defaults to enabled when not configured
Technical Implementation
- Language: TypeScript (ESM)
- Key Dependencies: @deepseek-ai/cordis (systemPrompt service injection), @deepseek-ai/schemastery (peer dep); runtime only uses node:fs/promises, node:path, node:os
- Architecture Pattern: Registers two context chunks (dynamic, re-read per request) and one section (static, lazy-loaded) to the systemPrompt service via Cordis plugin
apply(ctx, config)hook, declared for insertion in host viacordis.patch.yml - Entry Point: src/index.ts (orchestrates three data sources); memory.ts loads memories; skills.ts discovers and renders skills; parser.ts parses frontmatter
Use Cases
Users who use both Claude Code and DeepSeek Harness simultaneously, wanting to share the same memories, skills, and global rules across both tools without maintaining two copies. Typical scenarios: develop memory habits in Claude Code, switch to DSH after installing the plugin and they continue working; or conversely, in a DSH project you want to temporarily leverage private skill libraries accumulated in Claude Code.
Prerequisites and Compatibility
| Dependency | Min Version | Description |
|---|---|---|
| DSH | No specific version declared | Requires host to expose systemPrompt service from @deepseek-ai/cordis |
| Node.js | ^22.19.0 or >=24.0.0 | Declared by package.json engines field |
| Platform | Cross-platform | Uses only standard Node built-in modules (fs/path/os), no native dependencies |
| Native Modules | None | Only uses node:fs/promises, node:path, node:os |
Installation
dsh plugin --profile web add github:YYTbit/dsh-plugin-claude-bridge
Configuration Options
| Config | Type | Description | Default |
|---|---|---|---|
claudeHome | string | Claude Code data directory path | ~/.claude |
projectKey | string | Current project encoded key; source code automatically encodes current working directory using Claude Code rules | Auto-detect |
enableMemory | boolean | Whether to inject project memory into system prompt | true |
maxMemoryBytes | number | Byte limit for injected memory; preserves complete entries until the next would overflow | 8192 |
enableSkills | boolean | Whether to parse skills directory into skill list and inject | true |
maxSkills | number | Maximum number of skills injected into system prompt | 30 |
enableGlobalInstructions | boolean | Whether to inject ~/.claude/CLAUDE.md as global instructions | true |
extraSkillDirs | string[] | Additional skills root directories to scan, merged with default skills directory | [] |
FAQ
Q: Is this plugin the same as Claude Code CLI?
A: No. Claude Code is Anthropic's standalone command-line tool; this plugin only moves Claude Code's existing local data (memories, skills, CLAUDE.md) into DeepSeek Harness—it does not call Anthropic models or Claude Code CLI.
Q: Will there be conflicts if I run Claude Code and DSH at the same time?
A: No. The plugin only reads files, it doesn't write; Claude Code's own operation doesn't depend on this data, so both can use the same ~/.claude/ directory simultaneously.
Q: Why aren't my skills taking effect?
A: Check three things first: whether enableSkills is set to false in plugin config; whether maxSkills is too small; whether skill files have a --- YAML header with non-empty body. Empty bodies are skipped in source code (see src/skills.ts:76).
Q: How are memories sorted by type?
A: Loaded in priority order feedback > project > reference > user > unknown (src/memory.ts:68-74); recognizable type fields come from type: or metadata.type: in frontmatter.
**Q: Can I migrate the data and stop depending on ~/.claude/?`
A: Yes. The repository includes a PowerShell migration script scripts/migrate.ps1 that copies global CLAUDE.md to ~/.dsh/AGENTS.md, links skills via junctions to ~/.agents/skills-claude/, and merges memories into project root MEMORY.md. Note this script currently only provides PowerShell version.
Q: I don't want to use a certain data source. What do I do?
A: Set the corresponding enableMemory, enableSkills, or enableGlobalInstructions to false individually—no need to uninstall the entire plugin.
Q: Will uninstalling clear contents in ~/.claude/?
A: No. The plugin only has read access to the Claude Code directory; uninstalling the plugin just stops loading this data in DSH, original files remain untouched.
Difficulty Level
Beginner — Works with zero configuration; all options are optional; as long as Claude Code data exists in ~/.claude/, installing it has immediate effect.
Known Issues and Limitations
- The plugin's
detectMemoryDir(projectsDir, cwd)function (src/memory.ts:29-32) is currently not called by the entry point; memory directory relies on direct concatenation viaencodeProjectPath(process.cwd()); if fuzzy matching or fallback scanning is needed in the future, the entry point needs to connect to this function. - The migration script
scripts/migrate.ps1included with the repository only provides PowerShell implementation; macOS / Linux users cannot directly use script-based data migration for now, but the plugin itself still works on these platforms. - No TODO / FIXME / HACK comments; source code has no declared pending issues.
Bridge Claude Code's memory, skills, and configuration into DeepSeek Harness -- zero migration, full compatibility.
What it does
Reads Claude Code's standard file locations directly -- no migration scripts, no file copying, no symlinks:
~/.claude/projects/<project>/memory/*.md-- Injects memories as dynamic system prompt context~/.claude/skills/<name>/SKILL.md-- Adds skills to the available catalog~/.claude/CLAUDE.md-- Injects global instructions into system prompt
Install
dsh plugin --profile your-profile add dsh-plugin-claude-bridge
Configuration
Works out of the box with zero configuration. All options are optional:
- id: claude-bridge
name: dsh-plugin-claude-bridge
config:
claudeHome: '~/.claude'
enableMemory: true
maxMemoryBytes: 8192
enableSkills: true
maxSkills: 30
enableGlobalInstructions: true
extraSkillDirs:
- '~/.agents/skills'
How it works
Memory injection
Claude Code stores memories as individual markdown files with YAML frontmatter. This plugin reads all memory files, sorts them by type priority (feedback > project > reference > user), and injects them as a dynamic system prompt context section. The context is re-read on each request, so new memories take effect immediately.
Skill catalog
Skills from ~/.claude/skills/ are discovered and their names and descriptions are injected as a catalog in the system prompt.
Global instructions
The content of ~/.claude/CLAUDE.md is injected as an early system prompt section (order 5), so global instructions and model routing rules are preserved.
Related bridge plugins
- dsh-plugin-codex-bridge -- Bridge OpenAI Codex
- dsh-plugin-opencode-bridge -- Bridge OpenCode
- dsh-plugin-pi-bridge -- Bridge Pi Agent
- awesome-dsh-bridges -- Curated list of all bridge plugins
License
MIT -- YYTbit
Read the usage guide →
Install steps, key points, FAQ and compatibility for this plugin — auto-derived from indexed fields.
Listing badge
[](https://deepseek-plugin.org/plugins/YYTbit/dsh-plugin-claude-bridge)Paste this markdown into your GitHub README to link back to this listing. The badge only states the listing — not a security endorsement.