Commit Graph
341 Commits
Author SHA1 Message Date
TowstyandCursor e790c9bff7 Put default video length on the main Settings panel and let Studio save it.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 19:47:58 -05:00
TowstyandCursor 86e23499a9 Add default video length setting and inherit duration when extending.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 19:44:28 -05:00
TowstyandCursor a6756c1f1a Stop wiping Comfy inputs and sibling outputs during disk cleanup.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 18:16:56 -05:00
TowstyandCursor de433c40d3 Lock YuE to a 16GB Comfy-safe recipe instead of chasing single knobs.
Keep mmgp profile 2 (no quanto), node-legal token floor, two Stage-A segments, and document why profiles 3-5 blow up under InferenceMode.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 17:46:54 -05:00
TowstyandCursor 98253b124d Keep YuE max_new_tokens at the node minimum of 2944.
Comfy rejects anything lower, so the 16GB VRAM tweak cannot go under that floor.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 17:35:46 -05:00
TowstyandCursor 3081b8fa36 Tighten YuE for 16GB VRAM and stop the false Waiting status.
Cap Stage-A segments and use a heavier mmgp profile so long lyrics stop OOMing mid-run, and show that Comfy is actually working.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 17:19:19 -05:00
TowstyandCursor 88c5d25b78 Keep a generation log so wiped or failed jobs can be re-queued.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 16:15:09 -05:00
TowstyandCursor b5014f02b4 Fail zombie studio jobs when Comfy's queue is empty after a restart.
A live job stuck at 8% with no Comfy prompt was treated as still owning the GPU, so waiting work never started.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 16:07:36 -05:00
TowstyandCursor 110865b370 Delete Comfy video, image, and audio files from the desktop after they are saved to the library.
Audio never called purge, image stills used untagged names, and a locked file could abort the whole host-agent delete.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 08:30:05 -05:00
TowstyandCursor d7045c0a07 Show LoRA model/CLIP dials at the 0.05 step instead of rounding to one decimal.
0.25 and 0.35 both looked like 0.3, so snofs strengths on stills did not match the wheels.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 08:29:55 -05:00
TowstyandCursor 78b158471b Add ACE-Step 1.5 and YuE on Music, and put Video/Image/Music cards back.
Recover finished Comfy audio when queueing hangs so a completed track is not stuck on Queueing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 07:42:54 -05:00
TowstyandCursor ce85e7f513 Join pre/prompt/post into the first MiniMax prompt, not only later shots.
The motion prompt field is what Comfy actually runs. Wrappers are now composed into that string on submit, and shot 1 falls back to it if the separate pre/post fields do not arrive.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 07:24:00 -05:00
TowstyandCursor 1206afe8fd Keep family pre/post text on shot queues and wrap the mid prompt at Comfy time.
Later shots were starting a new job without those wrappers, so only the first clip got them.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 07:17:00 -05:00
TowstyandCursor f05f8f3597 Let queued video, image, and music jobs open in an inspect modal.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 00:15:02 -05:00
TowstyandCursor 53990192e4 Put ACE-Step music jobs on the same studio queue as video and image.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 00:08:07 -05:00
TowstyandCursor 9cb8b9bda3 Delete imported Comfy stills from disk instead of looking for them in the video folder.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 00:02:17 -05:00
TowstyandCursor 5555155884 Add ACE-Step music generation to the studio and library.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 23:58:18 -05:00
TowstyandCursor c79cca39ae Stop launching extra Comfy Pythons when the running instance is just busy.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 22:35:27 -05:00
TowstyandCursor eccf8c0081 Only list LoRAs tagged for the selected image engine in the dropdown.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 21:49:21 -05:00
TowstyandCursor 46629ca51b Filter image LoRAs by flux- / krea- filename so each engine only lists its own.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 21:37:12 -05:00
TowstyandCursor 9fd96cb990 Apply and print SNOFS from the LoRA dials, not a leftover Concept LoRA row.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 21:33:30 -05:00
TowstyandCursor ca2380f4ae Keep LoRA keys still while typing aliases instead of re-sorting on every letter.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 21:24:46 -05:00
TowstyandCursor 642bffeaaa Stop the library grid from fighting scroll-up by dropping content-visibility and matching virtual row height to the cards.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 21:05:32 -05:00
TowstyandCursor 71e2e4b326 Show video posters in the library by building a first-frame thumb when one is missing.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 20:53:53 -05:00
TowstyandCursor 81fb5051a3 Keep Use as input from filling the seed box, and offer the source seed as an Apply label instead.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 20:47:51 -05:00
TowstyandCursor 8d236250e4 Add library select mode, studio-style details, and a larger preview than the old scroll box.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 20:35:11 -05:00
TowstyandCursor 369eb595d7 Join pre/prompt/post for Comfy, stop zero-size generates snapping to a small square, and give the phone library a real closeable preview.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 20:29:44 -05:00
TowstyandCursor d471d1bdd6 Put studio scrolling back and actually save image pre-text and post-text.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:28:51 -05:00
TowstyandCursor b3d16b4817 Let the studio page scroll again instead of locking both columns to the viewport.
Output and the library now stop at the input panel height, then scroll inside.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:24:05 -05:00
TowstyandCursor 1be9bcb23f Keep the Extend panel put and name sibling clips as branches.
A finished job no longer closes a draft or jumps the page, and a second extend from the same part saves as p8b instead of another p8.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:16:30 -05:00
TowstyandCursor 4546aa5f61 Make library hide/reveal instant instead of rewriting the whole catalog.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:05:04 -05:00
TowstyandCursor e7298d9693 Give video extensions the same pre-text, prompt, and post-text fields as the main form.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:01:20 -05:00
TowstyandCursor c4e18eeb2c Restore pre-text and post-text with Use as input and Details.
Library items already stored those fields, but Details showed one blob and Use as input left the form's empty pre/post in place.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 14:51:35 -05:00
TowstyandCursor c20229da0e Fix Coolify build: import watchComfyJob from watch.ts.
Extensions imported watch helpers from comfyLifecycle after they moved, so npm run build failed and every deploy since this morning rolled back.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 09:05:40 -05:00
TowstyandCursor 1d29296a6f Keep Output on the generating clip when another job is queued.
Queued generate/extend no longer hijacks the live progress bar, and Generate Extension stays clickable so another extension can wait in the job queue.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 08:59:04 -05:00
TowstyandCursor 1314e8e89f Let failed studio jobs retry instead of sitting in the queue with only Remove.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 08:19:21 -05:00
TowstyandCursor bdec8872b6 Route Coolify through a scanned Comfy proxy instead of pinning hopped listen ports.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 08:04:11 -05:00
TowstyandCursor 2ae5f6fb2e Fix Comfy wake: launch when HTTP is down instead of treating leftover Python as already booting.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 07:58:50 -05:00
TowstyandCursor aa2cefbcf2 Keep queueing video extensions while a clip is already generating.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 07:04:39 -05:00
TowstyandCursor b1b005669d Keep the extension prompt editable while the last frame loads.
The box was disabled for last-frame extract and a stuck videoBusy flag, so typing died after a finished job.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 00:10:52 -05:00
TowstyandCursor d64a25bbb7 Let the studio library fill the same height as Input.
The right column was stuck to the viewport, so the list only had a sliver left. Both columns now stretch together and the library scrolls after that.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 22:53:23 -05:00
TowstyandCursor c856d30b50 Stop the empty MP4 box from crushing the studio library.
With no clip loaded, the output frame no longer reserves a full video aspect, so the library list can scroll more than one card.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 22:50:38 -05:00
TowstyandCursor 03687b0bd6 Let library prompt previews escape the video tile.
The info popover was clipped to the card, so the prompt sat inside the thumbnail frame instead of over the page.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 21:51:34 -05:00
TowstyandCursor 6b93ee951c Recover a finished clip after the site drops the live job.
Saving the MP4 used to freeze Node, which made xAIGen unreachable and left the player empty even though the library already had the video.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 21:20:09 -05:00
TowstyandCursor a705610721 Refuse to start Comfy while AITraining has the GPU.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 20:53:52 -05:00
TowstyandCursor e248eb26d8 Fix video generate 500 from a leftover promptRaw log.
The pre/prompt/post split renamed the variable but one console.info still used the old name, which crashed POST /api/generate on xAIGen.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 20:18:25 -05:00
TowstyandCursor 7bcd23fcc5 Let xAIGen accept backup ingest without a browser login.
The 401 was the session wall, not a missing token. The ingest route now uses the shared Bearer secret, and both apps default that secret so Coolify vars are optional.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:35:14 -05:00
TowstyandCursor f25e1bcc8a Spell out which Coolify backup vars belong on AIGen vs xAIGen.
A URL in BACKUP_INGEST_TOKEN was treated as a missing token. Errors now say to put the URL on AIGen and the same secret on both apps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:14:34 -05:00
TowstyandCursor 8b414044cd Let every thumbwheel accept typed values and line the image dials up.
Drop the how-to copy under duration and CFG, keep only the CFG default, and label megapixels so that wheel sits on the same row as steps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 19:11:02 -05:00
TowstyandCursor 0ab42f488b Show Send to Backup on AIGen output and library stills.
The control was hidden until BACKUP_STUDIO_URL was set, so it never appeared next to Send to Refine.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 18:53:37 -05:00