前言¶
在 DeepSeek Harness(DSH)裏做遊戲或工具類 Unity 項目時,智能體往往只能改磁盤上的腳本和資源,無法直接感知當前場景層級、Play 模式狀態或 Console 輸出。若集成方案只覆蓋 Unity 6,而團隊仍固定在 2022.3 LTS,就會多一層版本門檻。
下面介紹維護者 snakeazh 發佈的工作流類插件 dsh-unity-2022:通過隨插件自帶的本地 bridge 包,把運行中的 Unity 2022.3 編輯器暴露爲一組 unity_* 工具,供 harness 中的 agent 像調用普通工具一樣讀改場景、切 Play、截圖、看日誌、打構建並在編輯器進程內執行 C#。
這是什麼¶
插件 npm 包名爲 dsh-unity-2022(當前版本 0.1.0,MIT 許可證)。簡介與 README 一致:在 harness 側驅動 Unity 2022.3 Editor——場景與 GameObject、組件與序列化字段、Play 模式、Console、截圖、構建以及編輯器內 C# 執行,均經 bundled 的 loopback bridge 完成。
與「只支持 Unity 6」的部分編輯器集成不同,本插件自帶 bridge,在未額外安裝包、無網絡訪問的前提下,面向原版 Unity 2022.3 工作;README 還說明 unity_eval 路徑不觸發 domain reload。
插件行由 cordis.patch.yml 寫入 harness 配置(條目 id 爲 unity-2022);bridge 包則落在每個 Unity 工程的 Packages/com.dsh.unity-bridge(embedded package,可進版本庫)。
環境與前提¶
| 項 | 說明 |
|---|---|
| Unity Editor | 參考版本 2022.3.62f3(international build);bridge 僅上報版本(isRequiredUnityVersion),其他 2022.3 補丁(README 提到曾測 2022.3.46f1、2022.3.62f1c1)同樣可用且不會被攔截 |
| Harness | 任意提供 tools 服務的 DSH 構建 |
| 平臺 | Windows(macOS/Linux 編輯器會被檢測,README 標明未充分測試) |
| Node(插件包) | package.json 要求 ^22.19.0 \|\| >=24 |
核心功能¶
README 將能力歸納爲:讀改場景、運行 Play 模式、截圖、讀取 Console、構建 Player、在 Editor 進程內執行 C#。對應暴露的工具(節選,均以資料表格爲準)如下。
| 工具 | 作用 |
|---|---|
unity_status |
可達編輯器、版本、Play/編譯狀態、活動場景、選中對象、已安裝 Editor 構建等 |
unity_open |
安裝 bridge 並啓動編輯器,等待 bridge 就緒 |
unity_install |
僅把 bridge 裝進工程 Packages,不啓動(適合提交到倉庫) |
unity_commands / unity_command |
列出 bridge 命令表 / 用原始參數執行任意 bridge 命令 |
unity_hierarchy |
場景樹(路徑、實例 id、激活狀態,可選組件名) |
unity_find |
按名稱、組件類型、Tag、Layer 查找 GameObject |
unity_inspect |
Transform、激活狀態及各組件序列化字段(類似 Inspector) |
unity_create |
創建空物體或 Primitive,可設父級、變換、Tag、Layer、碰撞體等(可 Undo) |
unity_add_component |
添加組件並可同次寫入屬性 |
unity_set_property |
按屬性路徑或名稱寫入序列化字段(資料中表格在此截斷,其餘 unity_* 以倉庫 README 完整列表爲準) |
目錄頁簡介提到約 20 個 unity_* 工具,經 bridge 安裝到工程中;具體名稱與參數以 GitHub README 的 Tools 章節爲準。
多工程路由( precedence ):調用參數裏的 projectPath → 插件配置默認工程 → agent 工作目錄落在某 Unity 工程內 → 僅一個 Editor 在跑。多個 Editor 且未指定 projectPath 時會失敗並返回 ambiguous_editor 及可達工程列表。
安裝與啓用¶
官方 README 給出的安裝方式爲克隆倉庫後通過 plugin_manager 安裝 bundle(勿自行拼接未在文檔出現的 dsh plugin add 命令):
git clone https://github.com/snakeazh/dsh-unity-2022
plugin_manager install_bundle .\dsh-unity-2022
安裝後插件行 unity-2022 由 patch 寫入;下一輪 harness 對話中即可看到工具。卸載:plugin_manager remove_bundle dsh-unity-2022。
插件在 awesome-dsh-plugin 審覈隊列中;條目合併後也可從 DSH 插件目錄一鍵安裝。社區目錄由獨立生態維護,與 DeepSeek / 幻方無官方從屬關係,不宜表述爲「官方應用商店」。
DSH 側插件裝在 profile(一份 harness 共用);bridge 在 project(每個 Unity 工程一份)。給任意工程接入 bridge 可任選:
unity_open帶projectPath——安裝、啓動並等待;unity_install帶projectPath——只安裝包,便於提交 Git;- 手動複製插件內
unity-package/到<project>/Packages/com.dsh.unity-bridge。
典型用法¶
先做 unity_open 打開目標工程;若 Editor 已打開且只有一個實例,其餘工具通常無需再傳 projectPath。Quick start 示例(路徑按本機修改):
unity_open { "projectPath": "D:\\Work\\MyGame" }
unity_status {}
unity_hierarchy { "includeComponents": true }
unity_create { "name": "Crate", "primitive": "Cube", "position": [0, 0.5, 0] }
unity_add_component { "target": "Crate", "type": "Rigidbody", "properties": { "m_Mass": 12 } }
unity_screenshot { "view": "game", "width": 1280, "height": 720 }
unity_open 會寫入 Packages/com.dsh.unity-bridge,按工程 ProjectVersion.txt 選擇 Hub 裏匹配的 2022.3 安裝(README 說明本地多個 2022.3 構建均可候選),版本與參考 build 不一致時會上報而非強制攔截。
適用場景與注意¶
適合:已在 DSH 中用 agent 改代碼,又需要在 Unity 2022.3 LTS 上自動化查看場景、試 Play、抓截圖或跑編輯器內腳本的工作流;Windows 爲主力環境時與 README 的測試範圍一致。
注意:
- 插件以當前 DSH 進程權限運行,安裝前請閱讀 GitHub 源碼 與 MIT 許可證,確認 bridge 寫入工程目錄的行爲可接受。
- bridge 爲本地 loopback,README 強調無需額外網絡;仍應對 agent 可執行的 mutating 工具保持預期內的約束。
- 非 Windows 編輯器路徑請先小規模驗證;多 Editor 並行時務必傳
projectPath。
結尾¶
dsh-unity-2022 把 Unity 2022.3 編輯器收成 harness 裏可編排的 unity_* 工具,並自帶可嵌入工程的 bridge,彌補「只支持較新 Unity 版本」類集成的空白。查閱條目與說明可打開 SkillHub 目錄頁,安裝與工具細節以 GitHub 倉庫 README 爲準。