用 dsh-director-toolkit 把粗糙 3D 想法拆成可開工的鏡頭單

前言

做產品可視化、作品集靜幀或短循環時,卡住的往往不是「會不會建模」,而是 brief 還半成形:只有一句參考備註、一段作品集文案,或者一個還沒想清楚的鏡頭。直接打開 Blender、Three.js、Houdini 或 Cinema 4D,鏡頭焦距、主體佔比、主燈方向和材質層次很容易一起糊掉。智能體倒是能寫一段很長的提示詞,但很少交得出一份能對着開工的鏡頭單。

DeepSeek Harness(dsh)的設計原則是「一切皆插件」:模型、工具、技能、會話、沙箱和 UI 都可以在配置層替換,不必改框架源碼。官方倉庫在 deepseek-ai/deepseek-harness,目前仍是 developer preview。社區目錄 deepseek-harness-plugin.com 是獨立收錄站,和 DeepSeek / 幻方沒有官方從屬關係,不能當成官方應用商店。

dsh-director-toolkit 就把這件事做成 DSH 工具:把一句粗糙想法拆成鏡頭、燈光、材質、軟件相關的渲染建議,以及從灰模開始的五步製作順序。本文按目錄詳情頁、GitHub README / package.json / src/index.js / src/engine.js,以及官方 Harness 倉庫交叉覈對後整理。

這是什麼

dsh-director-toolkit 是面向 DeepSeek Harness 的開發與運行時插件,由 lhmd 維護,npm 包名爲 @lhmd/dsh-director-toolkit,當前倉庫版本爲 0.1.0,許可證 MIT。目錄頁與 GitHub 倉庫在覈即時均顯示 7 星,主要語言爲 JavaScript。

它解決的問題很具體:給 3D 藝術家、技術美術和創意編程一個可檢查的方向包(direction pack),而不是直接生成網格或成片。目錄頁的一句話是「粘貼一個半成形的想法,讓它變成真實資產」;倉庫 README 寫得更準確——輸入粗糙 brief、參考備註或作品集文案,輸出適用於 Blender、Three.js、Houdini 或 C4D 的製作方向。展示頁上的短片和分鏡,是按這份方向在 Blender 裏搭出來的示例,插件本身不輸出 .blend 或渲染文件。

倉庫遵循 DSH Profile Bundle 結構:cordis.patch.yml 掛載包,src/index.js 導出 apply(ctx) 並註冊工具,src/skill.js 通過 ctx.skills.register(...) 註冊運行時 Skill。倉庫聲明沒有 .codex-plugin 目錄,也沒有文件型 Skill 文件夾。

核心功能

插件分三層,展示頁概括爲「一個聚焦工具、一次可選的創意潤色、一套給生產用的運行時技能」。

1、scene_director 是本地、確定性的基礎工具。源碼裏 generatedBy 標記爲 dsh-director-toolkit/local-heuristics:從 brief 抽出主體句和關鍵詞,再填入結構化鏡頭單。不調用模型,也不需要 API key。工具參數在 src/index.js 裏寫死了範圍:

  • brief:必填,3D 想法或參考描述,默認上限 12000 字符;
  • languageauto / zh / en / bilingual,默認雙語;
  • softwareblender / threejs / houdini / c4d,默認 Blender。

一次調用會返回鏡頭與構圖、燈光、材質、幾何、動效、針對軟件的渲染設置、從灰模開始的 5 步製作順序、negative prompt、標題、雙語展示文案、標籤和風險提示。schemaVersion0.1

2、scene_director_v4 是可選的服務端適配器。它先跑一遍本地計劃,再把 brief 和本地結果交給模型做創意導演潤色,默認模型爲 deepseek-v4-pro,請求發往 https://api.deepseek.com/chat/completions。密鑰只從服務端環境變量 DEEPSEEK_API_KEY 讀取;倉庫 SECURITY.md 明確要求不要把密鑰寫進網頁、README、截圖、聊天或日誌。cordis.patch.yml 裏可用 enableModel 控制是否註冊這個工具,源碼默認開啓。

3、運行時 Skill 名稱是 director-toolkit。它告訴 Agent:用戶在做 3D 場景、渲染、動效研究、產品可視化、Blender / Three.js / Houdini / C4D 概念或作品集帖時,應先用 scene_director 做確定性初稿;用戶明確要求模型潤色時再用 scene_director_v4。Skill 還按軟件給出側重點:Blender 交可拍攝的場景計劃,Three.js 強調瀏覽器可承受的幾何與材質成本,Houdini 強調程序化控制和緩存,C4D 強調美術指導和渲染交接。brief 含糊時,只做最小可辯護的假設,並寫進結果,而不是藏起來。

軟件相關的渲染建議在本地引擎裏也有分支。Blender 默認先用 Eevee 鎖定構圖,再用 Cycles 補反射和接觸陰影;Three.js 建議 ACES 色調映射,先用 1024px 方圖驗證構圖;Houdini 先做低分辨率體積與程序細節預覽,再輸出 2048px 方圖並緩存步驟;C4D 則先鎖定相機與燈光,再提高採樣。

倉庫還帶一套可覈對的示例,而不是隻給截圖。GitHub Pages 展示頁在 lhmd.github.io/dsh-director-toolkit

  • Blender 短片「獨眼玄瓷」(Cyclopean porcelain),720×720、約 6 秒,三拍分別是青色輪廓出現、獨眼轉向鏡頭、聖物從底座升起。源場景在 examples/cyclopean-porcelain.blend,搭景腳本在 scripts/blender-script-demo.py
  • 四章分鏡:鉻色軌道、記憶花園、粗糲檔案館、布料機器人,方向數據在 docs/examples/scene-suite.json,由 scripts/render-case-videos.py 渲染。

