下面介紹 dsh-notify 插件。這是一個靜態 profile 插件,用於在輸入框右側提供提醒面板。任何插件或 AI 都能推送提醒(文本/鏈接),支持聊天式堆疊、拖拽調整大小、AI 總結,且重啓不消失。
安裝與啓用¶
將倉庫文件放入本地配置目錄,並在 package.json 中聲明依賴。
- 將倉庫內容放入
~\.dsh\profiles\web\node_modules\dsh-notify\。 - 編輯
~\.dsh\profiles\web\package.json:- 在
dependencies中添加:"dsh-notify": "1.0.0" - 在
dsh.profile.bundles中添加:"dsh-notify"
- 在
- 重啓服務器進程。新 bundle 需重啓才能生效。
核心功能¶
- 輸入框右側的提醒面板:默認位於輸入框右側,帶鈴鐺圖標及未讀數徽標。
- 消息推送:任何插件或 AI 均可推送文本或鏈接。
- 聊天式堆疊:消息從底部向上堆疊,最新消息在最下。
- 交互操作:支持雙擊展開/收起,右下角拖拽調整大小,右上角拖拽至屏幕頂端最大化。
- AI 總結:支持開啓 AI 總結功能,在推送前先總結要點。
- 外觀自定義:可自定義背景、透明度、模糊度、文字顏色、頁邊距,並提供預設管理。
使用方式¶
1. 推送提醒¶
插件提供了三種推送方式:
- 工具調用(推薦):
{ "text": "提醒內容", "link": "https://可選鏈接", "source": "來源名" }
* `text`:必填,提醒內容。
* `link`:可選,點擊跳轉的鏈接。
* `source`:可選,顯示爲「來自:xxx」。
- HTTP 接口(host 側插件):
POST /__notify/push
Body 同上。
- Client 服務(client 側插件):
ctx.get('notifyCenter').push({ text, link, source })
2. 快速重啓¶
在面板中點擊「🔄 重啓」按鈕,或通過接口調用:
POST /dsh-market/restart
注意事項¶
- 依賴要求:插件依賴宿主具備
webServer、tools、systemPrompt、conversation.input.left/right/overlay槽位。標準 dsh web profile 均包含這些槽位,缺失時會自動降級。 - CSS 注入限制:Client 側靜態注入 CSS 時,必須使用
document.createElement('style')。不要使用動態插件的styles屬性,否則會導致啓動失敗。 - License:MIT。