yangshen830-eng/dsh-editor

yangshen830-eng★ 0JavaScript最后同步: 2026-08-19

在 GitHub 打开

DSH 代码编辑器插件:VS Code 风格界面,内置文件树、Monaco 编辑器、跨文件搜索/替换、Markdown 预览与 Git diff

README 摘要

DSH Editor 一个运行在 DeepSeek Harness (DSH) 里的 VS Code 风格代码编辑器插件:在会话主区新增一个「文件」标签页,提供文件树、Monaco 编辑器、跨文件搜索/替换、Markdown 预览、Git 状态等能力。 以 标准 Cordis 插件(npm 包) 形式分发,可通过 dsh plugin add 一键安装、重启后依然生效。 功能 - 文件树 :浏览当前工作区目录(自动跟随会话/工作区切换),展开/折叠,Git 状态角标( M / A / ?? …),点击角标查看 diff。 - Monaco 编辑器 :多文件标签页、语法高亮、自动换行/Minimap/字号/Tab 宽度可配置、快捷键可自定义。 - 跨文件搜索 :基于 ripgrep,流式增量出结果、命中高亮、虚拟滚动(上限 20000 条)、大小写/全字/正则开关、包含/排除 glob、搜索历史、跨文件替换。 - Markdown 预览 :源码 / 预览 / 分屏三视图,marked 渲染 + DOMPurify 消毒 + highlight.js 高亮 + mermaid 图表 + KaTeX 公式 + 任务列表勾选。 - 快速打开 : Ctrl+P 按相对路径模糊匹配。 - 对话路径跳转 :对话里行内代码形式的文件路径可 Ctrl+点击 (macOS Cmd+点击 )直接切到「文件」页并打开。 - 主题同步 :跟随 DSH 明暗主题,Monaco/highlight.js/mermaid 实时切换。 安装 从 GitHub 安装(推荐) 从本地目录安装 从 npm 安装(发布后) 安装后 重启 DSH ( dsh web --profile web )即可在会话主区看到「文件」标签页。 说明: dsh plugin add 会把包加入 dsh.profile.bundles ,profile 启动时依据本包的 dsh.bundle.patch ( cordis.patch.yml )挂载 Host 端,并依据 dsh.client 声明加载浏览器端。客户端模块表的扫描结果在进程内缓存,因此 插件集变化需重启 DSH 生效 。 目录结构 架构 DSH 的浏览器 UI 插件由两半组成,通过 npm 包的 dsh 字段声明挂载: - Host 半 ( lib/index.js ):标准 Cordis 插件, inject: ['connection'] ,在 apply 里用 ctx.connection.rpc.handle('/editor', handler) 暴露私有 JSON RPC。 fs: (文件读写/列举/项目根/搜索)、 git: (状态/diff)各端点走一个 dispatch 表。 - Client 半 ( lib/client.js ):…

在 GitHub 查看完整 README →
搜索code-editordshdsh-plugin

分类