dsh-comfyui-canvas 架构图

DSH × 画布插件 协同架构 — 浏览器 / Host / ComfyUI 三侧交互与数据流
浏览器 · DeepSeek Harness Web

DSH 会话区 ui-conversation

Chat rail(对话、授权弹窗、附件)
ComfyUI 分屏标签conversation.viewplugin client

画布标签视图 dsh-comfyui-canvas / client.js

顶栏:状态点 · 刷新 · 在新标签页打开
<iframe> 常驻加载 → ComfyUI 前端页面
会话隔离 activeView 上报 · 探活
iframe 加载HTTP(S) · 同屏内嵌

ComfyUI 前端页面 bridge.js 注入扩展

LiteGraph 画布 — 用户正在看的活画布
上报变更 / 执行命令(add/connect/set_param/run…)
graphToPrompt queuePrompt

侧边栏工作台 可选 · better-sidebar

内嵌浏览器 / 终端 / 文件等(生态插件,非本插件)
DSH Host · Node 进程

Agent 循环 agent-loop

LLM 编排 · 会话隔离 · 授权审批
agent 在对话中「副驾」式操作画布
工具调用DSH tool layer

画布插件 host lib/index.js

12 个工具:read / add / connect / set_param / remove / load / run / debug / config / upgrade / get_outputs / batch_run
设置注册(baseURL / token / 启动命令 / rail 宽)
HTTP/dsh-bridge/* 可选 Bearer token

启动 watcher launchRequested

用 shell 服务拉起 ComfyUI 启动命令
MCP(可选)comfy-cli · 模板/模型/批量

ComfyUI MCP 服务器 可选

官方 comfy-cli · pip 安装 · 独立 CLI
ComfyUI 服务(本地 127.0.0.1:8188 / 云端)

桥接后端 ComfyUI-DSH-Canvas / __init__.py

路由:GET /dsh-bridge/workflow POST /dsh-bridge/report POST /dsh-bridge/command POST /dsh-bridge/result
可选 DSH_BRIDGE_TOKEN 鉴权 · report 8MB 上限 · 多标签 clientId 定向执行
WebSocketsend_sync · 命令下发 → 前端执行

ComfyUI 核心 API

POST /prompt 入队执行 GET /history/:id 结果 GET /view 取图 GET /system_stats 探活
执行结果output / temp 图片

出图落盘

output/ — SaveImage 永久保存
temp/ — PreviewImage 临时预览
get_outputs 拉回对话

custom_nodes

含桥接节点 · 以及 LLM/视频/3D 等生态节点
数据流(一次画布操作): agent 调 host 工具 → HTTP /dsh-bridge/command → 桥接后端 → WebSocket → 前端 bridge.js → LiteGraph 画布实时变化(所见即所得)→ 前端 POST result ↔ host 轮询。 读画布: refresh_report 拉取最新 → /dsh-bridge/workflow 返回。 批量: batch_run 参数矩阵逐组入队 → get_outputs/history + /view 取回图片。 环境: upgrade → git pull 核心 + 自定义节点;启动按钮 → shell 拉起。 可选 MCP: comfy-cli 直接提交 API 工作流 / 模板 / 模型管理,与画布插件并存不冲突。
DSH / 插件 host ComfyUI 桥接 可选 MCP 生态 / 底层