DeepSeek Harness 插件

PerryLink/dsh-claude-move

Star 数 ★ 27 下载量(近 30 天) 2,874 分类 会话与消息 收录于 2026-08-16 npm dsh-claude-move

四合一迁移向导:把 Claude Code、Codex、OpenCode、Hermes 的会话、记忆、技能、指令与斜杠命令迁入 DSH(/move 向导,审批门 + 幂等 move.json,会话可续聊)。

安装

# npm 包(预构建)

dsh plugin --profile web add dsh-claude-move

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:PerryLink/dsh-claude-move

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

🚚 dsh-claude-move

  • 1024 商店渠道:先 npm i -g dsh1024,再 dsh1024 plugin --profile web add dsh-claude-move(计入 deepseek1024.com 安装排行)。

将 Claude Code、Codex、OpenCode 和 Hermes 迁移到 DeepSeek Harness —— 将会话、记忆、技能、指令和斜杠命令复制为可续聊的 DSH 会话,只复制、审批门控。

迁移时保留你的 Claude Code 历史:一次安装、可续聊会话、与运行中的 Claude Code 实时同步,以及一个四来源迁移向导。

dsh-doctor DSH Market

English · 简体中文 · Español · Português · हिन्दी


⭐ 如果它帮到了你

这个插件是 DSH 插件家族的一员(40+ 个,全部 Apache-2.0)。如果你在用,给个 star —— 它不会解锁任何功能,但会让下一个人在搜索里更容易找到它。

English: part of a 40+ plugin family for DeepSeek Harness. If it is useful, a star helps the next person find it — nothing is gated behind it.

兼容性

  • 面向 dsh 0.1.7-rc.2(web profile,当前线会话格式 V4);peer 依赖要求 >=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0。已于 2026-09-24 核验(checkJs 类型门 + 291 项断言、38 个套件)。导入日志重新满足当前恢复边界:tool/result 写成 V4 一等 tool 角色消息,续聊交接摘要带生产者自有消息来源 kind(dsh-claude-move)——0.1.7-alpha.1 在类型层与落盘行准入层双双删除了笼统的 { kind: 'plugin', plugin }。宿主没有 sessions.open() 时,面板「打开会话」按钮置灰渲染并带说明 title。 0.1.2-rc.1(2026-09-04 已适配):会话信封保留 ignorable 字段但仅用于存量日志读取兼容——Session.append 仍无法盖章,门控行为不变。
  • 0.4.0 内置 sessionPersistence 双基线运行时 shim,按 API 形状特性探测(绝不按版本号猜测):旧 API(create/append/readFrom,list() 返回会话头)与 handle seam(create 返回 SessionHandle,list()/stat() 返回快照)都能工作。handle seam 已随 alpha 线发布(@deepseek-ai/dsh-session-persistence / -jsonl 0.1.5-rc.2),因此 compat workflow 可以覆盖它。handle 路径上每次 append 之后必须 flush()(耐久屏障)并成对 close()(单写所有权);header 盖上后端当前格式版本并显式补 isSeeded;缺失的 assistant model 来源回退 provider。两条写盘路径都按后端自报的格式版本决定形状:合成的 assistant/message 自格式 2 起带 stream: [](恢复边界断言 Array.isArray(data.stream),缺它则日志能写入、能读回却不可续聊);tool/result 自格式 4 起是 V4 一等 tool 角色消息,之下折回 v3 的 tool-result 包裹块——绝不写出目标后端自己会拒收的形状。导入扫描的清理在列表元素的 header.id 无法解析时拒绝执行,绝不静默清空 imports.json。
  • 最近针对全新 tarball 安装验证:真实扫描、真实批量导入(幂等重导入)、工作区挂载与持久化产物均已确认;macOS/Linux 由 CI 矩阵覆盖。导入日志使用后端当前的会话格式(0.1.7-alpha.1 上为 V4、0.1.6 线为 V3、<= 0.1.2-rc.1 为 v0),dsh <= 0.1.2-rc.1 无法读取(升级是单向的;回退办法是从源 transcript 重新导入)。导出的读取侧把上述每种形状都读得回来。

兼容性矩阵(仅公开接缝)

