mirror of
https://github.com/Comfy-Org/comfy-skills.git
synced 2026-11-04 23:37:45 +00:00
[PR #39] feat(skills): add technique-multi-scene-comic recipe #38
Labels
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Comfy-Org/comfy-skills#38
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/Comfy-Org/comfy-skills/pull/39
Author: @mattmillerai
Created: 10/5/2026
Status: 🔄 Open
Base:
main← Head:matt/be-18920-multi-scene-comic📝 Commits (6)
0a4f207feat(skills): add technique-multi-scene-comic recipe0bc514dfix(skills): only suggest panel templates with enough reference slots24eedf1fix(skills): fill every image input in the comic recipe and wait on batches12ee72cfix(skills): word the text-only reference step positively for the guide lint957b0f2fix(skills): cover empty scenes, long comics and expiring links in the comic recipe968f517fix(skills): say how a partner_generate reference reaches the sheet template📊 Changes
1 file changed (+56 additions, -0 deletions)
View changed files
➕
skills/technique-multi-scene-comic.md(+56 -0)📄 Description
ELI5
This adds a step-by-step recipe that helps the assistant make a comic or storyboard with the same characters looking the same in every panel. For each panel it picks an image tool with exactly as many picture inputs as there are characters, and fills every input. That way no character's look gets dropped and no stray sample picture slips into a panel.
Summary
Adds
skills/technique-multi-scene-comic.md. The Comfy Cloud MCP server'sget_creative_techniqueserves thetechnique-*entries mirrored from this directory. Until nowtechnique-combine-peoplewas the only one, so a multi-scene comic / manga / 漫剧 request had no recipe to land on.The file has the same shape as
technique-combine-people.md: no frontmatter, a one-sentence first line ending: $ARGUMENTS, thenFollow these steps exactly:and six## Step Nsections. It is about 6 KB.The recipe:
partner_generateand is chained into the sheet template withuse_previous_output. Ifpartner_generatereturns a direct-dispatch id that cannot be chained, the reference is downloaded and re-uploaded withupload_fileinstead. Keep the sheet's job id as the identity anchor.use_previous_output. Each scene uses the template whose LoadImage count equals its reference count (api_flux24,api_bfl_flux_1_kontext_multiple_images_input3,api_nano_banana_pro2,api_kling_o3_image2,flux_kontext_dev_basic1), and every LoadImage is overridden, because an untouched one runs with the template's demo picture. With more than four characters, the sheets are packed into fully filledutility_image_stitch2x2 grids until the count fits a template exactly. A scene with no characters is made with text-to-image instead. Scenes beyond three go throughsubmit_batch+wait_for_batch.Verification against the server
data/templates.jsonfromComfy-Org/comfy-cloud-mcp-server(main, today). Each of the 13 template names in the recipe matches"name": "<template>"exactly once.search_templates,get_template_schema,run_template,upload_file,use_previous_output,wait_for_job,get_output,submit_batch,wait_for_batch,get_batch_output,partner_generate) appear as tool names in the server source.data/skills.json, the same wayrefresh-skills.ymlwould, and ran the server's own suites: the two guide guards the refresh workflow runs plus every test that reads the skills snapshot. All passed.guide-negative-claimsflagged a sentence ("…not by re-uploading"). I reworded it as a positive instruction and it now passes. Without that change, the refresh auto-PR would have opened as a draft.Judgment calls / deviations from the planned text
utility_image_stitch("Image Stitch 2x2 Grid", 4 LoadImage slots, no model). It does put four panels on one page. So Step 6 sends the user to it when they ask for a page. It only states the real limits: no speech balloons, no custom borders, four panels per page. I did not ship the "nothing exists" line.template_seedance2_storyboard_to_videosays it generates its own 8-panel storyboard from a text prompt. The server's usage guide for it says more: the video stage reads the storyboard image in its own LoadImage input, so the board it draws in the same run goes unused. The recipe fills that input with a page stitched from the Step 3 panels (or the user's own board), fills the other input with the character sheet, and overrides both prompts. Panel chaining goes throughtemplates-6-key-frames(6 LoadImage slots, verified) or the FLF2V templates.partner_generate, then builds the sheet. A reference-image template would have run its demo inputs here.api_google_nano_banana2_image_edit(1 LoadImage slot),image_qwen_image_edit_2509(1) andapi_kling_omni_image(0). None of them can take two character sheets, so they were replaced. The second round found that spare inputs run with demo pictures. The recipe now requires an exact fit and fills every image input, including in the contact sheet (3 inputs),templates-6-key-frames(exactly 6), storyboard-to-video (2) and a short last page.get_template_schemais stated as the source of truth for whether a template exists and how many inputs it has.get_nodeis not used, because no step needs it.Residual
skills/as legacy/frozen. Its authoring rule also says commands should not hard-code template names. The server'srefresh-techniques.ymllikewise names a futuretechniques/directory as the home for recipes. Butget_creative_techniquetoday readstechnique-*fromdata/skills.json, which mirrorsskills/(checked in the server'ssrc/techniques.ts). Soskills/is the only place a recipe gets served from right now. I added a preamble line telling the agent to fall back tosearch_templatesif a named template has been retired. Oncetechniques/exists, a maintainer should decide whether to move this recipe andtechnique-combine-peoplethere.use_previous_outputfilenames work in each listed template's LoadImage slots, and whether the reference grids keep characters apart. Everything above was checked against the catalog metadata and the server's static tests only.templates-6-key-framesmatches the catalogmodelsfield.refresh-skills.ymlcron should open the auto-PR that addstechnique-multi-scene-comictodata/skills.json. That happens after this PR and I did not observe it.Provenance
data/templates.json. The LoadImage counts the recipe states (panel candidates 4/3/2/2/1; stitch 4; contact sheet 3; 6-key-frames 6; storyboard-to-video 2) match each template's catalogio.inputs.957b0f2. It was not re-run on the Step 2 handoff sentence added at the current head.utility_image_stitchroute, which does not stitch a short last page.partner_generatestep makes the first reference, and also any scene with no characters.🤖 Generated with Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.