DeepSeek Harness Hub
← 返回列表

laoshi1991/dsh-shortcuts

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

dsh-shortcuts — 输入框快捷短语插件

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/17 · 已提供中文文档

DeepSeek Harness (dsh) 网页编辑器快速提示短语插件——彩虹键帽标签,一键填充草稿

综合分
28.3
GitHub 分
28.3
用户评分
★ Stars
2
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add laoshi1991/dsh-shortcuts
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/19(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-shortcuts — 输入框快捷短语插件

为 DeepSeek Harness(dsh)Web 界面的输入框提供「快捷短语 / 快捷标签」功能:在输入卡片工具行的左侧显示一排彩虹色键盘键帽样式的短语标签。

功能

- 一键填充:点击标签 → 输入框草稿被替换为该短语,焦点回到输入框、光标落在末尾(不自动发送)
- 悬停删除:鼠标悬停标签时,右上角出现小 ×,点击删除该短语
- 快速新增:行尾 + → 行内小输入框;Enter 提交、Esc 取消、失焦时有内容则提交、失焦为空则取消
- 数量与长度限制:最多 8 个短语、每个最多 7 个字符
- 彩虹键帽配色:红橙黄绿青蓝紫粉 8 色循环,带荧光与按下动效,深浅主题均可用
- 持久化:短语保存在浏览器 localStorage(键 dsh:quick-phrases),跨会话、跨标签页共享
- 默认短语:首次使用按界面语言给出「继续 / 你还在吗」(英文 Continue / Still there?);一旦你增删过短语,以保存的列表为准(删空也保持为空)
- 中英文界面:提示文案随 dsh 语言设置(quickPhrases 词表命名空间)

安装到 web profile

1a. 直接从 GitHub 安装(dsh plugin 直接转发给 profile 目录下的 pnpm,支持任意 pnpm 依赖规格)
dsh plugin --profile web add github:laoshi1991/dsh-shortcuts

1b. 或克隆后本地安装(在本插件源码目录执行)
git clone https://github.com/laoshi1991/dsh-shortcuts && cd dsh-shortcuts
dsh plugin --profile web add "file:$(pwd)"

2. 在 ~/.dsh/profiles/web/cordis.patch.yml 追加启用项:
- insert:
- id: dsh-shortcuts
name: 'dsh-shortcuts'

3. 重启 dsh web 生效

修改 client.js 后重新安装一次即可(file: 依赖是拷贝安装,不会自动跟随源码):

dsh plugin --profile web update dsh-shortcuts   # 或重新 add,然后重启 dsh web

卸载:删除 cordis.patch.yml 中的 insert 项(可选:dsh plugin --profile web remove dsh-shortcuts),重启即可恢复原状。

兼容性

- 在 @deepseek-ai/dsh 0.1.0-rc.6 上开发并验证。依赖 web 外壳的 client 插件加载机制与 conversation.input.left 插槽;rc 系列版本间接口可能变动,跨版本使用请以实际验证为准。
- 无运行时依赖、无需构建:client.js 即浏览器侧产物,安装后即可用。

开发

node test/smoke.mjs   # 冒烟测试:自动从全局 dsh 安装解析 react;也可设 DSH_ROOT 指向 @deepseek-ai/dsh 包目录

- scripts/restart-web.sh:等待旧 dsh web 退出后原位重启的开发脚本,可用 DSH_BIN / DSH_WEB_CWD / DSH_WEB_PORT 环境变量覆盖(默认:PATH 上的 dsh、$HOME、3080)。

实现说明

- 浏览器侧(client.js,即构建产物本身,无需构建)向外壳模块加载器注册一个模块:
- 通过 ctx.locale.register("quickPhrases", …) 注册词表;
- 通过 ctx.slots.inject("conversation.input.left", …) 在 ui-conversation 声明的输入工具行插槽上注册列表条目(id: quick-phrases,order: 100);
- 组件经框架标准工具包拿到 inputActions.setDraft()(输入状态机唯一公开草稿写入路径)与 t 词表座位,不触碰任何私有接口;
- 样式以带 data-plugin-css 的  标签注入,色彩用固定 rgba、背景/边框用 --dsw-* 设计令牌,适配深浅主题。
- 宿主侧(lib/index.js)为无操作插件,仅满足加载器每个条目一个入口的约定。
- package.json 的 dsh.client 声明(platform: web、immediately: true)让宿主在启动图中发现并在启动时拉取浏览器半包。

已知边界

- 短语点击是「替换整段草稿」,不会追加到已有内容后面。
- 标签仅在已有会话的输入卡片中显示(空工作区 hero 状态无草稿,不显示)。
- 会话运行中标签仍可点击:填入的短语像手打内容一样进入排队 / steering 流程。
- 多个浏览器窗口同时编辑短语时,后写者覆盖(无跨窗口同步,与 localStorage 语义一致)。

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群