agentleFS
TraX22TraX22/HydraOps-Skills/comfyui-image-to-3d/SKILL.md

comfyui-image-to-3d

Skill1 starsChanged 38 days agoApache-2.0View on GitHub

Turns an image into a 3D model (GLB) with the user's local ComfyUI - choosing the right saved workflow for the image, running it with the values the user saved, picking the generator when a workflow offers two, lowering the face count only when the user asks for a lighter model, and reporting the result honestly. Use when the user attaches or names an image and asks for a 3D model, mesh or GLB of what it shows, or asks to reconstruct an object in 3D from a picture. Needs the comfy_workflows tool and the ComfyUI connection.

The file

We split this skill into the rules it gives an agent

8 rules. About 0 are common, 4 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If you have neither comfy_workflows nor the ComfyUI connection's tools, stop and say so: the user installs the ComfyUI connection (Tools → …

    line 22
  2. Distinctive:

    If two saved workflows fit and nothing tells them apart, ask.

    line 39
  3. Very specific:

    If none fits, say so and name what the user has.

    line 40
  4. Distinctive:

    If the object is cut off by the edge or hidden behind something, say so before running: the generator invents what it cannot see.

    line 51
  5. Very specific:

    The user's values stay: Run the workflow with the values the user saved.

    line 63
  6. Distinctive:

    A lighter model, only when asked: When the user explicitly asks for a light model, names a face count, or says it is for a game, the web or …

    line 70
  7. Distinctive:

    Do not switch to another workflow to get around it.

    line 91
  8. Very specific:

    If the user wants it cleaned up, reduced further or exported for an engine, that is work for Blender (the blender-game-export skill).

    line 105

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Image to 3D model with ComfyUI

ComfyUI reconstructs a mesh from an image with a local model (Trellis.2, Pixal3D, Hunyuan3D…). You do not model anything: you choose the workflow, run it and deliver the file. It runs on the user's GPU, costs nothing and takes from a few minutes to a quarter of an hour.

The mechanics are already in your tools: comfy_workflows lists the workflows the user saved, prepares one with the attached image and collects the result, and tells you each next step; the ComfyUI connection validates, runs and waits. Follow what those tools return. This skill is about the choices they leave to you.

If you have neither comfy_workflows nor the ComfyUI connection's tools, stop and say so: the user installs the ComfyUI connection (Tools → Connections), gives this agent comfy_workflows, comfyui_validate_workflow, comfyui_run_workflow and comfyui_job, and keeps ComfyUI open.

Which workflow

comfy_workflows with action: "list" shows what the user saved. Choose by what the image is:

The image isUse a workflow for
One picture of one object (a photo, a render, a concept)image to 3D model, single image (a multi-view workflow the user names works with one picture too)
A sheet with several views of the same object (front, side, back; a character turnaround)multi-view to 3D model
Several separate attached images of the same objectmulti-view, if the workflow reads several files; otherwise ask which image to use
  • A workflow the user names wins over your choice.
  • If two saved workflows fit and nothing tells them apart, ask; do not run both.
  • If none fits, say so and name what the user has. Only then offer a template from Comfy's online gallery (comfyui_search_templates, if you have it), and tell the user beforehand that the gallery is content from the internet, so the app will ask them to approve each step after you read it.

What to prepare

  • Pass the attached image in files, with the name the conversation shows for it.
  • One object per run. If the picture shows several objects, ask which one, or say that the model will contain the whole scene as a single piece.
  • A picture with a plain background and the whole object in frame gives the best model. If the object is cut off by the edge or hidden behind something, say so before running: the generator invents what it cannot see.

Choices inside a workflow

comfy_workflows quotes the notes the workflow's author left. Read them: they say what the workflow's switches do.

  • Two generators behind a switch (a workflow that can use either of two models): leave it as the user saved it. Change it only when they name the generator they want, with comfyui_list_workflow_slots to find the switch and comfyui_set_workflow_slot to set it, and say in the report which one ran.
  • The user's values stay. Run the workflow with the values the user saved. Do not change target_face_count, the resolution, the sampler or anything else on your own, not even when the picture looks simple or the last run gave a heavy model: a saved workflow is the user's decision, and a value you lower "to help" produces a model they did not ask for (a reconstruction decimated far below its detail comes out as a crumpled shape, not a lighter copy). If you think a lighter model would serve them, say so in the report and offer it; do not do it.
  • A lighter model, only when asked. When the user explicitly asks for a light model, names a face count, or says it is for a game, the web or a phone, lower the face count BEFORE running, in two calls on the prepared file:
    1. comfyui_list_workflow_slots, and in its answer find the slot whose name is target_face_count (it belongs to a DecimateMesh node); copy its address.
    2. comfyui_set_workflow_slot with stdout: false and [{"address": "<that address>", "value": 50000}] for a prop in a game (150000 for a hero object the camera gets close to). Never go below 50000 unless the user names a lower number themselves. Then validate and run as usual, and say in the report what you set. If the workflow has no such slot, or you lack those two tools, run it as it is and say plainly that the model is heavy for a game and by how much.
  • One picture is enough for a multiview workflow. A workflow that crops several views out of its input works with a single photo too: the crops that fall outside the picture come out empty and the model is built from the one real view. Do not go looking for a sheet of views or try to make one; run it with the picture the user gave.

When it does not run

  • A model or node is missing: name the files the validation reports and stop. The user installs them from ComfyUI (opening the workflow there offers the downloads). Do not switch to another workflow to get around it.
  • The job fails: comfy_workflows with action: "collect" reports the node and the reason. Out of memory is the common one: say so, and offer to try again with a lower resolution or with the other generator if the workflow has one. Do not retry by yourself more than once.
  • A wait times out: the job is still running. Wait again; never start it twice.

The report

  • The file collect returned, its size and its triangle count, exactly as given.
  • Which workflow ran, and anything you changed in it.
  • You have not seen the model: say that it was generated, not how it looks.
  • One line on what to expect: the sides the picture does not show are invented by the generator, and the result is a single mesh with baked textures, not separate parts.
  • If the user wants it cleaned up, reduced further or exported for an engine, that is work for Blender (the blender-game-export skill).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.