接缝 使用 缺失时的回退
Host 服务(tools / sessionPersistence / workspaceRegistry / commands / systemPrompt / skills / webServer) 所列之处必需 可选服务响应式注册;缺失 fs 大声失败
sessionPersistence 双基线:旧 API(listSnapshots / readFrom / append)或 handle(open / stat、快照 list()) 运行时按 API 形状特性探测 header.id 解析守卫:解析失败大声中止扫描,绝不静默清空 imports.json
支持 streamText 的 fs / ctx.jobs / ctx.agents.resume 特性探测 整文件读取并大声拒绝 / 自有 job map / 交接注入
Client shell 服务(sessions.refresh/open、workspaces.refresh) 面板 apply 时特性探测 整页刷新
较新的平台能力从不是硬性要求 —— 插件在最早支持线(0.1.2-rc.1)上始终保持可启动。

你能获得什么

  1. 自动发现 —— claude_scan 定位 Claude 数据根($CLAUDE_CONFIG_DIR,回退 ~/.claude)并索引每个项目/会话、记忆、技能、全局 CLAUDE.md 和 settings.json,带增量缓存和并行扫描(scanConcurrency)。
  2. 全保真导入 —— import_claude 将 transcript 转换为均衡、可续聊的 DSH 会话(turn/start → step/start → user/message → assistant/message → tool/call → tool/result → step/end → turn/end),修复被中断的工具调用,并以分块流式导入超过 maxTranscriptBytes 的 transcript。
  3. 一个 claudecode 工作区 —— 每个导入的会话都落到一个专用工作区(默认 $DSH_HOME/claudecode);workspaceMode: 'per-project' 恢复每个项目一个工作区的分组方式。
  4. 只复制且增量 —— 两侧都不会被移动、改写或删除;重新运行只追加新的轮次(force: true 以新 id 额外保存一份完整副本)。
  5. 个人上下文,始终新鲜 —— 记忆作为实时提示词段落注入,Claude 技能注册为真正的 DSH 技能(全局 + 项目级),全局 + 项目 CLAUDE.md 提前注入。
  6. 四来源迁移向导 —— /move 加上 move_detect / move_preview / move_run 迁移 Claude Code、Codex、OpenCode 和 Hermes,审批门控且幂等(move.json)。
  7. Web 面板与命令 —— /claude-import-all、/resume-claude、/claude-move-reset、/claude-export,以及一个浮动迁移面板。
  8. 双向导出 —— claude_export(或 /claude-export <sessionId>)把 DSH 会话回写为 Claude Code 可 resume 的 JSONL transcript(user/assistant/tool 轮次、thinking + tool_use/tool_result 配对、cwd 尽力映射),让历史可以再次离开 DSH。

四来源迁移向导

/move              # 一次性向导:检测 → 预览 → 执行 → 报告(全部四个来源)
move_detect        # 扫描 Claude Code / Codex / OpenCode / Hermes
move_preview       # 逐项计划:new | unchanged | changed | conflict(含 diff)| unsupported
move_run           # 在审批门控之后执行;冲突解决:
                   #   skip | overwrite | rename | merge  (默认 skip —— 绝不猜测)
  • 来源 —— Claude Code(~/.claude)、Codex(~/.codex)、OpenCode(数据 + 配置根)、Hermes(技能/记忆根);每个来源都有自己的 parser + mapper。
  • 映射 —— 记忆/指令 → 追加到 DSH 全局 AGENTS.md 的仅追加受管段落(每项一个标记段落);技能 → 真正的 DSH 技能(SKILL.md 包原样复制,其他格式转换);斜杠命令 → 已注册的 DSH 命令(重启后从 move.json 重建);会话 → 可续聊的 DSH 会话(与阶段 1 相同的导入器)。
  • 幂等 —— 每个已应用的计划都记录在 $DSH_HOME/claude-move/move.json(digest / targetDigest / appliedAt);重新运行跳过未变更项,force 重新应用它们。
  • 审批门控 —— 任何会写入内容的运行都先询问 ctx.approval;除 allowed-once 之外的任何结果都意味着零写入。

快速开始

# 1. 将 bundle 安装到你的 profile
dsh plugin --profile web add "github:PerryLink/dsh-claude-move#master"

# 或从 npm 安装(已发布版本)
dsh plugin --profile web add dsh-claude-move

# 2. 重启并验证该行
dsh --profile web --dump-config | grep -A4 'id: claude-move'

然后,在任意 DSH 会话中运行一条命令:

/claude-import-all      # 扫描 → 复制每个 Claude 会话 → 报告

导入后无需重启 DSH —— 刷新一次已打开的 Web 页面,点击任意导入会话即可继续。

