sixtysevenlf/dsh-blender-plugin ↗★ 164
@dsh-external/dsh-blender-plugin
DSH × Blender 直连实时插件【分享版 v1.0】:15 个模型侧工具让 AI 直接驱动 Blender —— blender_rt_see(视口帧 / 自定义视角)、blender_rt_do(跑 Python,持久内核 K)、blender_rt_watch(时间窗采样)、blender_rt_loop(Blender 侧内环迭代)、blender_rt_cmd / blender_rt_commands(addon 命令透传)、blender_rt_perf(渲染性能诊断与预设)、blender_rt_opt(对象精简 / 安全合并)、blender_rt_headless(独立无头进程)、blender_rt_worker(热无头会话)、blender_rt_job(作业层,超时不丢结果)、blender_rt_txn(事务回滚)、blender_rt_preset(配方库)、blender_rt_plan(契约层 + 规划器:28 个 family / 183 个 op 的判定·验收·导出·造型)、blender_viewport(通道运维与写租约);自带 node + python runtime,配置走 env → 配置文件 → 自动探测,换机器不用改源码。安装三步与唯一验收判据(doctor kind=ok)见 README,操作教程见 docs/操作教程.md。 适合需要通过 AI 进行 3D 建模、渲染诊断和 Python 脚本驱动的用户。
설치
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:sixtysevenlf/dsh-blender-plugin8. Configuration
Resolution order: environment → config file → auto-detect → default. Nothing is hard-coded to a specific machine: working dir, Blender executable and ports are all configurable.
| Setting | Env var | Config key | Default |
|---|---|---|---|
| Working dir (frames/scripts) | DSH_BLENDER_WORKDIR | workDir | %LOCALAPPDATA%\dsh-blender-rt (macOS: ~/.dsh-blender-rt) |
| Blender executable | DSH_BLENDER_EXE | blenderExe | auto (Program Files / Steam / /Applications / PATH) |
| Addon host/port | DSH_BLENDER_ADDON_HOST/PORT | addonHost/addonPort | 127.0.0.1:9876 |
| Addon wire protocol | DSH_BLENDER_ADDON_PROTOCOL | addonProtocol | auto (ahujasid / category-action) |
| Backend port | DSH_BLENDER_HTTP_PORT | httpPort | 9877 |
| Hot-worker port | DSH_BLENDER_WORKER_PORT | workerPort | 9879 |
| Blender user config/scripts (GPU prefs) | DSH_BLENDER_USER_CONFIG / DSH_BLENDER_USER_SCRIPTS | blenderUserConfig/blenderUserScripts | null (headless does not read them) |
| Lease identity / TTL | DSH_BLENDER_HOLDER / DSH_BLENDER_LEASE_TTL_MS | holder/leaseTtlMs | `plugin-pid- |
| ` / 600000 ms | |||
| Headless client wait window | DSH_HEADLESS_WAIT_MS | — | 100000 ms (then {kind:"promoted", jobId}) |
| Auto-promote headless to the job layer | DSH_HEADLESS_AUTO_JOB_MS | — | 0 (off) |
Config file locations: $DSH_BLENDER_CONFIG → /dsh-blender.config.json → ~/.dsh/dsh-blender.config.json.
Check the effective config any time: curl -s http://127.0.0.1:9877/who (look at the config block) or blender_viewport op=doctor. Full details: docs/配置参考.md.
The working directory must be readable/writable from both ends (Blender is a Windows/macOS process, the host may be WSL/Linux): give the Windows form and the plugin maps the WSL form, and don't point it at a read-only mount or a WSL-internal path. Headless outdir/out_json accept WSL paths directly (the receipt echoes both real forms). Both DSH_HEADLESS_* variables are read once at module load, so restart DSH after changing them.