跳过主要内容
X

dsh-prompt-deck

xuguangyao/dsh-prompt-deck

把每次都得重打的那几句话做成输入框上方的胶囊。它们按使用次数自动重排,带 {{占位符}} 的会先弹框让你填,填完才插入草稿。点击是追加而不是替换,写到一半的草稿不会被冲掉。抽屉里可以搜索、分组、编辑,数据存在 Host 侧 JSON 文件里,可以直接手改。

安装

dsh plugin --profile web add github:xuguangyao/dsh-prompt-deck

README

提示词牌组

把常用的那几句话做成 DeepSeek Harness 输入框上方的一排胶囊,点一下就填进输入框。

输入框上方的提示词胶囊行

每天都要重复敲的句子——「先给方案再动手」「帮我看看这个项目的结构」「这个报错帮我定位原因」——每次都得重新组织一遍措辞。这个插件把它们变成一排按钮,连带着占位符,让你只填每次变化的那部分。

功能

  • 常驻胶囊:最常用的 6 条一直摆在输入框上方,按使用次数和最近使用时间排序
  • 一键填入:点胶囊把内容写进当前草稿;草稿里已经有字就另起一行追加,不会覆盖
  • 占位符:内容里写 {{关注点}} 这样的标记,插入前会弹框让你逐个填;留空则保留原样
  • 抽屉:点胶囊行尾部的 + 打开,支持搜索、按分组浏览(全部 / 代码 / 写作 / 分析 / 我的)
  • 增删改:抽屉里每条都能插入、编辑、删除,删除有二次确认
  • 数据在本地:所有内容就是一个 JSON 文件,可以自己编辑、备份、同步

安装

已在 npm 发布为 @xgy-lab/dsh-prompt-deck。在 DSH 左侧栏的「插件」页选「安装 bundle」,填这个包名即可。

也可以从源码安装:

  1. git clone https://github.com/xuguangyao/dsh-prompt-deck
  2. 打开 DSH 左侧栏的「插件」页,选「安装本地插件 / bundle」,填入 clone 下来的目录
  3. 返回结果里 application 字段为 applied 表示已生效;新建一个会话,输入框上方就会出现胶囊行

装完如果胶囊行没出现,先刷新页面(Ctrl+F5)。

使用

  • 点胶囊:内容进输入框。带占位符的会先弹框。
  • 点 +:打开抽屉。搜索框可以按标题和内容过滤,上面的 tab 按分组筛选。
  • 新建 / 编辑:抽屉里的「+ 新建」;改某一条点它右侧的 ⋯。
  • 占位符:新建时在内容里写 {{变量名}},保存后卡片上会标出识别到的占位符。
  • 关闭抽屉:按 Esc 或点面板外的空白处。

数据存在哪

~/.dsh/prompt-deck/snippets.json

Windows 上对应 %USERPROFILE%\.dsh\prompt-deck\snippets.json。

就是一个普通 JSON 数组,可以直接看、直接备份、直接手改,改完刷新页面即可。

想换存放位置,在 profile 的 cordis.patch.yml 里给这一行加 config.dataDir:

- insert:
    - id: prompt-deck
      name: '@xgy-lab/dsh-prompt-deck'
      config:
        dataDir: D:/work/prompt-deck

注意这一行 config 是整体替换的,改的时候别把其他字段漏掉。

兼容性

在 DSH 0.2.1-rc.3 上开发和验证。

插件只用到两个公开面:conversation.input.dock 这个挂载点,以及 conversation.input.shell(sessionId).setDraft(text) 往输入框写字。没有 require 任何宿主 UI 包,样式只用 --dsw-alias-* 主题变量,所以明暗主题都会自动跟随。宿主改版时最坏的情况是胶囊行不再出现,不会影响会话本身。

开发

文件结构、踩过的坑、挂载点的选择理由、发布到市场的流程,都放在 DEVELOPING.md。

相关插件