Skip to main content

dsh-plugin-claude-bridge

9Stars2Forks2Issues0Watchers

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.

Evidence5/5methodologySourceInstallMaintenanceDSH versionSecurity scan
Machine-auditedInstall commandRepo verifieddsh-plugin topicLicenseREADMEAI wiki
Language
TypeScript
License
MIT
Branch
master
claude-codedeepseek-harnessdsh-pluginmemory

Install

cmdweb profile
$ dsh plugin --profile web add dsh-plugin-claude-bridge

Run 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 via cordis.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

DependencyMin VersionDescription
DSHNo specific version declaredRequires host to expose systemPrompt service from @deepseek-ai/cordis
Node.js^22.19.0 or >=24.0.0Declared by package.json engines field
PlatformCross-platformUses only standard Node built-in modules (fs/path/os), no native dependencies
Native ModulesNoneOnly uses node:fs/promises, node:path, node:os

Installation

dsh plugin --profile web add github:YYTbit/dsh-plugin-claude-bridge

Configuration Options

ConfigTypeDescriptionDefault
claudeHomestringClaude Code data directory path~/.claude
projectKeystringCurrent project encoded key; source code automatically encodes current working directory using Claude Code rulesAuto-detect
enableMemorybooleanWhether to inject project memory into system prompttrue
maxMemoryBytesnumberByte limit for injected memory; preserves complete entries until the next would overflow8192
enableSkillsbooleanWhether to parse skills directory into skill list and injecttrue
maxSkillsnumberMaximum number of skills injected into system prompt30
enableGlobalInstructionsbooleanWhether to inject ~/.claude/CLAUDE.md as global instructionstrue
extraSkillDirsstring[]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 via encodeProjectPath(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.ps1 included 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.

Read the usage guide →

Install steps, key points, FAQ and compatibility for this plugin — auto-derived from indexed fields.

Listing badge

Listed on deepseek-plugin.org
[![Listed on deepseek-plugin.org](https://img.shields.io/badge/listed_on-deepseek--plugin.org-007EC6)](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.

← Back to plugin directory