dshseek

seek://map/dsh-comfyui-canvas

dsh-comfyui-canvas — ComfyUI as a Split-screen Canvas IDE for DSH Web

Tool Integrationscommunity★ 9verified Sep 14, 2026wbin0001/dsh-comfyui-canvas← Back to map

#comfyui #canvas #workflow #image-generation #multimodal

TL;DR

Per its README, dsh-comfyui-canvas embeds ComfyUI as a split-screen canvas in DSH Web: the agent drives the live canvas as a visual workflow IDE, with outputs spanning images, music, video and 3D returned to the chat. The bridge ships in-package; SOP skills, batch sweeps and export_api for headless reruns round it out. Maintained by wbin0001; npm latest 0.1.7 (site check, 2026-09-14).

dsh-comfyui-canvas embeds ComfyUI — local or cloud — as a split-screen canvas inside DSH Web: canvas on the left, the official conversation rail on the right, and an agent that operates the live graph you are watching (nodes, links, params, runs, debug) instead of editing opaque JSON. Outputs across images, music, video and 3D come straight back into the chat, runs are traceable through a per-project runs.json, and the ComfyUI-side bridge ships inside the package behind a one-click installer. For unattended scale, export_api hands the tuned graph to comfy-cli or an MCP server — per the README, complementary driving modes of the same ComfyUI. It shares the comfyui tag with this map's dsh-image-gen entry but is a separate project: that one is a BYOK image studio across providers, this one drives ComfyUI itself.

Facts

install
dsh plugin add dsh-comfyui-canvas
platforms
Windows · macOS · Linux
license
MIT
note
据其 README:需运行中的 ComfyUI 与已装桥接节点、且浏览器打开过画布页;comfyui_reload 仅支持 Windows;非官方桌面封装不保证兼容。

Key points

  • Per its README, since v0.1.4 the split-screen layout is fully self-contained: only official DSH slots (conversation.session.header.utilities) and DOM data-* anchors, zero core modifications, working on any official DSH v0.1.x (including v0.1.2+ with the breaking client refresh) without patches; the README warns that non-official desktop wrappers are not guaranteed compatible — rely on official DSH
  • Canvas ops tools cover read_workflow / add_node / connect / set_param / remove_node / inject_text / load_workflow / run / debug / clear / group: build and fix workflows on the live canvas, organize complex graphs into named groups (prompt / sampler / output areas), inject_text turns conversation text into a wirable source node — the agent operates the canvas the user is watching, every step visible instead of an opaque JSON edit
  • Production tools: batch_run sweeps parameter matrices via explicit runs or a declarative matrix (zip parallel slots / product cartesian expansion); get_outputs pulls images, videos, gifs and audio back into the chat with outputStem auto-incrementing names that never overwrite; attach_file uploads local files (image/audio/video/3D/text) into ComfyUI input/; export_api exports API-format workflow JSON for comfy-cli headless batch runs
  • The bridge node is the only ComfyUI-side dependency: it exposes /dsh-bridge/* routes and injects into the canvas page via app.registerExtension; setup_bridge detects / installs / updates it into custom_nodes/ (idempotent, verifies files, says when to restart), it ships inside the package at comfyui-bridge/ComfyUI-DSH-Canvas with manual copy still supported for air-gapped machines, and a cloud ComfyUI needs the bridge on the machine that runs ComfyUI
  • Projects and traceability: downloads default to the project directory (default <workspace>/projects, changeable in Settings); every downloaded run appends runs.json (promptId / overrides / timestamp / files) so any output traces back to its parameters; failed runs return a structured executionError (node id / node type / exception / message) instead of a raw JSON wall
  • Built-in skills ship with the plugin, no extra setup: comfyui-canvas-ops (read → confirm → edit → run → fetch → self-check), comfyui-admin-ops (configure / launch / upgrade / node management), comfyui-video-audio-ops (video + voiceover / audio track) and comfyui-dev-ops (develop / debug custom nodes); comfyui_upgrade concurrently updates the ComfyUI core and every git-backed custom node, dirty-safe
  • Security model per its README: the bridge is unauthenticated by default, matching ComfyUI's own /prompt trust model — anyone who can reach the port can read the canvas, report state and dispatch commands (run consumes GPU); commands are whitelisted on the frontend so no arbitrary code execution, but the surface is real; an optional shared DSH_BRIDGE_TOKEN requires Bearer auth on agent-initiated requests, and the README advises keeping ComfyUI on loopback; platforms are Windows / macOS / Linux, with comfyui_reload currently Windows-only

FAQ

How does this relate to this map's dsh-image-gen entry?

Separate projects by different authors (wbin0001 vs shanliuling), complementary rather than overlapping: dsh-image-gen is a BYOK image studio that wires Gemini, OpenAI Images, Seedream, DashScope and local ComfyUI into DSH for chat generation, iterative editing, a batch Studio and multi-model compare; dsh-comfyui-canvas instead drives ComfyUI itself as a visual workflow IDE — nodes, links, params and runs — with outputs that also span music, video and 3D.

I only need unattended batch runs — do I need this canvas plugin?

Per its README, no: the plugin's role is building and tuning while you watch the live canvas (the IDE role); for unattended / scale workloads, export_api exports the tuned graph as API-format workflow JSON and hands it to ComfyUI's official comfy-cli (a pip-installed standalone CLI, not a DSH plugin) or an MCP server for headless reruns — the README frames the two as complementary driving modes, not alternatives.

Is it safe to expose ComfyUI to LAN or the internet?

Per its README's Security section: the bridge is unauthenticated by default, matching ComfyUI's own /prompt trust model — anyone who can reach the ComfyUI port can read the canvas, report state and dispatch commands, and run consumes GPU; the frontend command whitelist prevents arbitrary code execution, but the surface is real. Keep ComfyUI bound to 127.0.0.1; when exposure is required, set the same DSH_BRIDGE_TOKEN on both sides so every agent-initiated request must present a Bearer token; the frontend's own /report and result callbacks stay open — they only mutate the in-memory snapshot and never dispatch execution.

How do I connect a cloud or hosted-SaaS ComfyUI?

Per its README: for a cloud / remote ComfyUI, install the bridge node on the machine that runs ComfyUI (npm pack the package and copy the bridge out, or sparse-checkout the bridge directory from GitHub), restart it, point the plugin's baseUrl at the cloud address, and — recommended — set a matching DSH_BRIDGE_TOKEN on both sides; a hosted SaaS with API only and no shell cannot take custom nodes, so the bridge and the visual canvas are unavailable — use the pure API/MCP path (export_api → comfy-cli / an MCP server), and comfyui_config will report bridgeInstalled: false.

Official references

GitHub repository — wbin0001/dsh-comfyui-canvas ↗