安裝與啓用

目錄詳情頁給出的安裝命令如下,以頁面原文爲準:

dsh plugin add github:lhmd/dsh-director-toolkit

dsh CLI 會從 GitHub 解析插件並安裝到當前配置。如需可復現安裝,目錄頁建議固定 commit 哈希:

dsh plugin add github:lhmd/dsh-director-toolkit#commit

#commit 換成倉庫裏實際的提交哈希。目錄頁同時寫明:插件以當前 dsh 進程的權限運行,安裝時可能執行代碼;安裝前應檢查源代碼倉庫和許可證。

倉庫 README 另外給出了本地檢出後寫入 Web profile 的寫法,適合先 clone 再覈對源碼:

npm install -g @deepseek-ai/dsh
dsh plugin --profile web add /absolute/path/to/dsh-director-toolkit
dsh web

cordis.patch.yml 把插件掛在 dsh-base 之後,id 爲 director-toolkit,默認配置是 maxInputChars: 12000defaultLanguage: bilingualdefaultSoftware: blender。peer 依賴聲明瞭 @deepseek-ai/dsh-skill@deepseek-ai/dsh-toolscordis

如果要啓用可選的 V4 潤色,只在 Harness / 服務端環境設置密鑰,不要放進瀏覽器頁面:

export DEEPSEEK_API_KEY="replace-with-a-rotated-key"

基礎本地 demo 不需要 API key。倉庫提供的開發命令包括 npm testnpm run check:releasenpm run check:packagenpm run demo

典型用法

官方 demo brief 在 examples/demo-input.md,大意是:半透明陶瓷生物、一隻過大的眼睛、浮在黑色底座上方,安靜、偏貴、略怪,只用一盞青色燈勾輪廓,目標是 Blender 方圖英雄鏡頭加短循環。

在倉庫根目錄可以直接跑本地導演:

npm run demo

等價於調用 CLI 腳本 scripts/director-toolkit.mjs。幫助信息給出的用法是:

dsh-director-toolkit --brief "半透明陶瓷生物,一隻過大的眼睛,浮在黑色底座上方" --language zh --software blender

從文件讀入、並輸出 JSON:

cat examples/demo-input.md | dsh-director-toolkit --stdin --software blender --json

--json 會打印完整結構化結果;不加該參數時,終端按區塊輸出創意方向、鏡頭、構圖、燈光、材質、幾何、動效、渲染設置、negative prompt、展示文案、image prompt、標籤,以及編號後的 5 步製作清單。若 riskFlags 非空,還會多出「發佈前檢查」一節,例如 brief 裏出現數字/價格、絕對化表述,或缺少具體材質、顏色、形狀線索。

裝進 Harness 之後,Agent 側對應的是工具名 scene_director / scene_director_v4。本地工具會先寫一句不可誤解的主體描述,再用基礎體塊做灰模,鎖定約 50mm 鏡頭、主燈方向和主體佔比,只加一個記憶點細節,最後輸出方圖和 6 秒循環。這些步驟來自引擎模板,用來把「想法」收成可執行順序,而不是代替你在 DCC 裏建模。

倉庫還有一個可改的本地工作臺,目錄是 playground/

python3 -m http.server 4175 --directory playground

瀏覽器打開該目錄即可對照展示頁結構。要看已經渲好的參考,直接打開 GitHub Pages 展示頁即可。

適用場景與注意事項

適合把這個插件加進 profile 的情況大致有這些:

  • 作品集或產品可視化只有一句 caption,需要先定鏡頭、燈光和材質,再打開 DCC;
  • 技術美術要把同一套 brief 分給 Blender 靜幀、Three.js 網頁研究和 Houdini 程序化流程;
  • 需要中英雙語展示文案、標籤和 negative prompt,方便發作品集,但不想讓模型憑空編產品參數。

使用時有幾條邊界需要看清楚。

第一,它交的是鏡頭單,不是資產文件。灰模、材質、渲染仍要在 Blender、Three.js、Houdini 或 C4D 裏完成。展示頁短片是作者按方向包搭出來的示例,不能理解成「運行插件就會吐出同樣的成片」。

第二,scene_director 是本地啓發式規則,同一類 brief 會落到相近的 45° 英雄視角、柔光主燈、方圖輸出等模板上。它的價值是結構穩定、可檢查、不依賴網絡;若 brief 本身很空,輸出也會偏模板。需要更貼 brief 的措辭時,再用 scene_director_v4,並且仍然以本地計劃爲 grounding。

第三,Skill 要求方向必須落在用戶 brief 上,不要編造產品宣稱、品牌事實、受版權保護的角色、尺寸或渲染結果。brief 裏如果已經寫了數字或絕對化措辭,本地引擎會打風險標記,發佈前需要人工覈對。

第四,插件以當前 dsh 進程的權限運行,安裝時可能執行代碼。安裝前應閱讀 GitHub 倉庫 源碼和 MIT 許可證;密鑰只放服務端環境變量,泄露後應輪換。DeepSeek Harness 仍在快速迭代,存在兼容性破壞變更,接入前以當前 dsh 文檔爲準。

小結

dsh-director-toolkit 把「半成形的 3D 想法」收成一份能對着開工的方向包:本地 scene_director 給出可復現的鏡頭單,可選的 scene_director_v4 用 DeepSeek V4 Pro 做潤色,director-toolkit Skill 負責在 Agent 對話裏判斷何時該導演一場 Blender、Three.js、Houdini 或 C4D 的 brief。

目錄頁:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-director-toolkit/

GitHub:https://github.com/lhmd/dsh-director-toolkit

展示頁:https://lhmd.github.io/dsh-director-toolkit/

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

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

小夜