Towsty and Cursor
d61f99d6fd
Put still actions on the stage and split output vs input hide.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-28 21:26:29 -05:00
Towsty
f9903ed76e
Square Library modal thumbs and add stage previous/next.
2026-09-28 20:40:45 -05:00
Towsty and Cursor
a33cadb6c2
Load Library modal thumbs with the same tiles and fetch as /library.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-28 20:25:16 -05:00
Towsty and Cursor
5b0d7370ed
Show Typed and Used prompt fields on still Details.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-28 20:11:18 -05:00
Towsty and Cursor
7242d0faef
Replace the under-stage filmstrip with a Library modal and stage eye.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-28 20:11:14 -05:00
Towsty and Cursor
e06afe4a17
Fix Photos Add, Remove, and Replace against the library picker.
...
Remove clears the Photos array and backing image fields; Add opens the picker with disk upload and drops empty drafts on cancel.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 17:06:39 -05:00
Towsty and Cursor
50319e03a9
Map Photos roles to Qwen image_1/image_2 and inject encode tags silently.
...
Mention phrases become <imageN> only in the TextEncode string; the inspector never shows Comfy tokens.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 16:01:49 -05:00
Towsty and Cursor
5c2248a3fd
Replace Hero/Edit-source chrome with Photos role cards.
...
Inspector stills use plain-English roles and Mention phrases; Qwen Generate hides Photos entirely.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 16:00:37 -05:00
Towsty and Cursor
58c5458c87
Store the Edit TextEncode prompt on library stills, not a Start still caption.
...
Edit + Enhance always leads with the keep/<image1> stanza and typed change; PE describe dumps are dropped, and Typed stays promptRaw.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 15:14:20 -05:00
Towsty and Cursor
c46e827c68
Force <image1> on every Qwen Edit PE rewrite.
...
PE-I2I no longer bans tags for single-still edits, and the runner rewrites natural photo/image wording to <image1> so Start still stays bound.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 15:04:04 -05:00
Towsty and Cursor
a51118d92a
Pass through PE refusals to the raw prompt and pin adult PE system prompts.
...
Enhance no longer fails the studio job when the rewrite refuses or comes back empty; host prompt copies keep the official steps plus the adult appendix after a node re-clone.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 14:46:24 -05:00
Towsty and Cursor
99b61e67d7
Keep Enhance + Generate as one queue row with shared progress.
...
The PE stage now stays on the same jobId so the header and queue badge agree, and jobs behind it do not promote when enhance finishes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 14:42:22 -05:00
Towsty and Cursor
30be4bd5b0
Wire Qwen Edit Start still to image_1 and PE-I2I identity keep.
...
Edit no longer invents strangers when the prompt omits <image1> or PE drops image tokens; Hero stays Klein-only.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 14:27:36 -05:00
Towsty and Cursor
ecc4c69a8b
Wire Qwen Turbo toggle through Studio 2 and the runner.
...
Force 6/1 when Turbo is on, skip negatives, keep PE in front, and fail closed if the r128 LoRA is missing.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 12:42:00 -05:00
Towsty and Cursor
17cbc99f8f
Add Qwen 2.1 Viggle Turbo Comfy graphs.
...
Use the unmerged ViggleTurboLora path with the official 6-step sigma schedule on the existing Q8 GGUF.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 12:41:59 -05:00
Towsty and Cursor
95873744cd
Size Qwen 2.1 Generate from the bench aspect table.
...
Wire EmptyLatentImage to the official ~1 MP grid so 16:9 lands at 1536×864, keep PE wh_ratio advisory, and leave Edit on the encode latent from image_1.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 10:54:18 -05:00
Towsty and Cursor
2842855c7b
Wire Qwen Enhance prompt toggle through Studio 2 and the runner.
...
Queue PE first when enabled, fail closed on parse_ok, free VRAM, then run the existing T2I or Edit graph with the rewrite.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 10:25:44 -05:00
Towsty and Cursor
e0292c8d2a
Add Qwen 2.1 PE-only Comfy graphs for prompt enhance.
...
Keep PE CLIP separate from DiT so the 16 GB card can run rewrite then generate without loading both at once.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-26 10:25:44 -05:00
Towsty and Cursor
bb27af506e
Restore Studio 2 Load hydrate, sticky negatives, and strip actions.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 12:23:20 -05:00
Towsty and Cursor
df5ef0949e
Make Library Reveal all / Hide all cover the whole grid.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 12:09:26 -05:00
Towsty and Cursor
206984b6ec
Add Reveal all / Hide all to Studio 2 input picker.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 21:04:55 -05:00
Towsty and Cursor
52a01e0adc
Enable Qwen 2.1 on Edit: wire picker, runner, and source-still validation.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 18:13:07 -05:00
Towsty and Cursor
8609ba24a4
Add Qwen 2.1 Image Edit Comfy graph (GGUF + TextEncode + int8 cache).
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 18:10:50 -05:00
Towsty and Cursor
776d585345
Fix xAIGen LoRA picker to use isXaigenStudio like the server.
...
Bench was checking only public.studio === 'xaigen', so when the instance
is branded xAIGen via instanceName the client stripped xaigen-* LoRAs.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 17:34:53 -05:00
Towsty and Cursor
608f7d8d47
Fix Qwen 2.1 GGUF load: promote Q8 norms to F32 and wire TextEncode latent.
...
abenzerps Q8_0 ships 1D RMSNorms as packed Q8 (136 vs 128), which breaks
Comfy rms_rope; tagger now dequantizes small tensors and the graph uses
TextEncodeQwenImage21's 64-ch latent plus AuraFlow shift.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 16:58:00 -05:00
Towsty and Cursor
68731916ca
Wire Qwen 2.1 as Generate-only engine with 25/1 sampler defaults.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 16:58:00 -05:00
Towsty and Cursor
08d507c491
Add studio2_qwen21_t2i Comfy graph for GGUF Qwen Image 2.1 T2I.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 16:57:04 -05:00
Towsty and Cursor
d65420f34a
Add Qwen 2.1 host setup script and document Shared model paths.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-20 16:57:04 -05:00
Towsty and Cursor
d733e80881
Add a viewer-first mobile shell that swaps in under 768px without restyling desktop Bench.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-19 08:19:36 -05:00
Towsty and Cursor
dccfafa08b
Scale viewer stills and clips to fill the stage with contain.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 20:31:15 -05:00
Towsty and Cursor
589791cdb8
Replace LoRA Thumbwheel spectrograms with range and numeric strengths.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 19:15:12 -05:00
Towsty and Cursor
c0289afa0e
Rebuild Bench as the three-column cinematic layout with Generate CTA.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:36:09 -05:00
Towsty and Cursor
a9799e4920
Lock display tokens and slot sizes to the cinematic pixel grid.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:36:04 -05:00
Towsty and Cursor
52bd6cf4a8
Align Studio display chrome to the Classic | Studio reference mock.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:22:18 -05:00
Towsty and Cursor
eba701a82c
Tune Studio display tokens for rails, radius, and amber CTA.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:12:05 -05:00
Towsty and Cursor
bdc1ab6c2d
Restyle Studio task rail and bind Classic task to the same mode ref.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:10:44 -05:00
Towsty and Cursor
d9743dd8c9
Bind Classic model select and Studio engine rail to the same engine ref.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:10:13 -05:00
Towsty and Cursor
1b29452455
Move Studio locks to slots and Classic hide to header checkboxes.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:09:29 -05:00
Towsty and Cursor
292d53a20e
Add Classic | Studio displayMode preference and Settings cards.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 13:07:13 -05:00
Towsty and Cursor
b194b3cefa
Always live-scan Studio 2 LoRAs on load and Refresh like Settings.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 12:59:06 -05:00
Towsty and Cursor
7221b6a8cf
Refresh Studio 2 LoRAs from live Comfy object_info on fresh=1.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-18 12:45:48 -05:00
Towsty and Cursor
36d24feb9c
Allow Studio 2 MiniMax text-to-video with empty start when locks are off.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-16 14:56:16 -05:00
Towsty and Cursor
5694104226
Keep YuE2 jobs live on the bench and wire target length to semantic tokens.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 20:53:07 -05:00
Towsty and Cursor
2ebc3066e6
Reject instrumental music edits and force YuE2 on queued track patches.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:20:11 -05:00
Towsty and Cursor
c868605d8a
Drop ACE and YuEGP defaults from studio music queue and library labels.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:19:46 -05:00
Towsty and Cursor
1db62e9187
Make Studio 2 the home bench with YuE2 music, LTX, and per-preview hide.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:19:34 -05:00
Towsty and Cursor
a216afc4ce
Remove YuEGP handlers from the Comfy host agent.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:17:59 -05:00
Towsty and Cursor
cce1faa9b1
Route all music jobs through YuE2 only.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:16:45 -05:00
Towsty and Cursor
c50bde723f
Accept only YuE2 in the music generate API.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:16:45 -05:00
Towsty and Cursor
17cc07e3bc
Accept only YuE2 as the music engine type.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:16:44 -05:00
Towsty and Cursor
df885d5732
Replace stale host agent on boot and document one-click Startup install.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 18:15:19 -05:00
Towsty and Cursor
840440d7ef
Remove YuE2 process memory fraction cap on the 5080.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 20:14:44 -05:00
Towsty and Cursor
ee84a99035
Tighten YuE2 VRAM use on the 5080 and empty GPU before launch.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 20:01:06 -05:00
Towsty and Cursor
62671d05da
Allow multi-section YuE2 lyrics and force non-flash attention on Windows.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 19:28:43 -05:00
Towsty and Cursor
fae3b23e37
Finish YuE2 host setup, weight download paths, and v1 cleanup.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 18:46:35 -05:00
Towsty and Cursor
d1ff05089f
Document YuE2 install, weight cleanup, and regression tests.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 18:46:35 -05:00
Towsty and Cursor
71a61b1765
Add YuE2 to the music engine picker and generate API.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 18:46:35 -05:00
Towsty and Cursor
ec5791c595
Mount YuE2 on the host agent and share GPU ownership.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 18:46:35 -05:00
Towsty and Cursor
5f68205f01
Route engine yue2 through a standalone job helper.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 18:45:57 -05:00
Towsty and Cursor
85ef087364
Add YuE2 host, worker, and setup scripts.
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-14 18:45:57 -05:00
Towsty
064f1db933
Read production LoRA names in Studio 2
2026-09-12 21:05:11 -05:00
Towsty
fb87a50a39
Show each LoRA dropdown label once
2026-09-12 20:45:19 -05:00
Towsty
401e6c26a2
Remember Studio 2 LoRA stacks for each engine
2026-09-12 20:17:58 -05:00
Towsty
6a6931f04e
Filter LoRA picker options by engine tokens
2026-09-12 20:17:58 -05:00
Towsty
e190496eb4
Restore Klein empty-latent reference sampling
2026-09-12 12:18:14 -05:00
Towsty
7bb4b16c1e
Sample Klein hero identity from image latents
2026-09-12 11:46:56 -05:00
Towsty
3da3656140
Show pending Studio 2 jobs and freeze finished timers
2026-09-12 10:39:33 -05:00
Towsty
3e90d2ff45
Show clear GPU status and move upscale progress into the queue
2026-09-12 10:17:03 -05:00
Towsty
a9551911f2
Encode Unicode video titles in playback response headers
2026-09-12 10:17:02 -05:00
Towsty and Cursor
d8f42ecc68
Tighten needsFit to exact canvas size, guard against empty renders
...
needsFit only compared aspect ratio, so a same-aspect-but-larger still
(e.g. a 4032x2268 phone photo against a 1344x768 canvas) would skip
fitting and hand MiniMaxH3AddGuide a still that does not match the
job's own latent size. Require an exact width+height match instead;
anything else (including unreadable dimensions) still fits.
Also guard the video save path: an empty Comfy download, an empty
stitched assembly, or a stitched result with no readable duration now
fails the job with a clear error instead of silently saving/attaching
a broken zero-length clip.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 23:11:02 -05:00
Towsty and Cursor
65c69b779a
Stop resampling the extend start frame every hop
...
upload() ran fitStill (ffmpeg scale+pad) on every image except hero,
including the start/handoff still. Four chained extends resampled the
anchor frame four times and destroyed identity even with the hero
reference and lock text intact.
- upload(): only fit when the still's aspect truly differs from the
job canvas (needsFit); never fit hero or start regardless.
- Track handoffSource (anchor|extract) and whether the start frame was
fitted; surface both in job metadata and Details.
- extendSelected(): re-binding an already-selected clip on task switch
must not stomp the user's overridden locks/settings back to the
clip's saved values (regression introduced by the last hotfix push).
- Add tests/studio2-extend-fit.test.mjs: two extends at identical
width/height reach Comfy with the anchor PNG byte-identical, no
ffmpeg fit.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-11 21:12:24 -05:00
Towsty
ec0b6f10ab
Bind the selected output when restoring complete input settings
2026-09-11 19:06:17 -05:00
Towsty
ad135ae19c
Simplify Studio 2 sources and persist private previews and LoRA lists
2026-09-11 19:04:03 -05:00
Towsty
86ffa9ba04
Compile image style chips and restore complete input metadata
2026-09-11 19:04:03 -05:00
Towsty
b5a4882a9c
Keep Studio 2 family tiles tied to existing library files
2026-09-11 19:04:03 -05:00
Towsty
b1ffcd6975
Retry confirmed Studio 2 host cleanup after failures
2026-09-11 18:43:25 -05:00
Towsty
28b919ecee
Sample Klein edits from source and bind Studio 2 extensions correctly
2026-09-11 12:23:34 -05:00
Towsty
8fe69272c3
Use desktop width and protect the Studio 2 prompt column
2026-09-11 09:33:05 -05:00
Towsty
c719e12709
Select and confirm uploaded Studio 2 source and hero stills
2026-09-11 09:28:00 -05:00
Towsty
bf58732690
Separate Studio 2 source and canvas and apply size and seed choices
2026-09-11 07:07:26 -05:00
Towsty
09c96c0ae7
Fit Studio 2 inputs and report live generation progress
2026-09-10 23:48:25 -05:00
Towsty
5c69650ffa
Restore Studio 2 controls and automatic extension binding
2026-09-10 23:48:25 -05:00
Towsty
3b071436a3
Model camera beats and independent hero identity locks
2026-09-10 23:48:25 -05:00
Towsty
f312cff477
Return preview users to Studio 2 after login
2026-09-10 21:33:41 -05:00
Towsty
fd9522ae19
Enable the isolated xAIGen Studio 2 preview
2026-09-10 21:31:43 -05:00
Towsty
8c464f283d
Add the Studio 2 bench and restore saved prompt sections
2026-09-10 20:56:37 -05:00
Towsty
70c17695e4
Restrict Studio 2 host cleanup to exact preview paths
2026-09-10 20:56:37 -05:00
Towsty
70b6b70fcd
Queue durable Studio 2 jobs with sticky identity and saved metadata
2026-09-10 20:56:37 -05:00
Towsty
bd82f5bd5f
Add native H3 identity graph and Studio 2 prompt contracts
2026-09-10 20:13:53 -05:00
Towsty
d4f2b86587
Document isolated Studio 2 PR preview settings
2026-09-10 20:10:16 -05:00
Towsty
7e4b69677f
Add output navigation preserving viewer visibility
2026-09-10 07:09:52 -05:00
Towsty
9b1d8ae798
Clarify output image actions and preserve user VRAM policy
2026-09-09 16:38:48 -05:00
Towsty
badf59d914
Restore automatic video batch continuation and prepare stable Comfy loading
2026-09-09 06:58:35 -05:00
Towsty
4bf992210d
Increase extractLastFrame timeout to 15s and backoff start to 200ms to reduce HostBuffer.read_file_slice errors
2026-09-08 21:11:42 -05:00
Towsty
da8d0e4c38
Add retry logic with timeout to extractLastFrame to handle temporary file access issues in shot scripts
2026-09-08 20:07:19 -05:00
Towsty
1e0cff9dea
Add local queued video upscale with Real-ESRGAN and RIFE
2026-09-08 17:55:02 -05:00
Towsty
4c97980646
Avoid YuEGP pinned-memory exhaustion on 32GB Windows hosts
2026-09-08 07:04:13 -05:00
Towsty
7665285a0d
Preserve extension quality with original segments and reliable refinement
2026-09-08 06:25:40 -05:00
Towsty
c2b6032e49
Replace Comfy YuE with standalone YuEGP profile 1
2026-09-07 20:24:47 -05:00
Towsty
eeff12cdab
Add manual image groups to the library
2026-09-07 20:16:01 -05:00