DeepSeek Harness Plugin

Nwflower/dsh-chat-import

Stars ★ 125 Downloads (30d) 12,832 Category Sessions & Messages Added 2026-08-13 npm dsh-chat-import

Import full-fidelity chat histories from 13 coding agents (Claude Code, Codex, ChatGPT, Cursor, Gemini, opencode, and more) as resumable DeepSeek Harness sessions, with reverse export back to Claude Code.

Install

# from npm (prebuilt)

dsh plugin --profile web add dsh-chat-import

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

dsh plugin --profile web add github:Nwflower/dsh-chat-import

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).

README

DSH Chat Import

A DeepSeek Harness plugin that imports conversation history from 17+ AI coding tools, so you can continue right where you left off.

All sessions, continued in DSH.

Intro

DSH Chat Import imports conversation history with full context from other agents, turning it into a seamlessly resumable DeepSeek Harness session.

Now covers import from 19 agents: Claude Code, Codex, ChatGPT, Cursor, Gemini, Reasonix, opencode, MiMo Code, ZCode, Grok Build, OpenClaw, Pi Coding Agent, Hermes, Kimi CLI / Kimi Code, Qoder CLI, WorkBuddy, Qwen Work CN (千问办公) and DSH session logs.

Export back to: Claude Code, Codex, Kimi Code.

Install

dsh plugin --profile web add dsh-chat-import                    # npm package
dsh plugin --profile web add -w link:/path/to/dsh-chat-import   # local checkout (symlink)

Usage

  1. Import — pick the conversations to import from the "Import sessions" panel in the bottom-right of the GUI and import with one click, or have your agent call the context tool:
import_chat({ format: "claude", path: "~/.claude/projects" })
import_chat({ format: "chatgpt", path: "~/Downloads/chatgpt-export/conversations.json" })
import_chat({ format: "local-jsonl", path: "D:\downloads\session.jsonl" })
  1. Resume — refresh the session list, open the imported session, and keep chatting from where the source left off.

  2. Sync (optional) — the panel's "Sync" tab offers bidirectional incremental sync, off by default. Sub-agent conversations are filtered out by default in both directions.

Full tool / command usage (parameters, examples, edge cases) lives in docs/USAGE.md.

Features

Capability Entry points Description
Batch import import_chat (19 formats) · scan_discover · sidebar panel Import 18+ sources with one tool; each conversation becomes its own session
Import history & purge sidebar panel History tab View imports.json records; remove plugin-created sessions (with confirmation)
Full-fidelity resume Imported sessions Tool calls & results, reasoning, titles, models and timestamps carry over
Export back export_chat (format: claude / codex / kimi) Serialize DSH sessions back to Claude / Codex / Kimi
Bidirectional sync panel "Sync" tab Incremental sync in both directions (external ↔ DSH), off by default

Docs

Document Description
Usage Reference Full parameters, examples and edge cases for every tool / command
Interchange protocol Interchange v1 protocol and bundle format
Changelog Version history
Roadmap Shipped / planned
Contributing Development setup, commit rules, security & privacy

Star History

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →

Community comments

Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.