Details Panel#
The 🔍 button on any result card opens the Details panel: a complete readout of how that image was made. It exists so you can reproduce a result exactly, or trace where an image came from after several rounds of editing and upscaling.
Opening it#
Click 🔍 on the result card. The panel is ephemeral -- only you see it, even on a public result, and it disappears when you dismiss it or reload Discord.
| Behavior | What to expect |
|---|---|
| Loading | The first click on a given job takes a moment. The bot reads the real executed workflow back from ComfyUI rather than trusting only what it stored. |
| Formatting | Everything is rendered as small grey subtext, one fact per line, with field labels underlined. It is a data dump on purpose. |
| Length | Long panels are split across several messages. Sections are never split mid-section unless a single section is very long. |
| Missing data | If the original job row has been cleaned out of the database (common for old upgrades), you get a short "job data not available for this upgraded image" note instead. |
Note
Every section is built independently. If one section cannot be built, it is skipped and the rest of the panel still renders, so a partial panel is normal rather than a failure.
Section order#
The panel always starts with the heading ## Job Details, then builds these six sections in this fixed order. Sections that have nothing to say are omitted entirely.
| # | Section | When it appears |
|---|---|---|
| 1 | ### parameters |
Always. Renamed to ### source for a detailer job. |
| 2 | ### model response |
Only for nano jobs that got a text reply from Gemini. |
| 3 | ### image data |
Always, except for /compose and /render jobs. |
| 4 | ### processing info |
Always. |
| 5 | ### models |
Only when the job recorded model attribution. |
| 6 | (legend, no heading) | Whenever any value carries a source superscript, which is effectively always. |
1. ### parameters#
This is the reconstruction section: what was actually asked for.
Common fields#
These appear for /imagine, img2img, and MrFlow /turbo jobs, which use the full generation layout.
| Field | What it means |
|---|---|
prompt: |
The full reconstructed positive prompt as the model saw it: model-specific prepends, LoRA trigger words, your own text, and any SFW additions. Your own words are bolded inside the line and matched character names are underlined, so you can tell what you typed from what the bot added. |
negative: |
The full reconstructed negative prompt, same treatment. |
enhanced: |
The AI-enhanced prompt that was actually sent to the text encoder. Present only when enhancement ran. When it is present, the prompt: line shows your original text instead of the expanded one. |
matched characters: |
Character names the bot recognised in your prompt. Shown only when characters were matched and no enhanced: line is present. |
| (sampler row) | One line: steps N • cfg N • seed N • sampler X • scheduler Y • denoise D • batch B. denoise is hidden when it is 1.0, batch is hidden when it is 1, and any field the bot could not resolve is dropped rather than shown as unknown. |
| (flags row) | NSFW and RAW, when either was set. |
model: |
Nickname (clickable to the model's page) followed by the actual checkpoint filename. Virtual model aliases show the alias name, not the underlying checkpoint. |
LoRA: |
One line per LoRA: nickname, filename, and @ 0.7 strength. The strength suffix is omitted at 1.0. Auto-injected bundle LoRAs and troll-mod LoRAs are deliberately not listed. |
upscaler: |
Only for high-effort, upgrade, and upscale jobs. |
attention: |
The attention backend used, with its speedup factor where known. |
A blank line separates the prompt block from the sampler row, so the panel reads as "what you asked for" then "how it was sampled".
Extra fields by job type#
Everything below is in addition to or instead of the common fields, depending on what kind of job it was.
| Job type | Fields shown |
|---|---|
| nano | prompt:, mode: (img2img or txt2img), batch:, aspect ratio:, model: |
| nano 2 | Everything from nano, plus resolution: (1K, 2K, 4K), google search: enabled, thinking: (hidden when the level is minimal) |
| gpt | prompt:, mode: (img2img (edit) or txt2img (generate)), size:, quality:, batch:, model: |
| qwen edit / klein edit / restyle | prompt:, model: (for a restyle this reads like Restyle (cyberpunk) via Klein 9B Quality), img2img: with a clickable link per input image, aspect ratio:, batch:, steps:, cfg:, resolution: (restyle only, uppercased), source influence: (restyle only, shown when it differs from 80%), seed: |
| turbo (TensorRT) | prompt:, negative:, turbo model:, orientation: with pixel size, e.g. portrait (1152×1536), steps:, cfg:, seed:, batch: |
| turbo (MrFlow) | Full /imagine layout above, plus turbo model:, aspect ratio: or dimensions:, and an mrflow: line describing the staged pass, e.g. low-res 768×1024, refine 6 steps, strength 0.4, sigma=karras |
| render | prompt:, enhanced:, mode: (text2video, firstlast, reference), duration:, frames:, fps:, resolution:, aspect:, input: with links to the first/last frames, references: with links, seed:, and a closing format: MP4 • file size: line |
| compose | caption:, enhanced:, lyrics: (newlines shown as /), generated lyrics: or enhanced lyrics:, duration:, seed:, and a closing format: MP3 • file size: line |
| upscale | description:, upscaler:, scale: (e.g. 2x), upgrade level: |
| hires fix | source: (job #123 or external image), prompt:, upscaler:, scale: (e.g. 1.5x), denoise:, a steps • cfg • sampler • scheduler • seed row, model: |
| funkify | prompt: plus links to the input image(s) |
| hidden object | model: plus img2img: with a link to the input image |
| detailer | Header changes to ### source; see below |
Note
Krea 2 edits and USDU (tiled) upscales fall back to the standard generation layout above rather than getting a dedicated one. That is usually what you want for USDU, since it really does run a sampler.
### source (detailer jobs)#
A detailer pass adds no generation parameters of its own, so the section is renamed and contains a single line:
source: job #123
If the parent job cannot be resolved it reads source: unknown. Everything about the parent image -- prompt, model, seed -- is in the parent job's own Details panel, which you can reach through /history.
2. ### model response#
Appears only for nano jobs where Gemini returned text alongside the image.
| Part | What it means |
|---|---|
| Thinking block | The model's reasoning, stripped of markdown formatting and truncated to 500 characters. |
--- |
Separator between the thinking block and the reply. |
| Reply | What the model actually said about your request. |
3. ### image data#
What you were actually sent. Skipped for compose and render jobs, which report their format and file size inside ### parameters instead.
| Field | Example | What it means |
|---|---|---|
ratio |
ratio 16:9 |
Aspect ratio reduced to its smallest whole numbers. For high-effort jobs this is computed on the pre-upscale dimensions. |
size |
size 1920×1080 |
Pixel dimensions of the delivered file. High-effort and upgrade jobs get a (2x) suffix. Reads size unknown when it could not be determined. |
| format | WebP q87 or PNG |
The delivered format, with the WebP quality that was actually used. If that number is lower than your /settings quality, the file was compressed to fit the upload limit -- see Delivery. |
file size: |
file size: 4.2 MB |
Size of the file that was uploaded, not the size of the original on disk. |
4. ### processing info#
| Field | Example | What it means |
|---|---|---|
| job id | job #4821 |
The database id. Use it when reporting a problem, and to match source: job #… pointers. |
mode: |
mode: usdu 2x |
The detected job type. One of imagine, img2img, nano, gpt, qwen edit, klein edit, krea 2 edit, restyle, turbo (TensorRT), turbo (MrFlow), compose, render (api), render (local), upscale Nx, usdu Nx, hires fix, detailer, detailer + bg removal, background removal, funkify, or 🔍 hidden object. |
processing time: |
processing time: 42.3s (+5.1s) |
Wall-clock time for the job. The parenthetical is the difference from the bot's own time estimate, shown only when it is at least 0.5s off: + means slower than predicted, - means faster. Durations format as 42.3s under a minute, 3m 12s under an hour, then 1h 04m. |
operation: |
operation: re-roll • upgrade |
How the job was started. Possible entries are re-roll, remix, upgrade, img2img, edit/img2img, funkify, banana edit, tweak, from button, and /upscale command. Which ones can appear depends on the job type. |
stages: |
stages: face → eyes → hands |
Detailer jobs only. Stage names are person, face, eyes, hands, and re-sample. |
bg removal: |
bg removal: <model> |
Detailer jobs that removed the background. |
seed: |
seed: 12345 |
Hidden-object jobs only. |
| (chain) | see below | The provenance chain, when the image took two or more steps. |
5. ### models#
Appears only when the job recorded model attribution. It is one line naming every model that contributed to the image, in creation order, with licence information.
Model A(CreativeML OpenRAIL-M), LoRA B (0.8)(Apache 2.0), +3 more
| Rule | Detail |
|---|---|
| Links | Model names link to their source page; licence names link to the licence text when a URL is known. |
| LoRAs | Get a (strength) suffix. |
| Duplicates | Collapsed, so a model used at two steps is listed once. |
| Hidden entries | Some entries are deliberately suppressed, e.g. the base model behind a TensorRT turbo engine, because the engine entry already names it. |
| Cap | 10 entries, then +N more. |
This section is the one to screenshot if you need to check what you are allowed to do with an output.
6. Source superscripts#
Every value in the panel carries a superscript saying where the bot got it. This matters because the bot does not simply echo your command back at you -- it prefers what ComfyUI actually executed.
| Superscript | Legend text | Meaning |
|---|---|---|
| ¹ | Stored job parameters | What the bot recorded when you submitted the job. The most authoritative source for anything you typed. |
| ² | ComfyUI API history | Read back from the workflow ComfyUI actually ran. The most authoritative source for what the sampler really did. |
| ³ | Model/bot configuration | Filled in from the model and bot configuration, e.g. a model's default sampler. |
| ⁴ | Calculated from other values | Derived, e.g. an aspect ratio computed from dimensions, or a video duration computed from frames and fps. |
| ⁵ | Default/fallback value | Nothing better was available. Treat these as the least trustworthy values in the panel. |
Rules for reading them:
- A superscript is appended directly to the value:
1024×1024². - A value that came from more than one source gets both, in order:
1024×1024¹⁴. - The sampler row normally carries one superscript at the end of the whole row, meaning every field on it shares that source. When the fields come from different places, the row switches to per-field superscripts so you can see exactly which number came from where.
- The legend at the bottom lists only the sources actually used in that panel, always in numeric order. If you never see a ⁵ line, nothing on the panel was a fallback.
The provenance chain#
The last line of ### processing info is the chain: every step the image passed through, oldest first, joined with →.
imagine(Krea 2) → upscale 2x(4x-UltraSharp) → face, eyes → 🎷 funkify(Klein 9B Fast)
It is shown only when the job has two or more steps. A plain single-step /imagine shows no chain line at all, which is not an error -- there is simply nothing to trace.
Model nicknames appear in parentheses where the bot knows them.
| Step | How it renders |
|---|---|
| Text-to-image | imagine(Nickname) |
| Image-to-image | img2img(Nickname) |
| API generation | generate(Gemini Flash), generate(GPT Image) |
| Edit | edit(Qwen Fast), edit(Klein 9B Quality), edit(Gemini Pro), restyle (preset) |
| Tweak | tweak(Klein 4B Fast), tweak(Qwen), tweak(GPT Image), restyle (preset) |
| Turbo | turbo(Nickname) |
| Remix | remix |
| Re-roll | re-roll |
| Video | 🎬 render |
| Upscale | upscale 2x(4x-UltraSharp) |
| Detailer | the enabled stages, comma-joined, e.g. face, hands |
| Funkify | 🎷 funkify(Klein 4B Fast) |
| Background removal | bg removal |
| Hi-res fix | hires fix(Nickname) |
Two other provenance surfaces work alongside the chain:
- Parent job pointers -- detailer and hi-res fix jobs show
source: job #123, orexternal imagewhen you supplied the input yourself. - Input image links -- every img2img-style job renders clickable links to the exact source images, both on the result card and in this panel.
Reconstructing an image#
To rebuild a result exactly from its panel:
- Read the chain first. If it has more than one step, the panel you are looking at describes only the last step. Follow
source: job #…back, or open the earlier job from /history, to get the parameters of the earlier steps. - Take
model:and everyLoRA:line including strengths, from### parameters. - Take the sampler row verbatim: steps, cfg, seed, sampler, scheduler, denoise, batch.
- Use the
prompt:line if you want the exact text the model saw, or your own bolded words if you want to start from what you typed. If there is anenhanced:line, the enhanced text is what was actually encoded, and rerunning with enhancement on will produce different words. - Check the superscripts. Anything marked ⁵ was a fallback and may not match what really ran.
- For upscale steps, take
upscaler:andscale:and reproduce them through /upscale.
Tip
A ² on the sampler row is a good sign: it means those numbers were read back out of the workflow ComfyUI executed, not just what was requested.