AIFireForAll/dsh-enter-lock
DeepSeek Harness plugin that locks the web chat composer Enter-send. Toggle with a lock button or Ctrl+Shift+K to prevent accidental sends while typing or editing long prompts; unlock to send. IME-safe and per-session.
Project Overview项目介绍
This is a purpose-built plugin for DeepSeek Harness that adds an Enter-send lock feature to the web chat composer. It can be installed directly via the DSH CLI from the public GitHub repository, or cloned and installed from a local directory. To install from GitHub, run the command dsh plugin --profile web add github:AIFireForAll/dsh-enter-lock in your terminal, and you can lock the install to a specific commit for reliable, repeatable deployments. After installation completes, you will need to restart your DSH web instance and force refresh the browser page for the plugin to take effect.
It is designed for any DSH web user who frequently encounters accidental message sends from mis-pressing Enter. This is especially common when typing with Chinese IMEs, where Enter is used to confirm candidate words, or when editing long multi-line prompts, code snippets, or structured text. The plugin adds a lock toggle button in the official input bar slot, and you can also toggle the lock state with a keyboard shortcut: Ctrl+Shift+K on Windows and Linux, or Cmd+Shift+K on macOS. Each chat session keeps an independent lock state, so switching between sessions will not alter the saved setting for any conversation.
The plugin requires DeepSeek Harness version 0.1.0-rc6 or newer, and only works with the DSH web profile on Chromium-based browsers like Chrome or Edge. It requires no external configuration, API keys, or extra dependencies, and it does not store any state outside of your browser’s in-memory cache. It does not replace the default DSH input composer, so all native DSH features like command menus, file attachments, and send queues remain fully functional. The project is released under the permissive open source MIT license, with no hidden costs or usage restrictions.
这是专为 DeepSeek Harness Web 开发的原生插件,为聊天输入框新增了 Enter 发送锁功能,解决了中文输入法选词确认、长提示词编辑时误按 Enter 提前发送消息的常见问题。插件会在输入框右下角、发送按钮旁的官方预留槽位注册一个锁形按钮,用红色填充表示锁定状态、灰色描边表示解锁状态,鼠标悬浮还会显示状态提示文字。
锁定状态下,用户仍可正常编辑输入框内容,所有会触发消息发送的 Enter 操作都会被拦截,但 Shift+Enter 换行、输入法候选词确认、@ 文件/会话候选选择等常用操作完全不受影响。锁状态会按每个会话独立保存,切换会话不会互相干扰,用户可通过点击按钮或快捷键切换状态,快捷键仅在输入框获得焦点时生效,避免误触发。
该插件要求 DeepSeek Harness 版本不低于 0.1.0-rc.6,仅支持 web 配置档,需在基于 Chromium 的现代浏览器中运行。可通过 dsh CLI 直接从 GitHub 仓库或本地目录安装,默认零配置,无需额外设置。锁状态仅保存在浏览器内存中,不会写入本地配置或发起网络请求,项目以 MIT 许可开源,无使用成本。
请帮我安装这个 DSH 插件。安装前先完成【兼容性检查 + 安全性检查】,检查通过再动手。
插件:dsh-enter-lock(AIFireForAll/dsh-enter-lock)
仓库:https://github.com/AIFireForAll/dsh-enter-lock
本站详情页:https://www.yhbd.top/plugins/aifireforall-dsh-enter-lock/
本站登记:类型 plugin · 归类 原生 DSH 插件 · 许可证 MIT · ⭐ 4 · 最近提交 2026-08-20 · 主语言 JavaScript
按下面顺序执行,每步先把结论告诉我,再进入下一步:
【1 兼容性检查】
① 我这边:DSH 版本、Node 版本、操作系统、当前 profile(web / desktop)。
② 读它的 README、package.json、插件 manifest,列出它要求的 DSH 版本 / Node 版本 / 操作系统 / 外部依赖 / 需要另外先装的运行时。
③ 逐条比对,结论只写「满足 / 不满足 / 未知」三种;不满足的给出可行替代方案。
④ 检查是否和我已装的插件冲突:命令名重复、skill / tool 重名、端口占用、重复注册的 MCP server。
【2 安全性检查】
① 仓库可信度:和上面「本站登记」是否一致;star / fork 数、创建时间、最近提交,是否归档或长期停更。
② 安装脚本:逐行看 package.json 的 preinstall / install / postinstall,以及 install.sh、setup.ps1 之类脚本。出现 curl|bash、下载后直接执行、混淆代码、访问与插件功能无关的域名,立刻停下来告诉我,不要继续装。
③ 依赖:列出新增依赖,标出无人维护、或与知名包拼写近似的可疑包(typosquatting)。
④ 权限与副作用:它会读写哪些目录、访问哪些域名、需要哪些 DSH 权限(filesystem / network / shell / clipboard 等),以及怎么卸载和回滚。
⑤ 如果它要求 sudo / 管理员权限,或权限明显超出功能所需,先停下来问我。
【3 安装】
上面两步没有「不满足」和「高危项」时才执行;用官方推荐方式安装,不要自行提权。
【4 汇报】
用表格输出:检查项 / 结论 / 依据 / 是否需要我决策。拿不准的一律写「未知」并说明要我怎么确认——不要猜,也不要替我决定。
Send this message to DSH in your current session: it verifies compatibility and security first (answering met / not met / unknown item by item) and only installs once everything checks out — it will stop and ask you if it finds a high-risk item. The box scrolls; the copy is the full prompt. CLI install commands may not be accurate across systems, so DSH is the safer route.把上面这条消息直接发给当前会话里的 DSH:它会先核对兼容性与安全性(逐条给「满足 / 不满足 / 未知」),确认没问题再安装,有高危项会停下来问你。框内可滚动,复制到的是完整提示词;安装命令不一定准确,发给 DSH 更稳。
- Only 4 stars - very few users, little community feedback星标只有 4,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项
Compatibility兼容性
- DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
- External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
- Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册
Security安全性
- Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
- Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
- curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
- Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
- Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
- Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式
Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。
Or use CLI install (for developers)或使用命令行安装(适合开发者)
CLI Install命令行安装
dsh plugin --profile web add github:AIFireForAll/dsh-enter-lock
把 AIFireForAll/dsh-enter-lock 加入你的 DSH 配置(web profile)即可启用。
READMEREADME
dsh-enter-lock
中文 | English
A DeepSeek Harness plugin that adds an Enter-send lock to the web chat composer.
DeepSeek Harness Web 插件:给聊天输入框增加一个 Enter 发送锁。
- 点击输入框旁的锁形按钮,即可锁定/解锁。
- 锁定后仍然可以正常编辑输入框中的内容,但按 Enter 不会发送消息。
- 再次点击按钮即可解锁,恢复 Enter 发送。
功能起因
DeepSeek Harness Web 的输入框默认在按下 Enter 时立即发送消息。以下场景很容易误触:
- 使用中文输入法时,按 Enter 只是为了确认候选词,但消息被直接发送;
- 编辑长提示词、代码或结构化文本时,想继续编辑,却误按 Enter;
- 输入框中的内容还没有编辑完,就意外进入了发送流程。
该插件补上了“发送前先解锁”这一层保护。
聚焦的功能
- 锁形按钮:注册在官方
conversation.input.right槽位,显示在输入框右下角、发送按钮附近;锁定状态为醒目的红色填充。 - 按会话隔离:每个会话独立保存锁状态,切换会话互不影响。
- 不替换官方输入框:只拦截键盘提交路径,保留官方输入状态机、命令菜单、队列、附件等能力。
- 中文输入法友好:IME 组合期间的 Enter 永远放行。
- 快捷键:
Ctrl+Shift+K(Windows / Linux)/Cmd+Shift+K(macOS)锁定/解锁,焦点需位于输入框卡片内。 - 与 at file(@ 文件候选)兼容:锁定状态下打开
@文件/Session 候选菜单时,按 Enter 仍可正常确认选中的文件/会话——锁只拦截真正会发送的 Enter,不干扰候选选择。
状态样式说明
| 状态 | 锁图标样式 | 含义 |
|---|---|---|
| 解锁(普通状态) | 灰色描边图标 | 当前 Enter 可正常发送消息 |
| 锁定(关锁状态) | 红色填充 + 白色锁图标 | 当前 Enter 无法发送消息 |
鼠标悬浮到锁图标上时,tooltip 会显示当前状态的提示:
- 解锁:
已解锁,当前 Enter 可正常发送消息 - 锁定:
已锁定,当前 Enter 无法发送消息
可以防止什么行为
锁定状态下,以下键盘发送行为都会被阻止:
- 普通
Enter发送; Ctrl+Enter/Cmd+Enter发送;- 其他会触发官方提交路径的 Enter 组合;
- 尚未编辑完成的输入内容被意外提交。
同时保留这些正常行为:
Shift+Enter仍然插入换行;- 输入法候选词确认的 Enter 不受影响;
@文件/Session 候选菜单(at file)、/命令菜单打开时,Enter 确认候选不受影响;- 输入框内容的编辑、复制、粘贴、附件操作不受影响;
- 鼠标点击官方发送按钮仍然可以发送——锁只防键盘误触。
快捷键
- Windows / Linux:
Ctrl+Shift+K - macOS:
Cmd+Shift+K
仅在焦点位于聊天输入框卡片内时生效:处理器需要从当前焦点元素所在的输入框卡片解析会话 id,焦点在聊天区或侧边栏时不会切换。IME 组合期间不触发,长按的自动重复(key repeat)被忽略。
环境要求
- DeepSeek Harness
0.1.0-rc.6或更新版本; webprofile;- 基于 Chromium 的现代浏览器(Chrome / Edge 均可)。
安装
方式一:从本仓库 GitHub 安装
dsh plugin --profile web add github:AIFireForAll/dsh-enter-lock
也可以显式使用 Git URL:
dsh plugin --profile web add https://github.com/AIFireForAll/dsh-enter-lock.git
建议锁定到某个 commit 以保证可重复安装:
dsh plugin --profile web add 'github:AIFireForAll/dsh-enter-lock#<commit-sha>'
方式二:从本地目录安装
git clone https://github.com/AIFireForAll/dsh-enter-lock.git
dsh plugin --profile web add ./dsh-enter-lock
验证安装
dsh --profile web --dump-config | grep dsh-enter-lock
Showing the opening section of the README — the full document lives in the repository以上为 README 开头摘要,完整文档在仓库内 · View the full README on GitHub →在 GitHub 查看完整 README →
alaliqing/claude-paper
qkycir-123/dsh-run2skill
PKUfudawei/dsh-capability-menu
houyanchao/dsh-timeline
a735624258/dsh-skill-picker
Chael-Chael/dsh-reference-anything