# @isis/3d-comfyui-nodes

Typed ComfyUI 3D node and workflow catalog for Isis.

## Purpose

`@isis/3d-comfyui-nodes` is the Phase 71 domain package for ComfyUI-native 3D
generation graphs. The scaffold intentionally mirrors the `71.9.x` backlog so
subsequent tasks can land without reorganizing the package:

- `nodes`: model-family node descriptors, ComfyUI category planning, and
  integration references into existing Isis 3D runtimes
- `workflows`: workflow-template descriptors that compose node families with
  downstream post-pipeline and export capabilities

## Implemented Surface

`71.9.1.1` establishes the Nx project scaffold, package exports, TypeScript and
Vitest configuration, typed library manifest, and curated catalogs for the
planned node families and workflow templates.

The current scaffold is intentionally not an empty shell. It already captures:

- the exact Phase `71.9.1.x` node families that still need implementation
- the exact Phase `71.9.2.x` workflow templates that still need implementation
- ComfyUI category planning for generation, texturing, post-processing, and
  export nodes
- concrete integration references into `@isis/3d-inference-local`,
  `@isis/ai-texturing`, `@isis/3d-post-pipeline`, and the existing Python
  `@isis/comfyui-nodes` control-plane package

That gives the next tasks a stable home for actual ComfyUI node definitions,
widgets, workflow JSON exports, and packaging hooks.

`71.9.1.2` now adds the first executable node family in
`src/nodes/trellis-2-node.ts`. The package now provides:

- validated `@isis/comfyui-sdk` `NodeSpec`s for `TRELLIS.2 Text to 3D` and
  `TRELLIS.2 Image to 3D`
- an execution surface that routes requests across the existing local TRELLIS
  text runtime, local TRELLIS.2 image and multi-image runtimes, local TRELLIS.2
  GLB/GLTF export, and the HTTP `TrellisProvider` bridge
- explicit provider/runtime option coverage for quality presets, topology
  controls, sparse/SLAT steps, multi-image conditioning strategy, and textured
  delivery

`71.9.1.3` adds the Hunyuan3D 2.1 node family in
`src/nodes/hunyuan-3d-2-1-node.ts`. The package now provides:

- chainable `Hunyuan3D 2.1 Text to Shape` and `Hunyuan3D 2.1 Image to Shape`
  nodes over the local Hunyuan runtime
- a separate `Hunyuan3D 2.1 Texture` node over the local Hunyuan3D-Paint stage
- normalized custom result types so shape generation and texture synthesis can
  connect directly inside ComfyUI graphs

`71.9.1.4` adds the SF3D node family in `src/nodes/sf3d-node.ts`. The package
now provides:

- an executable `SF3D Image to 3D` node over the released local Stability AI
  fast single-image textured GLB runtime
- explicit `SF3D UV Unwrap` and `SF3D Illumination Texture` helper nodes over
  the local UV-layout and relight-safe albedo export paths
- normalized SF3D execution bundles so fast preview, UV inspection, and
  texture-review workflows can consume a consistent result shape

`71.9.1.5` adds the SPAR3D node family in `src/nodes/spar3d-node.ts`. The
package now provides:

- an executable `SPAR3D Image to 3D` node that surfaces both the textured GLB
  and the intermediate editable PLY point cloud
- a `SPAR3D Point Cloud Edit` node over the released point-cloud editing
  surface, including translate, scale, and recolor operations
- persistent `SPAR3D Session` and `SPAR3D Render` nodes that manage warmed
  preview-loop state through serializable session tokens, so ComfyUI graphs can
  preview, finalize, reset, and close interactive point-cloud sessions

`71.9.1.6` adds the TripoSG node family in `src/nodes/triposg-node.ts`. The
package now provides:

- an executable `TripoSG Image to 3D` node over the released single-image
  rectified-flow runtime with explicit guidance, FlexiCubes remesh, and
  MeshAnything cleanup controls
- a `TripoSG Scribble to 3D` node over the published TripoSG-scribble checkpoint
  with real prompt-plus-sketch conditioning and prompt/scribble confidence
  controls
- a `TripoSG Multi-View Consistency` node that reconstructs per-view candidates,
  scores cross-view agreement, and returns the geometric medoid plus candidate
  metrics for graph-side inspection

`71.9.1.7` adds the Sparc3D node in `src/nodes/sparc3d-node.ts`. The package now
provides:

- an executable `Sparc3D Image to 3D` node over the local operator-bundle
  high-resolution pipeline with honest `256^3`, `512^3`, and `1024^3` planning
- explicit `watertight` versus `open-surface` controls that surface the
  corresponding topology-validation reports directly in the normalized result
- optional FlexiCubes remesh and MeshAnything V2 cleanup routing without hiding
  the geometry-contract tradeoffs that make Sparc3D useful for printable or
  thin-structure workflows

`71.9.1.8` adds the MeshAnything V2 node in `src/nodes/meshanything-v2-node.ts`.
The package now provides:

- an executable `MeshAnything V2 Remesh` node over the local MeshAnything
  remeshing pipeline instead of hiding topology cleanup inside upstream
  generation nodes only
