DSH 插件市场DeepSeek Harness 社区插件目录

DSH-Codinput

已验证 会话与消息 ★ 15 0.3.9

DSH 插件:把聊天输入框变成代码编辑器一样的输入风格(CodeMirror 6 接管 conversation.composer.bar),web 与桌面端通用。

一句话定位

DSH 插件:把聊天输入框变成代码编辑器一样的输入风格(CodeMirror 6 接管 conversation.composer.bar),web 与桌面端通用。

安装方式

在 DSH 的 web profile 中执行下面的命令;装完刷新页面即可。

$ dsh plugin --profile web add dsh-codinput@0.3.9

兼容的 DSH 版本

未声明

作者与热度

Witherwithwinter · ★ 15 · 更新于 2026-11-06

关于这个插件

DSH-Codinput

中文 | English

把 DeepSeek Harness 的聊天输入框,换成编辑器式的输入面板。

普通模式(接管原输入位)

编辑 + 预览分屏(严格对半)

悬浮模式(可拖动位置、八向缩放)

侧栏标签模式(VS Code 面板式全高)

特性

三态单实例——输入入口只有三种形态,任一时刻恰好一个,绝不与官方输入框共存:

| 形态 | 进入方式 | 说明 |

| --- | --- | --- |

| 普通 normal | 默认 | 接管卡片在原输入位 |

| 悬浮 float | 按住卡片顶部行空白区拖动 | 脱出为悬浮窗:可拖动位置、可拖边界/角落缩放(位置与尺寸记忆) |

| 侧栏标签 side | 打开右侧栏的「Codinput」标签 | 输入在侧栏面板内;侧栏收起不让位,由标题栏下方的圆形小球唤回;侧栏里 /codinput 直接退回官方输入框并关闭本标签 |

  • 编辑器:行号(可关)、当前行与行号高亮、软换行、Tab 缩进、行列指示,编辑 + 预览分屏(markdown 实时渲染,严格对半)。
  • 撤销历史跨形态保留:拖成悬浮、切到侧栏再回来,Ctrl+Z 依旧有效——三态共用同一台官方输入机,草稿即唯一事实源(形态切换、插件禁用、重启都不丢)。
  • / @ 触发管线:完全走官方链路(track → 官方 menu store → 逐项复刻的 MenuView),候选菜单、钻取、crumbs、骨架屏与官方逐一对齐;/codinput 按字典序排入指令节首,其余保持官方使用序。
  • 模型与权限:模型与思考强度读官方共享目录(与 /model 同一状态源);权限为官方三预设,含完全权限的风险确认模态。
  • 附件:slash「添加 · 文件」、粘贴图片、拖文件进卡片三条路径;点图片缩略图弹原图预览(官方 ImageLightbox 同构);上传中/失败有状态芯片,失败可整卡重试。
  • 语音输入同步(官方桌面版):官方桌面版的输入框带语音按钮时,Codinput 在一模一样的位置渲染一模一样的按钮——直接渲染官方语音组件本体(麦克风钮、录音波形、转写、未就绪引导与文案全部是官方代码);原生没有语音按钮的宿主(web 端各版本)同样不渲染。
  • 性能与用量:复刻官方 stats dock——轮次/步数 · tok/s、累计 tok · 缓存命中、上下文占用小圈,取数与格式化逐值同官方,均可点开详情面板;三形态都有。三枚详情面板(会话统计 / Token 用量 / 上下文分段)经 portal 定位、滚动与尺寸变化跟随,Escape 与点外关闭,任意时刻至多一个展开。
  • 用户消息 Markdown(0.3.7):右侧自己发出的消息按 Markdown 排版(GFM + breaks,marked + DOMPurify 净化),保留官方气泡形态——附件行、@文件/@会话//技能 引用 chip(可点开)、复制钮与时间戳、引用摘要、悬停显形;设置 → Codinput「用户消息 Markdown 渲染」开关默认开,关闭即还原官方纯文本、无需刷新页面。
  • 插件页图标(0.3.7):包内 assets/icon.png 经 package.json 顶层 icon 字段接入宿主插件列表(manifest 相对路径、限 SVG/PNG/JPEG/WebP、≤256 KiB),已装插件不再落默认图。
  • 设置:设置 → Codinput——启用接管、行号、字体、发送/换行快捷键任意组合录制、默认视图;未启用时打开右侧栏的 Codinput 标签即直接启用。

安装

要求:宿主 @deepseek-ai/dsh(版本见下方[兼容性](#兼容性))。

方法 A:npm 包

dsh plugin --profile web add dsh-codinput

一条命令就够:dsh plugin 走官方 profile 包管理,装完会读这个包的 dsh.bundle 元数据、校验它自带的 cordis.patch.yml(dsh.bundle.patch),并把包名追加进 profile 的 bundles——不需要手写任何 patch 行。

然后 dsh web 启动(已在跑的话强刷页面即可,profile 默认 patchReload: live)。

方法 B:GitHub 源码

dsh plugin --profile web add github:Witherwithwinter/DSH-Codinput

仓库里带着构建产物 lib/,所以装源码同样不需要本地构建。如果 pnpm 提示需要构建授权(例如你换成自己的 fork 且删掉了 lib/),按它打印的键名写进 profile 的 pnpm-workspace.yaml 后重跑:

allowBuilds:
  esbuild@0.25.12: true

方法 C:本地源码(开发)

git clone https://github.com/Witherwithwinter/DSH-Codinput.git
dsh plugin --profile web add link:/abs/path/to/DSH-Codinput

link: 安装不会复制文件,改完 npm run build 刷新页面即生效。

方法 D:等价的手写配置

想在 profile 里锁版本、或要手工维护时,等价于方法 A 的是(~/.dsh/profiles/web/package.json):

{
  "dependencies": {
    "dsh-codinput": "^0.3.9"          // 本地开发用 "link:/abs/path/to/DSH-Codinput"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "@deepseek-ai/dsh-base",
        "@deepseek-ai/dsh-web-app",
        "dsh-codinput"                // ← 追加在最后
      ],
      "patchReload": "live"           // 改完 lib/client.js 强刷页面即生效
    }
  }
}

改完手工配置后,在 profile 目录里 pnpm install(或 dsh plugin --profile web install),再 dsh web。

兼容性

宿主通过 npm 发的是 rc 版本:latest 是当前稳定 rc、next 是下个 rc、alpha 更超前(2026-11-06 实测 latest / next 同指 0.2.2-rc.1,alpha 为 0.2.2-alpha.3),所以普通用户装到的就是 rc。

同分类对比

同一分类下 Star 最高的 5 个,便于横向比较。

插件作者 Star版本更新
dsh-purge kingcharleslzy-ai 6.3K 1.6.86 2026-11-08
dsh-unrestricted yexi-by 1.1K 0.2.8 2026-11-05
dsh-univer-office dream-num 707 0.4.0 2026-11-03
dsh-synapse liangmianya 697 0.5.7 2026-11-04
dsh-qqbot tencent-connect 570 0.5.5 2026-11-08