dsh-generative-ui:讓 DeepSeek Harness 用 live TSX 回答

前言

在 DSH 的智能體會話裏,agent 通常以純文本回答。當回答需要以界面形式呈現時,純文本會顯得不夠直接。dsh-generative-ui 是面向 DeepSeek Harness 的客戶端插件:agent 輸出 TSX,dsh web 負責即時渲染。

這是什麼

dsh-generative-ui 的包名是 dsh-generative-ui,當前 package.json 版本爲 0.0.2,許可證爲 MIT,維護者爲 CNSeniorious000。

它讓 agent 用 live React interface 代替純文本回答,並在模型仍輸出時流式渲染。插件包含兩端:

  • lib/index.js(node 端):注入 system-prompt、註冊 generative-ui skill、提供 compiler wasm 和 canvas 文件讀取路由。
  • lib/client.js(web 端):接管 ui4a/tsx 代碼塊,在瀏覽器內編譯 TSX,並掛載 canvas panel。

核心功能

  • Inline 渲染:ui4a/tsx fenced block 會在回覆段落之間就地渲染。
  • Canvas 渲染:ui4a/canvases/<id>.ui4a.tsx 文件會在對話旁的面板打開,並可跨輪次保留。
  • 流式渲染:生成的組件在模型繼續輸出時持續渲染。
  • 依賴與主題:生成的代碼可在渲染時從 esm.sh 解析 npm 導入,共享宿主單個 React 實例,並使用應用設計令牌適配明暗主題。
  • 提示分層:src/prompt.ts 每次請求攜帶觸發、圍欄語法、canvas 路徑和顏色令牌;src/skill.ts 按需加載,並承載判斷與佈局。

安裝與啓用

從 registry 安裝:

dsh plugin --profile web add dsh-generative-ui

如需預覽未發佈 commit:

dsh plugin --profile web add https://pkg.pr.new/CNSeniorious000/dsh-generative-ui@main

如在本地 checkout 中開發:

dsh plugin --profile web add link:/path/to/dsh-generative-ui

安裝後啓動 dsh web。如果 dsh web 已經在運行,需要重啓,因爲插件在啓動時掛載,且沒有熱更新。

關於版本:從 npm registry 安裝會使用 caret;README 示例說明 ^0.0.1 在 0.0.x 版本下只匹配 0.0.1。如需補丁版本,可改爲 ~0.0.1。該插件發佈來自 CI over OIDC,tarball 帶有 npm provenance。

典型用法

1、Inline 用法:讓 agent 在回覆中輸出 ui4a/tsx fenced block,內容會在回覆段落之間就地渲染。

2、Canvas 用法:讓 agent 生成 ui4a/canvases/<id>.ui4a.tsx 文件,內容會在對話旁的面板打開,並跨輪次保留。

3、如果模型沒有生成 UI:先檢查 agent preset。minimal 預設不會啓用 skill 工具;應使用 standard,或複製預設並加回 tool-skill。

4、本地開發:

bun install
bun run check
bun run build

適用場景與注意

這個插件適合在 dsh web 中需要讓 agent 生成 live 界面,而不是隻返回純文本的會話。

插件配置聲明 client 平臺爲 web,並注入:

  • @deepseek-ai/dsh-client-runtime
  • @deepseek-ai/dsh-client-locale
  • @deepseek-ai/dsh-client-ui-conversation

使用前注意:

  • 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證。
  • 許可證爲 MIT,當前 package.json 版本爲 0.0.2。
  • 生成的代碼會依賴 npm 導入,並在渲染時從 esm.sh 解析。
  • 如果會話使用 minimal preset,skill 工具不會被啓用,模型不會被告知該格式;改用 standard,或複製預設並加回 tool-skill。
  • 插件沒有熱更新,新增安裝後需要重啓 dsh web。

結尾

dsh-generative-ui 的價值在於把 agent 回答從純文本擴展到可流式渲染的 TSX 界面,並提供 inline 與 canvas 兩種呈現位置。

GitHub:https://github.com/CNSeniorious000/dsh-generative-ui

插件線索給出的目錄頁:https://www.skillhub.cn/plugins/CNSeniorious000/dsh-generative-ui(該 URL 未出現在已抓取 README/package.json 正文中)。

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

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

小夜