- generic mesh-source resolution that can consume prior Isis result bundles,
  manual `{ mesh, meshFormat }` payloads, or readable OBJ/PLY/GLB file paths
- explicit face-budget, animation-ready edge-flow, Marching Cubes, and
  quad-dominant conversion controls with topology-quality comparison metadata in
  the normalized result bundle

`71.9.1.9` adds the Hunyuan3D-Paint node family in
`src/nodes/hunyuan3d-paint-node.ts`. The package now provides:

- an executable `Hunyuan3D-Paint Standalone` node over the local standalone
  texturing pipeline for arbitrary upstream OBJ, PLY, or GLB meshes
- a strict `Hunyuan3D-Paint Retexture` node that repaints existing OBJ or GLB
  assets while surfacing geometry-preservation and UV-preservation validation
- generic mesh-source resolution plus normalized completeness metadata so
  texture-authoring graphs can chain any earlier Isis mesh result into a
  consistent painted-mesh bundle

`71.9.1.10` adds the mesh export node in `src/nodes/mesh-export-node.ts`. The
package now provides:

- an executable `Mesh Export` node over the real `@isis/3d-post-pipeline`
  exporters instead of a placeholder format switch
- source normalization that can consume structured geometry, prior Isis result
  bundles, readable OBJ or PLY paths, or GLB, OBJ, and PLY bytes with an
  explicit format override
- format-honest controls for Draco and KTX2 GLB compression, FBX rig metadata,
  USDZ Quick Look validation and USDA retention, plus OBJ PBR channel-map
  derivation and legacy Phong fallback

`71.9.2.1` adds the first executable workflow template in
`src/workflows/text-to-game-asset-workflow.ts`. The package now provides:

- a canonical `Text-to-Game-Asset` workflow definition grounded in the repo’s
  `@isis/workflows` schema instead of another descriptor-only placeholder
- explicit stage metadata for TRELLIS.2 text generation, MeshAnything V2
  cleanup, Hunyuan3D-Paint surfacing, and final GLB export packaging
- typed package exports so downstream tooling can list implemented workflow
  templates separately from the remaining planned Phase 71 flows

`71.9.2.2` adds the `Image-to-3D-Print` workflow template in
`src/workflows/image-to-3d-print-workflow.ts`. The package now provides:

- a canonical print-oriented workflow definition that keeps Sparc3D as the only
  ComfyUI node stage and models manifold repair plus STL export as explicit
  downstream post-pipeline stages
- print-honest delivery metadata that documents the geometry-only STL handoff,
  the repair report sidecars, and the reference QA artifacts instead of
  pretending the workflow ships textured runtime output
- typed package exports so downstream tooling can distinguish implemented print
  workflows from the remaining avatar, sketch, and batch-template backlog

`71.9.2.3` adds the `Photo-to-Avatar` workflow template in
`src/workflows/photo-to-avatar-workflow.ts`. The package now provides:

- a canonical avatar workflow definition that chains Hunyuan3D 2.1
  image-to-shape and texture stages into explicit universal-rigging and VRM
  export steps instead of leaving the avatar path as a descriptor-only
  placeholder
- stage metadata that documents the handoff from mesh generation into humanoid
  auto-rigging, facial and corrective blend-shape authoring, and final VRM 1.0
  delivery semantics
- typed exports and manifest metadata so downstream tooling can discover the
  implemented avatar workflow and its `@isis/universal-rigging` dependency

`71.9.2.4` adds the `Sketch-to-3D` workflow template in
`src/workflows/sketch-to-3d-workflow.ts`. The package now provides:

- a canonical sketch pipeline that uses TripoSG-scribble for coarse concept
  validation, reruns the sketch through SF3D UV refinement, preserves the
  refined layout through Hunyuan3D-Paint retexturing, and finishes with explicit
  GLB packaging
- typed workflow metadata that documents the honest TripoSG-to-SF3D bridge: SF3D
  remains image-conditioned in the current node surface, so refinement reruns
  the validated sketch input instead of pretending it consumes the coarse mesh
  directly
- export and manifest coverage so downstream tooling can treat sketch-driven GLB
  generation as an implemented workflow rather than a remaining placeholder

`71.9.2.5` adds the `Batch Asset Kit` workflow template in
`src/workflows/batch-asset-kit-workflow.ts`. The package now provides:

- a canonical batch workflow that starts from a shared style reference and
  ordered asset list, extracts a reusable style profile, plans batch-safe
  per-item execution, and models TRELLIS.2, MeshAnything V2, Hunyuan3D-Paint,
  and dual mesh-export lanes as one executable template
- explicit batch-orchestration and style-consistency metadata grounded in the
  repo’s existing `@isis/3d-asset-library`, `@isis/3d-inference-local`, and
  `@isis/operation-orchestrator` surfaces instead of treating “matching set”
  generation as vague prompt folklore
- full catalog, manifest, and package-root export coverage so downstream tooling
  can treat the entire Phase 71 ComfyUI workflow set as implemented rather than
  leaving the batch kit path as the last descriptor-only placeholder
