dsh-input-plus:DSH Web UI 輸入框的 @ 路徑引用與 /h 歷史候選

前言

在 DSH / 智能體開發中,Web UI 輸入框常需要引用當前 Session 工作區裏的文件或目錄,也需要複用之前已經成功提交過的提示詞。DSH 生態強調插件化擴展,dsh-input-plus 是其中一個 DSH Web UI 輸入框增強插件:它不替換官方輸入組件,而是在官方 @/ 輸入觸發之上,提供文件 / 目錄路徑選擇與當前 Session 用戶提示歷史候選。

下面介紹它的定位、核心功能、安裝方式與使用注意。

這是什麼

dsh-input-plus 是由 WhitePlusMS 維護的 DSH Web UI 輸入框增強插件,許可證爲 MIT。

它主要解決兩類輸入場景:

  • 通過 @ 選擇當前 Session 工作區中的文件或目錄路徑;
  • 通過 /h 打開當前 Session 中成功提交的用戶提示歷史候選菜單,並支持關鍵字過濾。

插件在草稿中保留純文本路徑引用,不讀取文件、不展開目錄、不生成目錄清單。

核心功能

@ 文件與目錄路徑選擇

在 DSH 輸入框中輸入 @,然後繼續輸入文件名、目錄名或路徑片段。候選來自當前 Session 工作區。

選擇後,草稿中會保留一個純文本路徑引用,例如:

@src/contract.ts

這裏的引用只包含路徑本身。發送消息時,插件不會讀取文件、展開目錄或生成目錄清單。

選擇目錄後,也可以繼續輸入後續指令,例如:

@src Find the code responsible for candidate ranking

官方輸入觸發流程負責候選菜單、光標和寫回行爲。插件不替換官方 textarea、發送按鈕或候選菜單,也不接管原生方向鍵行爲。

/h 輸入歷史候選

在 DSH 輸入框中輸入 /h,可以打開當前 Session 成功提交的用戶提示歷史候選菜單。

打開菜單後,可以繼續輸入關鍵字過濾候選結果:

/h

安裝與啓用

插件要求 DSH 0.1.0-rc.6 或兼容的 DSH Web profile。

通過官方 DSH profile 插件流程安裝:

dsh plugin --profile web add https://github.com/WhitePlusMS/dsh-input-plus/archive/refs/tags/v0.0.2.tar.gz

這條命令安裝的是 GitHub tag 壓縮包。GitHub tag 安裝會直接消費已提交的 lib/ Host 和 Client 產物;如果是 source-only 壓縮包,安裝會失敗。

如果你需要創建或更新安裝 tag,應先運行:

pnpm run build

並提交生成的 lib/ 目錄。

配置

插件註冊 input-plus 設置命名空間。與插件工作區索引和路徑解析相關的選項包括:

  • maxIndexDepth
  • maxIndexEntries
  • referenceRoot

這些選項用於調整插件在生成路徑候選和解析路徑時的行爲。

典型用法

下面是一組可直接在 DSH Web UI 輸入框中復現的用法。

1、輸入 @,然後繼續輸入文件名、目錄名或路徑片段。

@

候選來自當前 Session 工作區。

2、從候選中選擇後,草稿保留純文本路徑引用:

@src/contract.ts

3、選擇目錄後,可以繼續輸入指令:

@src Find the code responsible for candidate ranking

4、輸入 /h,打開當前 Session 成功提交的用戶提示歷史候選菜單:

/h

5、繼續輸入關鍵字,對歷史候選進行過濾。

適用場景與注意

dsh-input-plus 適合在 DSH Web UI 中需要快速引用當前 Session 工作區路徑、或複用歷史提示詞的用戶。

使用注意:

  • 插件不替換官方 textarea、發送按鈕或候選菜單;
  • 插件不接管原生方向鍵行爲;
  • 路徑引用在草稿中是純文本,發送時不讀取文件、不展開目錄、不生成目錄清單;
  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證;
  • 當前許可證爲 MIT。

DSH 社區目錄是獨立站點,與 DeepSeek / 幻方無官方從屬關係,不要將其理解爲官方應用商店。

鏈接

GitHub 倉庫:https://github.com/WhitePlusMS/dsh-input-plus

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