Repository navigation
fix(generate-3d): steer the mesh-edit route by template description and get_template_schema - #56
Open
mattmillerai wants to merge 1 commit into
Open
mattmillerai wants to merge 1 commit into
mattmillerai wants to merge 1 commit into
Conversation
…nd get_template_schema
The mesh-edit step told the agent to pick a `search_templates({ q: "3d" })`
result "whose nodes include Load3D". List rows carry no node types, the
mesh-input templates rank past the default page of 8 for that query, and none
of them retextures. Search the 3D tag with a page large enough to cover the
set, shortlist by description (takes an uploaded model as input), confirm
Load3D via get_template_schema, and set its model_file override. When no
template performs the edit, fall back to a hand-built workflow wired from
Load3D's model_3d output before telling the user it cannot be done.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Warning Review limit reached
This review includes 2 billable files and costs up to $0.50.
Reviews can continue after your included limit without a manual trigger. An admin must approve usage-based billing. Or wait 41 minutes for your next included review. View limit details
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ELI5
When someone asks the assistant to change a 3D model it already made, the instructions told it to filter search results on information the search never shows, and pointed it at a retexture option that does not exist. Now it can find the right templates from what the search does show, check them before running, and still build the edit by hand when no template fits.
Summary
Rewrites the mesh-edit sentence of step 11 in both copies of the generate-3d instructions (
skills/comfy-generate-3d.mdandclaude-code/commands/generate-3d.md). The two lines are still byte-identical.search_templates({ q: "3d" })and "pick one whose nodes includeLoad3D(the retexture, part-split and retopology ones)".search_templateslist rows have nonodesfield, so the agent can't filter on them. Forq: "3d"the mesh-input templates rank well past the default page of 8. And no bundled template retextures a mesh.tag: "3D", limit: 50, then shortlist by adescriptionthat says the template takes an uploaded model or mesh as input. Before running, confirmclass_type: "Load3D"withget_template_schemaand override itsmodel_fileviarun_templateinput_overrideswith theuse_previous_outputfilename. No template names are hard-coded, which follows the authoring rule.Judgment call (deviation from the suggested wording)
The suggested replacement ended with "If no such template performs the edit the user asked for (for example retexturing), say so plainly instead of forcing one." That tells the user the capability doesn't exist, so I checked whether it really doesn't. It does exist. The live node catalog has a partner texture-edit node in
partner/3dthat takes a 3D model file plus a prompt, andLoad3Doutputs amodel_3d(FILE_3D) that can be wired into it. So the final clause now falls back to step 2 instead:search_nodeswithcategory: "partner/3d"or"3d"plus aqfor the edit (e.g. "texture"), pick a node that takes a 3D model file, and wireLoad3D'smodel_3dinto it. Only if no node performs the edit does it say so plainly.A typed
input_type: "FILE_3D"filter would not work here. The node declares the combined typeFILE_3D_FBX,FILE_3D, andsearch_nodesmatches the type string exactly. Thecategoryfilter is a prefix match, sopartner/3ddoes reachpartner/3d/<provider>.Testing
claude plugin validate ./claude-code: passed.sdk-skill-smokecovers only the comfy-sdk skill, not these files, so it was not run.search_templatesacceptstagandlimit(max 100).3Dtag, solimit: 50covers the whole set.Load3D. Each description says "Upload a 3D model…" or "Input a dense mesh…", so the description-based shortlist finds them.Load3Doverride input ismodel_file.search_templatesanddescriptiononly in a general way, and none of it describes the old wording.Residual
skills/comfy-generate-3d.mdin the hosted MCP server's bundled skills data still has the old wording. Refreshing it is a separate follow-up and is deliberately not part of this PR.q: "3d"for the broader generator search. That is fine for generating a model and was left alone. Only the mesh-edit route needed the tag and larger page.Load3D→ texture-edit node workflow end to end, and that node's tooltip says it expects FBX input under 100k faces. A GLB fromuse_previous_outputmay need converting, or may be rejected.Provenance
model_fileinput and texture-edit node reachability checked against the MCP server's main source and bundled catalog (read-only)🤖 Generated with Claude Code