安装与卸载

  • git 渠道(最新 master):dsh plugin --profile web add "github:PerryLink/dsh-claude-move#master" —— 纯 ESM,无需 prepare 或 allowBuilds 步骤。
  • npm 渠道(已发布版本):dsh plugin --profile web add dsh-claude-move。
  • tarball 渠道:在本仓库执行 npm pack,然后 dsh plugin --profile web add ./dsh-claude-move-<version>.tgz。
  • 卸载:从 profile 的 bundles 中删除 claude-move 行并重启 dsh。导入的会话保留在 DSH 的数据目录中;插件只写自己的缓存($DSH_HOME/claude-move/)和 claudecode 工作区文件夹,绝不触碰 Claude 源数据。

迁移了什么

~/.claude(只读)
 ├─ projects/*/*.jsonl  ──→  可续聊的 DSH 会话,默认分组到一个 "claudecode" 工作区
 ├─ projects/*/memory/  ──→  实时 system-prompt 记忆段落(每次请求重新读取)
 ├─ skills/**           ──→  真正的 DSH 技能
 └─ CLAUDE.md + settings ──→  早期提示词段落 + 配置建议(绝不自动应用)
在 Claude Code 中 在 DSH 中变为
会话 transcript(projects/*/*.jsonl) 均衡、可续聊的 DSH 会话 —— user/assistant/tool/thinking 全保真映射并修复被中断的工具调用 —— 分组到一个 claudecode 工作区或每个项目一个
记忆文件(projects/*/memory/*.md) 一个实时 system-prompt 上下文段落,每次请求重新读取(feedback > project > reference > user)
技能(~/.claude/skills/**) 真正的 DSH 技能(kebab-case 命名、冲突后缀、默认最多 30 个;README.md/MEMORY.md 及无描述的文件被跳过)
CLAUDE.md(全局 + 每个项目) 一个早期提示词段落;项目文件优先
settings.json DSH 配置建议,附带明确的无法映射键列表
项目状态(目录、git 分支和脏计数) 显示在扫描索引、Web 面板徽章和 /resume-claude 交接中

用法

在挂载了插件的任意会话中调用这些工具:

claude_scan                          # 完整扫描(增量缓存)
claude_scan { path: "~/.claude/projects/<slug>" }   # 部分扫描
claude_scan { refresh: true }        # 跳过缓存,重新扫描全部
claude_scan { projectsLimit: 10, sessionsLimit: 5, fields: "brief" }  # 精简输出

import_claude { path: "~/.claude/projects/<slug>/<sessionId>.jsonl" }  # 单个会话
import_claude { path: "~/.claude/projects" }        # 目录(递归)
import_claude { path: "all" }                       # 全部
# 随时重新运行:未变更的文件被跳过,增长的 transcript 只追加新的轮次。
# 超过 maxTranscriptBytes 的文件以分块流式导入(无内存上限)。
import_claude { path: "...", force: true }          # 全新的完整副本(保留之前的副本)

claude_export { sessionId: "<dsh-session-id>" }     # 把 DSH 会话回写为 Claude JSONL
claude_export { sessionId: "...", path: "~/.claude/projects/<slug>/<id>.jsonl" }  # 指定目标

命令(用户触发,不占模型轮次):

/claude-import-all                # 一次性:扫描 → 导入全部 → 报告 → 注入当前会话
/resume-claude latest             # 继续最近的 Claude 会话
/resume-claude <sessionId>        # 按源会话 id 或 import-<src> id
/resume-claude <keyword>          # 匹配标题;多个匹配会列出,绝不猜测
/claude-move-reset                # 重置插件缓存(书签 + 导入映射);导入的会话保留
/claude-export <sessionId> [path] # 导出 DSH 会话为可 resume 的 Claude JSONL transcript

Web 面板:一个浮动迁移面板,包含项目/会话树、状态徽章(未导入 / 已导入 / 已导入并有新轮次 / 源缺失 / 目录缺失 / git 脏)、关键字过滤、分页渲染、每个会话的「导入并继续」+「打开会话」+「刷新会话列表」、带实时进度条和取消的批量导入,以及一个缓存重置按钮。文本跟随浏览器语言(zh/en)。通过插件自身的 /api/claude-move/* JSON 路由在公开 ctx.webServer 接缝上提供。

导入之后

你无需重启 DSH。 导入在完成的那一刻即通过公开的 sessionPersistence 服务持久化落地:

  • 服务器端列表(session.list / workspace.list RPC、CLI、任何新的页面加载)会立即在 claudecode 工作区下显示导入的会话。
  • 面板会自行刷新已打开页面的会话列表,并为每个导入的会话提供 打开会话 按钮。
  • 导入的会话可以立即打开、读取和继续 —— /resume-claude,或点击列表中的会话。随时重新运行导入只会把新轮次同步到相同的会话中。

配置

全部可选,可在 cordis.yml 中覆盖。

键 默认值 含义
claudeHome $CLAUDE_CONFIG_DIR 或 ~/.claude Claude 数据根
workspaceMode claudecode claudecode(一个专用工作区)· per-project(每个源 cwd 一个工作区)
claudecodeDir $DSH_HOME/claudecode claudecode 工作区文件夹(插件唯一会创建的文件夹)
scanGit true Git 探测级别:true(完整)· 'branch'(零 git 调用)· false
gitTimeoutMs 5000 Git 子进程超时
scanConcurrency 8 并行项目扫描上限
maxTranscriptBytes 67108864 流式导入阈值(超过则分块)
excludeProjects [] 要跳过的 slug 子串
enableMemory true 将记忆作为实时提示词段落注入
memoryMaxBytes 8192 记忆段落上限
memoryScope current-project current-project · all(当前项目优先)
enableSkills true 将 Claude 技能注册为 DSH 技能
maxSkills 30 技能数量上限
extraSkillDirs [] 额外的技能目录
enableInstructions true 注入全局 + 项目 CLAUDE.md
resumeMaxChars 2048 交接摘要字符上限
resumeMode inject inject(交接摘要)· agents(ctx.agents.resume)
enableWebPanel true 注册 /api/claude-move/* 面板路由
importConcurrency 4 每批并行读取 + 转换
requireApproval true 向导写入询问 ctx.approval(仅 allowed-once)
codexHome $CODEX_HOME 或 ~/.codex Codex 数据根
opencodeDataHome 平台 XDG 数据目录/opencode OpenCode 数据根
opencodeConfigHome 平台 XDG 配置目录/opencode OpenCode 配置根
hermesHome $HERMES_HOME 或 ~/.hermes Hermes 数据根
skillsDir $DSH_HOME/skills 向导技能目标
agentsMdPath $DSH_HOME/AGENTS.md 向导记忆/指令目标
moveWorkspaceMode per-source 向导导入的工作区分组:per-source · single
enableExport true 注册 claude_export 工具与 /claude-export 命令
exportDir $DSH_HOME/claude-export 默认导出目录(显式 path 始终优先)

工具与界面

界面 类型 说明
claude_scan 工具 项目/会话/记忆/技能/设置的结构化索引
import_claude 工具 导入单个会话、一个目录或 all(增量;force 生成全新副本)
claude_export 工具 把 DSH 会话导出为可 resume 的 Claude Code JSONL transcript
move_detect / move_preview / move_run 工具 四来源向导:扫描、带 diff 的逐项计划、在审批之后执行
/claude-import-all 命令 扫描 → 导入全部 → 报告
/resume-claude 命令 继续一个 Claude 会话(latest、id 或关键字)
/claude-move-reset 命令 重置插件缓存(导入的会话保留)
/claude-export 命令 导出 DSH 会话为可 resume 的 Claude JSONL transcript
/move 命令 一次性四来源向导
Web 迁移面板 客户端 带进度、取消、分页、打开会话的浮动面板

权限与数据

  • 权限:workshop 清单声明 filesystem:read 和 filesystem:write。
  • 读取 ~/.claude(transcript、记忆、技能、CLAUDE.md、settings.json)—— 严格只读 —— 以及它导入到的项目目录。
  • 写入 通过公开 sessionPersistence 服务写 DSH 会话日志(仅 create + append,绝不删除/改写/归档)、工作区注册表记录、$DSH_HOME/claude-move/ 下的缓存,以及 claudecode 工作区文件夹。
  • 绝不 修改 Claude 源文件、触碰其他应用的数据或访问网络。不读取或传输任何凭据。

安全边界

  • 源文件只读;DSH 日志只追加(仅 create + append)。
  • 外部 transcript 是不可信输入 —— 其中的任何内容都不会被执行;system/developer/thinking 内容绝不进入续聊交接。
  • 仅公开服务 —— sessionPersistence / workspaceRegistry / tools / commands / systemPrompt / skills / webServer;不改引擎或 UI。
  • 密钥仅按位置报告(file:line:kind);permission/permission-mode/queue-operation 记录只计数、不导入。
  • 向导写入审批门控 —— 除 allowed-once 之外的任何结果都意味着零写入。

已知限制

  • 标题来自 custom-title/ai-title/首条提示;Claude summary 记录会被报告,但不映射为 DSH 压缩节点(合成一个有效的压缩事务会伪造其 seq 范围和检查点消息)。
  • thinking 块作为 reasoning 内容保留,但绝不进入续聊交接。
  • 被中断的工具调用会以合成的错误结果修复(绝不丢弃),报告为 repaired.synthesized。
  • 权限类记录只计数、不导入;DSH 权限预设建议在报告中生成。
  • 在没有流式 fs.streamText 接口的宿主上,超过 maxTranscriptBytes 的 transcript 会大声失败,而不是部分导入。
  • 在 workspaceMode: 'per-project' 下,源目录已删除的会话仍会导入,但工作区挂载失败(保持未分组;workspace.attached: false 加上一个 reason)。默认的 claudecode 工作区不依赖源目录。
  • 如果 transcript 被就地截断或重置(轮次少于记录的导入),重新导入会跳过它并报告 sourceShrunk;用 force: true 生成全新的完整副本。
  • Web 面板是由插件自身 JSON 路由驱动的零构建浮动面板;它不使用 shell 内部的 UI 插槽系统。

模型体验

  • 面向模型的面是这些工具的描述/schema 及其输出:claude_scan 返回结构化索引,import_claude 返回逐文件摘要以及警告的位置,claude_export 返回导出摘要(目标路径 + 轮次/消息/工具计数)。工具结果本身被记录为 tool/result 事件,因此一切都可以重建。
  • 没有隐藏的面向模型的文本;记忆/CLAUDE.md 段落注册在 ctx.systemPrompt 上(提示词组装,可从会话日志重建)。

故障排查

  • 该行未生效:dsh --profile <p> --dump-config 应打印 # == dsh-claude-move;重新运行 dsh plugin --profile <p> add ...。
  • Web 能启动但静默挂起:由 dsh plugin add 初始化的新 profile 只包含 dsh-base —— 将 @deepseek-ai/dsh-web-app 添加到 dsh.profile.bundles。安装到已有的 web profile 则无需任何操作。
  • 面板路由 404:只有当 enableWebPanel: true 且组合了 web 服务器时才会提供这些路由;检查启动日志中的 FAILED fiber。
  • 导入失败并提示 "transcript 过大":提高 maxTranscriptBytes 或单独导入该文件。
  • 导入成功但侧边栏没有显示新会话:页面已经打开 —— 点击一次面板的刷新按钮(或重新加载页面)即可。永远不需要重启 DSH。
  • 日志:启动失败会打印到 dsh 控制台;插件会为工作区/导入映射问题记录以 [claude-move] 为前缀的错误。

致谢(开源组件)

本项目采用 Apache License 2.0 许可;以下 MIT 许可组件保留其自身许可(全文见 THIRD_PARTY_NOTICES.md):

开发

npm install   # peer 依赖:@deepseek-ai/dsh-tools@>=0.1.2-rc.1 <0.2.0 || >=0.1.5-alpha.1 <0.2.0 || >=0.1.6-0 <0.2.0 || >=0.1.7-0 <0.2.0、@deepseek-ai/cordis、schemastery
npm test      # node --test test/*.test.mjs

CI 通过 GitHub Actions(test.yml)在 Linux/macOS/Windows 上以 Node 22 运行完整套件。

主题

deepseek-harness, dsh-plugin, claude-code, migration, session-import, resume

贡献者

  • @PerryLink —— 创建者与维护者:导入管线、四来源迁移向导、Web 面板、文档、CI/CD 与发布。
  • @OLDnana1 —— 对被中断工具调用损坏的根因分析,该损坏曾使导入会话在续聊时永久返回 HTTP 400。
  • @GooodWei —— 发现 README.md(以及任何无描述的 .md)被误注册为技能,从而破坏 DSH 的技能加载。

PerryLink DSH Plugin Family

This project is one of the 45 DeepSeek Harness plugins maintained by PerryLink. If this one helps you, the others likely will too:

Plugin One-liner
dsh-auto-review Second-model auto-review on the approval chain, fail-closed by default
dsh-autotier Automatic strong/cheap model-tier routing with deterministic risk guards and a /tier command
dsh-background-agents Durable background child agents with a Web UI sidebar, messaging and interrupt
dsh-budget Cost governance for DeepSeek Harness: budgets, carbon, and latency in one panel.
dsh-catalog DSH Desktop Market standard catalog source for the PerryLink family
dsh-cert-mcp Read-only MCP server exposing the certification registry: grades, snapshots and five-dimension evidence
dsh-checkpoint-rewind Claude Code /rewind-equivalent: snapshots, session forks, one-shot restore
dsh-claude-move Migrate Claude Code sessions, memory, skills and CLAUDE.md into DSH
dsh-click Cross-platform native desktop control for DeepSeek Harness — Windows first.
dsh-composer-history Terminal-style input history for the web composer: arrows, Ctrl+R search
dsh-data-quality Dataset quality checks and citation cross-checks (the optional numeric bridge consumed here)
dsh-defend Prompt-injection, jailbreak, and secret-leak defense for DeepSeek Harness.
dsh-doublecheck Engineering-discipline guard: requirements grill, test gates, adversary review
dsh-draw Unified static-image generation routing for DeepSeek Harness.
dsh-fast Read-only performance diagnostics for DeepSeek Harness.
dsh-fund-research Deterministic research reports for Chinese public mutual funds
dsh-github GitHub PR/issues integration for DSH, every write gated by approval
dsh-industry-research Industry research orchestration that seals its deliverables through this plugin's ctx.researchReport.assemble
dsh-laya Laya typed decisions (noul/choice/score) as a first-class Cordis service and model-visible tools
dsh-library Local document knowledge base for DeepSeek Harness.
dsh-local-ai Local-model (Ollama) integration for DeepSeek Harness.
dsh-lsp-actions LSP diagnostics, formatting, completion, code actions and rename over language servers
dsh-mask PII masking middleware: anonymize at the model boundary, restore at the display layer
dsh-mcp-panel Read-only MCP runtime panel: /mcp command + Settings tab with status, tools and errors
dsh-memento Approval-gated cross-session memory: ctx.memory seam + SQLite + memory tool
dsh-observe OpenTelemetry and Langfuse observability exporter for DeepSeek Harness.
dsh-output-styles Claude Code outputStyles-equivalent runtime style switching
dsh-permission-rules Claude Code-style declarative allow/deny/ask permission rules with audit
dsh-plugin-certification Community certification registry with repro-checkable grades and badges
dsh-plugin-doctor Zero-dependency static + sandbox smoke detector for DSH plugins
dsh-plugin-guide Plugin-development knowledge base as an on-demand agent skill
dsh-plugin-kit Shared zero-runtime-dependency toolkit for the PerryLink DSH plugins
dsh-plugin-upgrade One-package, one-corridor-index plugin upgrade skill: routes a repository to the matching closed corridor card
dsh-plugin-upgrade-015 Merged 0.1.3-alpha.1 → 0.1.5-rc.1 upgrade corridor card plus a zero-dependency seam scanner
dsh-reach Multi-channel approval/question bridge: WeChat/Telegram/Feishu, session console
dsh-research-report Verifiable research-report engine: content-addressed evidence ledger and sealed versions
dsh-score Multi-dimensional quality scoring for DeepSeek Harness plugins.
dsh-session-pin Pin sessions in the Web sidebar with durable ordering
dsh-session-sync Cross-device session sync for DeepSeek Harness — a dedicated git mirror of your session store.
dsh-skill-pack-security Security-audit skill pack: secret scan, dependency and supply-chain review
dsh-talk Voice-first session loop for DeepSeek Harness: talk to it, hear it answer.
dsh-team-rooms Cross-session team rooms: shared message bus, task board and timeline
dsh-test-drive Isolated install-and-smoke test drives for DeepSeek Harness plugins.
dsh-ticktick TickTick/Dida365 task bridge: session-header panel + 11 tools
dsh-translate Vendor parameter translation and deterministic JSON repair for DeepSeek Harness.

从 DSH Desktop 市场安装

所有 PerryLink 插件均可在 DSH Desktop 内置市场中浏览:市场 → 来源 → 添加来源 → 粘贴 https://perrylink-dsh-catalog.perrylink.workers.dev/catalog-source.json → 选中。安装仍需通过市场的 npm 身份校验与你的确认。

许可证

Apache License 2.0 © 2026 dsh-claude-move contributors

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。