dsh-showme-html:在對話中展示 HTML 並回傳反饋

DSH(DeepSeek Harness)是插件化的開發平臺。在構建包含視覺輸出的 Agent 工作流時,Markdown 文本會丟失視覺信息,導致用戶難以區分變體,且反饋過程容易丟失語義。dsh-showme-html 插件解決了這一問題,它允許 Agent 將工作區中的 HTML 頁面渲染爲對話卡片,並將用戶在頁面上的表態以結構化文本回傳給 Agent。

核心能力

該插件包含以下核心功能:

  1. 工具 show_html:Agent 調用此工具展示 HTML 頁面,參數爲 path(路徑)、title(標題)、note(備註)。頁面正文以文件形式存在,便於迭代和留檔。
  2. 鏡像讀路由:提供 GET /api/showme/raw/<sessionId>/<工作區相對路徑> 接口。頁面內的相對引用(如 <img>、樣式文件)可正常工作,同一地址即爲“在瀏覽器打開原文件”。
  3. 對話內卡片:展示標題、路徑、刷新、全屏、在瀏覽器打開等操作。非可見的歷史卡片不會持有活躍的 iframe。
  4. 畫面內全屏:通過框架級浮層實現,按 Esc 鍵退出,滾動位置不丟失。
  5. 反饋兩條路:頁面通過 postMessage 將表態內容一鍵填入對話輸入框,或通過 POST /api/showme/feedback 追加到反饋文件。
  6. 四套預設樣式:包含 soft(柔和現代)、swiss(瑞士國際主義)、brutal(新野獸派)、blueprint(藍圖/工程圖)。
  7. 回執體檢:展示前掃描頁面,檢查是否存在可點名的 ID、postMessage 回傳配置以及相對資源引用。
  8. skill showme-report:教 Agent 如何編寫頁面,包括樣式引入、回執契約和交換格式。

安裝

通過命令行安裝插件:

dsh plugin --profile web add "github:liceses/dsh-showme-html"

安裝後需重啓 dsh web 服務以生效。

典型用法

1. 編寫 HTML

在 Agent 生成的內容中引入預設樣式:

<link rel="stylesheet" href="presets/swiss.css">

2. 調用工具

Agent 調用 show_html 工具:

show_html({
  path: ".dsh/showme/review.html",
  title: "設計評審",
  note: "挑一個變體"
})

3. 查看與反饋

頁面會作爲卡片出現在對話中。用戶可在頁面上進行表態,點擊“填入輸入框”即可將文本追加到對話輸入框。

說明

  • 無常駐服務:不新增獨立服務,依賴宿主的 DSH web server。
  • 目錄位置:頁面默認落在 .dsh/showme/ 隱藏目錄,不污染源碼樹。
  • 樣式與模板:預設樣式非強制,若需評審特定系統的視覺,應使用官方調色板。模板文件在首次 show_html 時創建(create-only)。
  • 文件命名:頁面文件名必須與數據文件名同名(如 mypage.html 和 mypage.data.js)。
  • 離線可用:預設樣式自包含,無外鏈字體和 CDN,斷網可用。

生態

該插件遵循 MIT 許可證,由 liceses 維護。DSH 理念是“一切皆插件”,社區目錄提供插件索引。更多細節可查看:

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

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

小夜