DSH(DeepSeek Harness)採用插件化架構。在 Web Profile 下,直接在聊天窗口編寫複雜的 PPT 生成流程會面臨提示詞管理、會話上下文截斷和權限控制等問題。dsh-ppt-maker 插件通過在 composer 菜單中增加一個入口,將一份自包含的 58KB 編排提示詞封裝進插件內部,觸發一次消息發送即可啓動全流程。
核心功能¶
- 菜單入口:在輸入框左下角
+菜單中添加PPT製作選項。 - 觸發機制:點擊後僅發送一條啓動消息,不修改會話權限,不開啓宿主 HTTP 路由。
- 全流程編排:Agent 接收到提示詞後,依次執行環境檢查、需求確認、風格選擇、初稿生成、圖形/圖像處理、圖表動效及 PPTX 導出。
- 確定性管線:內置 HTML 到 PPTX 的轉換腳本,支持渲染、生成和真機驗收三道校驗。
- 自包含:提示詞文件隨插件打包,不佔用聊天上下文,工作目錄爲空時亦可運行。
安裝¶
確保已安裝 DSH 桌面端或 Web Profile(需包含 dsh-client-ui-commands 與 dsh-client-ui-conversation)。
使用官方命令安裝:
dsh plugin --profile web add github:kitterfast/dsh-ppt-maker
安裝完成後,插件會自動掛載。如需手動校驗或開發,需本地環境滿足 Node.js ≥ 20。
使用方法¶
- 在 DSH 界面點擊輸入框左下角的
+按鈕。 - 在彈出的菜單中選擇
PPT製作。 - 在子選項中選擇:
- A. 使用 AI 生圖:調用 Seedream(需火山方舟賬號),成本約 0.3 元/張。
- B. 不使用 AI 生圖:使用程序化圖形/SVG,零成本且斷網可用。
- 插件發送一條 kickoff 消息,預答檢查點 0。之後流程會停在檢查點 ①(需求)、②(風格)、③(導出)等待確認。
工作流與權限¶
全流程涉及無頭瀏覽器渲染、工作區臨時目錄寫入等操作,默認處於受限沙箱環境。
- 一次性確認:插件首次啓動時,Agent 會請求發送
/permission danger-full-access。這是爲了繞過每一步操作的安全彈窗。發送該指令後,後續流程不再逐條打斷。 - 安全邊界:插件本身不會修改會話權限,必須由用戶手動發送
/permission指令。若不發送,Agent 會自動回退到安全的無外部寫入路徑(Checkpoint A0/7B)。
HTML → PPTX 確定性管線¶
該插件包含一套自帶的轉換管線(v2.0.0),用於解決 Agent 現場編寫轉換器導致的不穩定問題。
- 渲染:無頭瀏覽器生成真 Alpha 圖層。
- 生成:按形狀 ID 定位,寫入原生 PowerPoint 時間軸。
- 驗收:檢查結構並逐頁進行像素級對比。
node scripts\deck\deck-render.mjs build\deck.config.json
node scripts\deck\deck-to-pptx.mjs build\deck.config.json
node scripts\deck\deck-verify.mjs build\deck.config.json
注意:
* 文字採用柵格化處理,無法在 PPT 中直接編輯,已寫入備註頁或作爲圖片替換。
* 無限循環動效(CSS infinite)無法映射到 PowerPoint 時間軸,管線會檢測並警告。
設計邊界¶
- 不修改會話權限:安全策略由用戶控制。
- 不開宿主 HTTP 路由:插件不向用戶客戶端暴露未認證接口。
- 不往聊天裏塞提示詞全文:提示詞作爲插件資源文件存在,避免版本管理失效。
- 不發送 Composer 通知:僅通過聊天窗口可見狀態交互。