From 2435167a41b5c820d01fb7e7ef4773ad140cab79 Mon Sep 17 00:00:00 2001 From: Ian Date: Fri, 4 Sep 2026 22:46:19 -0500 Subject: [PATCH] Add Image Iterate: nested multi-prompt still families. Iterate runs a series of prompts as generate (no still), edit (still A), or compose (A+B), saves each output under one library collection like video extensions, and defaults to iterating from the original still. --- pages/index.vue | 158 +++++++++++++++++++++++++-------- server/api/v2/generate.post.ts | 59 +++++++----- server/utils/imageChainV2.ts | 66 ++++++++------ server/utils/studioQueue.ts | 59 ++++++------ utils/imageV2.ts | 35 +++++--- utils/libraryGeneration.ts | 14 +-- 6 files changed, 261 insertions(+), 130 deletions(-) diff --git a/pages/index.vue b/pages/index.vue index 48f54c7..753fda1 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -24,6 +24,12 @@

{{ studioMode === 'editv2' ? (v2Mode === 'generate' ? 'Generate: no reference image. Prompt only.' + : v2Mode === 'iterate' + ? (file + ? (editRefFile + ? 'Iterate: each prompt runs as Compose from stills A and B (or chain from the last output). All results nest in one library collection.' + : 'Iterate: each prompt runs from still A (batch) or from the last output (chain). All results nest in one library collection.') + : 'Iterate: each prompt is a separate generate. All results nest in one library collection like video extensions.') : v2Mode === 'refine' ? 'Refine: paint a mask on Still A. Prompt only what should change in the painted area. Strength is denoise in that region.' : v2Mode === 'compose' @@ -35,7 +41,7 @@

- Still A is loaded for Edit / Compose / Refine. Generate ignores it and uses the prompt only. + Still A is loaded for Edit / Compose / Refine / Iterate. Generate ignores it and uses the prompt only. +
+
+ + No still = text generate iterations. With a still = edit (or compose if you add still B).
@@ -144,7 +157,17 @@ > Generate -