Introduction¶
If you switch tasks between DSH (DeepSeek Harness) and Codex, a common requirement is to bring the current conversation to the other side, or to batch import unarchived conversations from a project to the other side. dsh-codex-migrate provides an explicit one-time structured import: perform an import once when needed, without relying on background bidirectional synchronization, and without turning conversations on both sides into shared sessions.
Plugin Positioning¶
dsh-codex-migrate is a DSH plugin maintained by polarskicpl under the MIT license. Adopting DSH’s “everything is a plugin” extension model, it integrates as a plugin to handle one-time structured migration between Codex and DSH.
Core Features¶
Below are the capabilities supported by the plugin:
- One-time structured import from Codex → DSH and DSH → Codex
- Supports single conversation migration without modifying the source conversation
- Supports batch migration of unarchived conversations by DSH project, preserving the original workspace path
- Provides entry points for “Continue in Codex” and “Continue in DSH”
- Provides MCP memory Beta:
remember_memory,search_memory,forget_memory - Supports three memory sources: Codex Markdown memory, bridge MCP memory, and Memory Skill storage
- Uses
size + mtime + hashto incrementally refresh the Codex session list via cache - Isolates corrupted JSONL session files
It does not perform background bidirectional synchronization, does not share conversations, and does not handle conflict merging. Each import is an explicit action.
Installation and Enablement¶
First, confirm the environment:
- Available DeepSeek Harness
- Codex desktop, Codex CLI, or Codex IDE extension
- Node.js 18 or higher is recommended
Example commands use the DSH web profile; if you use a different profile, you need to replace it in the command.
Install the DSH plugin:
dsh plugin --profile web add dsh-codex-migrate
After restarting DSH, open Settings → Codex Migration. When the DSH plugin is installed separately, it supports import from the settings page and DSH → Codex operations. If you want to initiate an import from Codex or use MCP memory, you need to install the Codex companion.
Typical Usage¶
DSH → Codex¶
Click the Codex icon in DSH to import a DSH conversation and jump to Codex.
You can also open Settings → Codex Migration → Batch Migration by Project to batch import unarchived conversations in the project.
Codex → DSH¶
In Codex, say:
Continue in DSH
This will import the current Codex task to DSH and open it.
MCP memory Beta¶
Ask in a Codex task:
Use DSH MCP to remember that my test code is ocean-blue-728.
Then ask in another task:
Search DSH MCP memory and tell me my test code.
MCP memory is stored locally at:
~/.codex/dsh-codex-bridge/memory.jsonl
These memories are not uploaded by the plugin.
Applicable Scenarios and Notes¶
Suitable for DSH users who need to explicitly import conversations between Codex and DSH. When using it, it is recommended to pay attention to the following points:
- Each import is an explicit one-time operation; there is no background bidirectional synchronization, no sharing of conversations, and no conflict merging.
- When the DSH plugin is installed separately, it supports import from the settings page and DSH → Codex operations; initiating an import from Codex or using MCP memory requires installing the Codex companion.
- The DSH plugin runs under the permissions of the current dsh process; it is recommended to check the source code and MIT license before installation.
- Example commands use the
webprofile; if using a different profile, you need to replace it yourself. - The DSH community directory is an independent community site and has no official affiliation with DeepSeek or High-Flyer.
Links¶
- Plugin Directory Page: https://www.skillhub.cn/plugins/polarskicpl/dsh-codex-migrate
- GitHub Repository: https://github.com/polarskicpl/dsh-codex-migrate