photoshop_preset_pack
Bundle canvas, mask, prompts and size into one wire
- Canvas
- Mask
- ps_pack
Despite the name, there's no actual Photoshop plugin or bridge hiding behind this one - nothing in the pack's documentation ties it to Adobe software. It's just named after the kind of bundle a Photoshop-style single-canvas workflow needs: an image, a mask, a couple of prompts, a size, a seed, and one generic slider. Think of it as "everything a basic image-plus-mask generation pass needs," packed into a single wire.
Part of ComfyUI-Apt_Preset's stack category, the same pattern as Model_Preset_pack and param_preset_pack applied to a different kind of payload: image, mask, and text instead of model filenames or numeric strengths.
How it works
Eight optional fields go in - a canvas image, a mask, a slider, a seed, positive and negative prompt text, and a target width and height - and they all come out the other end packed into a single custom type, FPIPE2. Nothing is processed or transformed; the node's entire job is holding these eight disparate pieces of a generation setup together as one unit so you can pass it around your graph (or save/recall it as a preset) without wiring eight separate connections every time.
The generic naming on a few of these (Slider, Seed) suggests this is meant to be a flexible catch-all bundle rather than one tied to a specific technique - Slider isn't documented as any particular parameter, so its meaning is whatever your workflow assigns it once you unpack it with photoshop_preset_Unpack downstream.
Inputs and outputs
All eight inputs are optional:
- Canvas - an
IMAGE, presumably your base/working canvas. - Mask - a
MASKto go with it. - Slider - a generic
FLOAT, default 1. No fixed meaning baked into the node - decide what it drives in your own workflow. - Seed - an
INT, default 1. - pos / neg - multiline
STRINGfields, default empty, for positive/negative prompt text. - W / H -
INT, default 512 each, for target width/height.
The output is ps_pack, typed FPIPE2 - a custom type only photoshop_preset_Unpack is built to read.
Installing it
ComfyUI Manager: search "ComfyUI-Apt_Preset", install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/cardenluo/ComfyUI-Apt_Preset.git
Restart afterward. install.bat covers dependencies on Windows; on Linux/Mac, install from the requirements file inside your ComfyUI venv. No model files needed for this specific node - it's a data bundle, not an inference step.
Common issues
Expecting this to talk to an actual Photoshop plugin. It doesn't - there's no evidence in the pack's own documentation of any Adobe integration here. If you're looking for a real ComfyUI-to-Photoshop bridge, this isn't it; it just borrows the name for the shape of the data it bundles.
Output won't connect to anything except the matching unpack node. Expected - FPIPE2 is a custom type specific to this pack, not a standard ComfyUI IMAGE/MASK/STRING socket. Pair it with photoshop_preset_Unpack to get individually-typed values back out.
Not sure what Slider is supposed to control. It isn't tied to anything by the node itself - it's a spare generic float for you to repurpose (denoise strength, opacity, whatever your workflow needs a single extra number for). If you're opening someone else's saved workflow and can't tell what they used it for, you'll need to trace where the unpacked value gets wired in downstream.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| Canvasopt | IMAGE | — | |
| Maskopt | MASK | — | |
| Slideropt | FLOAT | 1.00 | — |
| Seedopt | INT | 1 | — |
| posopt | STRING | — | |
| negopt | STRING | — | |
| Wopt | INT | 512 | — |
| Hopt | INT | 512 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| ps_pack | FPIPE2 | — |