Preface¶
When developing in DSH Web, a common issue is that existing context is difficult to migrate: if you have used Claude Code, CLAUDE.md, project memory, and .jsonl conversation history typically cannot be directly transformed into a usable session within DSH.
Mreate/dsh-cc-import is a DeepSeek Harness Web plugin that imports Claude Code’s memory and conversation history, converting them into traceable, resumable DSH sessions. Below, we introduce its capabilities, installation method, typical usage, and important notes.
Plugin Positioning¶
- Plugin Name:
Mreate/dsh-cc-import - Maintainer:
Mreate - Status:
public beta - Platform:
DeepSeek Harness Web - License:
MIT - Package Version:
package.json version: 0.1.0 - Runtime Requirements:
node ^22.19 || >=24,pnpm >=10
It primarily solves two types of migration issues:
-
Loading Claude Code’s memory files into the DSH context, including
CLAUDE.mdandDSH.md. -
Importing Claude Code’s
.jsonlconversation history as real DSH sessions, making them easy to trace back and continue working on.
Core Features¶
Memory Loading¶
The plugin supports CLAUDE.md + DSH.md memory loading.
For repositories that already have project memory files, you can load this memory first before entering a DSH session, avoiding the need to manually copy context.
/init Command¶
Entering /init first brings up the DSH option selection UI, where you choose the documentation language.
Available languages:
中文
English
After selecting the language, the plugin submits the “Analyze codebase → Create DSH.md” prompt to the current model. Following these steps, the model performs analysis based on the current context and uses it to create DSH.md.
High-Fidelity Conversation Import¶
The plugin converts Claude Code’s .jsonl sessions into DSH sessions.
Imported DSH sessions support tracing and resuming. Tool call parameters and results are preserved as-is but are not re-executed. In other words, imported sessions are faithful replays, not online re-runs.
Subagent Import¶
Claude Code subagent side-chains can be imported as sub-sessions.
Please note: subagents are imported as sub-sessions, but the tool calls in the main session that triggered the subagents are not yet hyperlinked to those sub-sessions.
Dual Entry Points¶
The plugin provides two entry points:
- The “Import Claude Code Conversations” button at the bottom of the sidebar.
- An overlay multi-select picker.
On the model side, there are also cc_history_list / cc_import tools, allowing the model to drive imports directly.
Extensible¶
The importer implements the ImportProvider interface. If you need to integrate other sources in the future, you can extend the import capability based on this interface.
Installation and Activation¶
First, verify the runtime environment:
- DSH with the
dshCLI globally installed. pnpm10+.Node≥ 22.
Install the DSH CLI globally:
npm install -g @deepseek-ai/dsh
If building from local source code, first install dependencies and bundle:
cd cc-import
pnpm install
pnpm run bundle
Then install the plugin into the web profile:
dsh plugin --profile web add github:Mreate/dsh-cc-import
Restart dsh web after installation.
Typical Usage¶
1. Generate DSH.md with /init¶
In DSH Web, enter the target session and type:
/init
Then select the documentation language:
中文 / English
After selection, the plugin submits the “Analyze codebase → Create DSH.md” prompt to the current model.
2. Import Claude Code conversations from the sidebar¶
After installation and restart, the “Import Claude Code Conversations” entry will appear at the bottom of the sidebar.
Click to enter, then use the overlay multi-select picker to choose the Claude Code sessions you want to import. After the import is complete, these sessions will appear as DSH sessions and can be traced and resumed.
3. Model-driven import¶
On the model side, you can use:
cc_history_list
cc_import
First list the importable Claude Code history, then trigger the import.
Applicable Scenarios and Notes¶
Suitable for the following scenarios:
- You already use Claude Code and want to continue using existing memory and conversation history in DSH Web.
- You need to migrate context from
CLAUDE.md,DSH.md, and Claude Code.jsonlsessions. - You want to turn historical conversations into traceable, resumable DSH sessions.
Before use, please note:
- The plugin runs with the current
dshprocess permissions. Review the source code and theMITlicense before installation. cc-importdoes not implement an independent sandbox.- Memory loading is read-only for files.
/initand imports write using DSH’s existing file policies./initexplicitly restricts writes to the current workspace withworkspace-write.- No model or Shell commands are executed.
- Imports only cover the
claude-codeprovider. @importdepth and file count are bounded: defaults are 4 levels / 40 files.- Tool call parameters and results are preserved as-is but are not re-executed.
- Subagents are imported as sub-sessions, but the tool calls in the main session that triggered the subagents are not yet hyperlinked to those sub-sessions.
- Attachment image restoration is not implemented; Claude Code image blocks are degraded to text placeholders:
[image: <media_type>]
- The sidebar session list is a closed area in DSH; imported sessions do not have a CC badge in the list. The badge is only displayed within the plugin overlay.
Links¶
GitHub repository:
https://github.com/Mreate/dsh-cc-import