
Walvez/dsh-codex-sync
dsh-codex-sync
The ultimate 2-way bridge between OpenAI Codex and DSH: bidirectional chat sync, live Skills mount & auto MCP mirroring.
Install
npx @deepseek-ai/dsh plugin --profile web add dsh-codex-syncRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-codex-sync)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from Walvez/dsh-codex-sync, cleaned of badges and images.
⚡ dsh-codex-sync
The ultimate 2-way bridge between OpenAI Codex and DSH: bidirectional chat sync, live Skills mount & auto MCP mirroring.<br/> 2-way project chat sync · Live Skills mount · Auto MCP mirroring · Native modern UI
<a href="README.md"><b>English</b></a> • <a href="README.zh-CN.md"><b>简体中文</b></a>
<br/> <b>🎛️ Native Sync Settings Modal</b><br/>
<b>📍 Sidebar Workspace Trigger</b><br/>
<b>📥 Import from Codex by Project</b><br/>
<b>📤 Export DSH Chats to Codex</b><br/>
🤔 Why dsh-codex-sync?
When using OpenAI Codex, developers build up significant workflow assets:
- Rich project chat histories with complete code contexts, architecture decisions, and debugging steps;
- Custom Skills libraries under
~/.codex/skillswith tailored instructions and scripts; - Configured MCP toolchains for databases, web searches, and browser automation.
When adopting or exploring DeepSeek Harness (DSH), developers typically face major friction:
- Lost conversation history: Incompatible session formats prevent resuming past Codex tasks in DSH;
- Configuration duplication and drift: Skills and MCP servers must be manually recreated and maintained in two separate tools;
- One-way dead ends: Most migration scripts are one-time destructive copies that offer no clean way to safely bring DSH continuations back to Codex.
dsh-codex-sync eliminates this friction completely. It is not a throwaway migrator, but a production-grade, continuous two-way bridge between Codex and DSH.
✨ Key Highlights
1. 💬 Two-Way Safe Project Chat Portability (Codex ⇄ DSH)
- Import from Codex:
- Browse conversations grouped by workspace folder in an intuitive project tree;
- Preserves user prompts, assistant outputs, reasoning traces, and tool-call trajectories;
- Automatically attaches imported sessions to matching workspaces for seamless continuation;
- Incremental re-import: Codex conversations continued after the initial import are marked as
updatedand append only new turns without creating duplicate sessions.
- Export to Codex:
- Export DSH native conversations or continuations back into Codex;
- Automatically matches Codex's workspace catalog, gracefully locking unknown directories to prevent orphan threads;
- Creates clean, standalone Codex rollouts (
history_mode: legacy) and SQLite index entries without modifying or overwriting original Codex histories; - View and continue chats in Codex immediately after restarting the Codex app.
- Sub-Agent Thread Filtering:
- Hides internal sub-agent threads by default to keep the conversation list focused;
- Easily expand and nest sub-agents under parent threads for selective, independent export.
2. ⚡ Live First-Class Skills Mounting
- Mounts
~/.codex/skills/*/SKILL.mddirectly into DSH's native skill catalog; - Full support for nested directory resources and multi-file skill bundles;
- Zero-restart updates: Edit a skill file on disk, and DSH recognizes the change on the next turn.
3. 🔌 Automated Bidirectional MCP Mirroring
- Codex → DSH: Watches
~/.codex/config.tomllive, dynamically mirroring[mcp_servers.*]to DSH with conflict avoidance and stderr silencing; - DSH → Codex (Reverse Bridge): Single-command setup (
npx dsh-codex-sync codex-install) equips your Codex agent with tools to search, inspect, and install DSH plugins.
…

