DOGMA Sector Settings v26 — Local VLM Brief
One category in, twelve knobs out — and a Milan 1970s surprise
- group_radius
- context_px
- max_source_side
- target_long_side
- max_crops
- stitch_strength
- vlm_request
- summary
What it is
DOGMASectorSettingsV26 is a lookup table with an opinion. You give it a category name and a restoration brief, and it hands back the numbers the rest of the pipeline needs for that category - grouping radius, context padding, source resolution cap, model resolution, max crops, stitch strength - plus vlm_request, a fully written natural-language instruction for a local vision model to describe the repair of that specific sector.
It's the node that keeps you from hand-tuning eight integers per category across four sectors. Faces need a tight group radius and a small source cap; architectural detail needs a fat radius and 3400px of source. Nobody remembers that, and nobody should.
How it works
The table, straight from the source:
| category | group_radius | context_px | max_source_side | target_long_side | max_crops | stitch_strength | |---|---|---|---|---|---|---| | vehicles | 220 | 224 | 3200 | 2560 | 4 | 0.96 | | people | 180 | 208 | 3000 | 2400 | 4 | 0.95 | | faces | 140 | 192 | 2200 | 2048 | 4 | 0.94 | | architectural details | 260 | 256 | 3400 | 2560 | 4 | 0.92 | | hands | 120 | 192 | 1900 | 1792 | 4 | 0.94 | | (unknown) | 190 | 208 | 3000 | 2400 | 4 | 0.93 |
Unknown categories get the fallback row, so the node never fails - it just doesn't know anything specific about your camper van. __none__ gets radius 160, one crop, and stitch strength 0.0, which is the "do nothing" configuration.
vlm_request is where the personality is. For any category, the string it emits includes a fixed paragraph that starts "Historical context: the intended scene is Milan, Italy in the 1970s" and then a per-category paragraph - vehicle geometry and period-correct 1970s Italian/European design cues, for people it's anatomy plus clean separation from railings and cars, for signage it's "when wording is confidently readable, include that exact wording in quotation marks." Then it ends with: output only the final editing instruction, no analysis, no headings.
Read that Milan paragraph before you use this node. It's hard-coded. If you're restoring a 1970s Milan street scene for an ad, it's a beautifully tuned feature. If you're doing anything else, you are handing your local VLM a piece of false context that it will happily work into its instruction. There's no parameter to change it - the node's only two inputs are category and restoration_brief.
Which brings up the other thing you should know: restoration_brief is required by the schema but, in v26 and v26.1, nothing from it reaches vlm_request. The template is built entirely from internal strings. It exists so a brief can be threaded through the graph and into other nodes that do use it.
Inputs and outputs
Both inputs are required and both are forceInput: category (normally straight out of a sector plan node) and restoration_brief (a multiline string).
Outputs: group_radius, context_px, max_source_side, target_long_side, max_crops and stitch_strength go into your crop and stitch nodes; vlm_request goes into a local vision-language model node's prompt input; summary is a one-line human-readable description of the chosen settings - handy on a Show Text node when you're comparing runs.
Install
ComfyUI Manager → DOGMA Nodes, or:
cd ComfyUI/custom_nodes
git clone https://github.com/axior/ComfyUI-DOGMA-Nodes
# restart ComfyUI
No Python dependencies, no downloads, no API keys. The vlm_request output is just text - you supply the local VLM yourself.
Gotchas
- Milan, 1970s. Hard-coded. This is the single most important sentence in this article.
- The settings table is tuned for that same production context - 3200px source regions and 4 crops per sector assume a big master and a card that can sample a 2560px-long-side crop. Halve
max_source_sideandtarget_long_sideif you're on consumer VRAM. - This pack has no community usage to check against: zero reddit threads name it, and the README covers only the WAN VACE prep and sampler nodes. The class docstrings are the manual.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| category | STRING | — | |
| restoration_brief | STRING | — |
Outputs (8)
| Name | Type | Description |
|---|---|---|
| group_radius | INT | — |
| context_px | INT | — |
| max_source_side | INT | — |
| target_long_side | INT | — |
| max_crops | INT | — |
| stitch_strength | FLOAT | — |
| vlm_request | STRING | — |
| summary | STRING | — |