# roble3/cc-blender-skill architecture

> Architecture diagram of the GitHub repository roble3/cc-blender-skill, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-09). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/roble3/cc-blender-skill
- Repository: https://github.com/roble3/cc-blender-skill

## Overview

cc-blender-skill is an agent-portable pack of chain-loadable Blender skills, not a standalone Blender application. A user prompt is routed by an agent to the text-to-blender orchestrator, which loads task skills; generated Python is sent through a selected Blender MCP backend to Blender, producing scene or export outputs. Distinct branches cover reference-locked reconstruction, wireframe conversion, production workflows, export, and quality refinement. The README supports the high-level orchestration and backend flow; links among unsampled skill internals are omitted rather than inferred.

Main entry points: [`plugin/skills/text-to-blender/SKILL.md`](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/text-to-blender/SKILL.md) (Prompt orchestrator), [`plugin/skills/reference-to-3d/SKILL.md`](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/reference-to-3d/SKILL.md) (Reference reconstruction), [`plugin/skills/blender-export/SKILL.md`](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-export/SKILL.md) (Export workflows), [`plugin/skills/blender-materials/SKILL.md`](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-materials/SKILL.md) (Materials and UVs)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_orchestration["Prompt orchestration"]
  node_orchestrator["Prompt orchestrator<br/>[SKILL.md]"]
  node_harmonizer["Skill harmonizer<br/>[SKILL.md]"]
end

subgraph group_production["Blender workflows"]
  node_modeling["Modeling<br/>[SKILL.md]"]
  node_materials["Materials and UVs<br/>[SKILL.md]"]
  node_lighting["Lighting and cameras<br/>[SKILL.md]"]
  node_rendering["Rendering<br/>[SKILL.md]"]
  node_animation["Animation<br/>[SKILL.md]"]
  node_export["Export workflows<br/>[SKILL.md]"]
  node_collision["Collision preflight"]
  node_multires["Multires cage export"]
  node_wireframe["Wireframe conversion"]
end

subgraph group_reconstruction["Reference reconstruction"]
  node_reference["Reference reconstruction<br/>[SKILL.md]"]
  node_manifest["Reference manifest"]
  node_segmentation["Part segmentation"]
  node_contour["Contour mesh recipe"]
end

subgraph group_validation["Validation and refinement"]
  node_fitloop["Multiview fit"]
  node_repair["Fit repair queue"]
  node_surfaceaudit["UV coverage audit"]
  node_autoloop["Quality refinement<br/>[SKILL.md]"]
end

subgraph group_execution["Blender execution"]
  node_backend["Blender MCP backend"]
  node_blender["Blender"]
  node_result["Scene or export"]
end

node_user(("User"))
node_agent(("Skill host"))

node_user -->|"prompts"| node_agent
node_agent -->|"loads skill"| node_orchestrator
node_orchestrator -->|"chain-loads"| node_modeling
node_orchestrator -->|"chain-loads"| node_materials
node_orchestrator -->|"chain-loads"| node_lighting
node_orchestrator -->|"chain-loads"| node_rendering
node_orchestrator -->|"chain-loads"| node_animation
node_orchestrator -->|"chain-loads"| node_export
node_orchestrator -->|"chain-loads"| node_wireframe
node_orchestrator -->|"chain-loads"| node_reference
node_orchestrator -->|"uses routing"| node_harmonizer
node_orchestrator -->|"routes refinement"| node_autoloop
node_export -->|"includes preflight"| node_collision
node_export -->|"includes workflow"| node_multires
node_reference -->|"supports manifests"| node_manifest
node_reference -->|"supports segmentation"| node_segmentation
node_reference -->|"supports contour meshes"| node_contour
node_reference -->|"supports fit loops"| node_fitloop
node_fitloop -->|"supports repair"| node_repair
node_materials -->|"supports coverage gate"| node_surfaceaudit
node_orchestrator -->|"sends Python"| node_backend
node_backend -->|"executes code"| node_blender
node_blender -->|"produces output"| node_result

click node_orchestrator "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/text-to-blender/SKILL.md"
click node_harmonizer "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-skill-harmonizer/SKILL.md"
click node_modeling "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-modeling/SKILL.md"
click node_materials "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-materials/SKILL.md"
click node_lighting "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-lighting/SKILL.md"
click node_rendering "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-rendering/SKILL.md"
click node_animation "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-animation/SKILL.md"
click node_export "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-export/SKILL.md"
click node_collision "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-export/scripts/collision_preflight.py"
click node_multires "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-export/scripts/multires_bake_export.py"
click node_wireframe "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/wireframe-to-3d/scripts/wireframe_analyzer.py"
click node_reference "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/reference-to-3d/SKILL.md"
click node_manifest "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/reference-analysis-validator/scripts/reference_manifest_compiler.py"
click node_segmentation "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/source-part-segmentation/scripts/seeded_part_masks.py"
click node_contour "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/contour-to-mesh/scripts/source_locked_skin_recipe.py"
click node_fitloop "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/multiview-fit-loop/scripts/multiview_fit_report.py"
click node_repair "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/fit-repair-optimizer/scripts/fit_repair_queue.py"
click node_surfaceaudit "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/closed-surface-uv-coverage/scripts/surface_texture_coverage_audit.py"
click node_autoloop "https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/quality-refinement-autoloop/SKILL.md"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_orchestrator,node_harmonizer,node_user toneBlue
class node_modeling,node_materials,node_lighting,node_rendering,node_animation,node_export,node_collision,node_multires,node_wireframe toneAmber
class node_reference,node_manifest,node_segmentation,node_contour toneMint
class node_fitloop,node_repair,node_surfaceaudit,node_autoloop toneRose
class node_backend,node_blender,node_result,node_agent toneIndigo
```

## Components

### Prompt orchestration

- [Prompt orchestrator](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/text-to-blender/SKILL.md): `plugin/skills/text-to-blender/SKILL.md`
- [Skill harmonizer](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-skill-harmonizer/SKILL.md): `plugin/skills/blender-skill-harmonizer/SKILL.md`

### Blender workflows

- [Modeling](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-modeling/SKILL.md): `plugin/skills/blender-modeling/SKILL.md`
- [Materials and UVs](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-materials/SKILL.md): `plugin/skills/blender-materials/SKILL.md`
- [Lighting and cameras](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-lighting/SKILL.md): `plugin/skills/blender-lighting/SKILL.md`
- [Rendering](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-rendering/SKILL.md): `plugin/skills/blender-rendering/SKILL.md`
- [Animation](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-animation/SKILL.md): `plugin/skills/blender-animation/SKILL.md`
- [Export workflows](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-export/SKILL.md): `plugin/skills/blender-export/SKILL.md`
- [Collision preflight](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-export/scripts/collision_preflight.py): `plugin/skills/blender-export/scripts/collision_preflight.py`
- [Multires cage export](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/blender-export/scripts/multires_bake_export.py): `plugin/skills/blender-export/scripts/multires_bake_export.py`
- [Wireframe conversion](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/wireframe-to-3d/scripts/wireframe_analyzer.py): `plugin/skills/wireframe-to-3d/scripts/wireframe_analyzer.py`

### Reference reconstruction

- [Reference reconstruction](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/reference-to-3d/SKILL.md): `plugin/skills/reference-to-3d/SKILL.md`
- [Reference manifest](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/reference-analysis-validator/scripts/reference_manifest_compiler.py): `plugin/skills/reference-analysis-validator/scripts/reference_manifest_compiler.py`
- [Part segmentation](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/source-part-segmentation/scripts/seeded_part_masks.py): `plugin/skills/source-part-segmentation/scripts/seeded_part_masks.py`
- [Contour mesh recipe](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/contour-to-mesh/scripts/source_locked_skin_recipe.py): `plugin/skills/contour-to-mesh/scripts/source_locked_skin_recipe.py`

### Validation and refinement

- [Multiview fit](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/multiview-fit-loop/scripts/multiview_fit_report.py): `plugin/skills/multiview-fit-loop/scripts/multiview_fit_report.py`
- [Fit repair queue](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/fit-repair-optimizer/scripts/fit_repair_queue.py): `plugin/skills/fit-repair-optimizer/scripts/fit_repair_queue.py`
- [UV coverage audit](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/closed-surface-uv-coverage/scripts/surface_texture_coverage_audit.py): `plugin/skills/closed-surface-uv-coverage/scripts/surface_texture_coverage_audit.py`
- [Quality refinement](https://github.com/roble3/cc-blender-skill/blob/main/plugin/skills/quality-refinement-autoloop/SKILL.md): `plugin/skills/quality-refinement-autoloop/SKILL.md`

### Blender execution

- **Blender MCP backend**
- **Blender**
- **Scene or export**

### Other components

- **User**
- **Skill host**

## Connections

- User → Skill host: prompts (evidence: `README.md`)
- Skill host → Prompt orchestrator: loads skill (evidence: `README.md`)
- Prompt orchestrator → Modeling: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Materials and UVs: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Lighting and cameras: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Rendering: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Animation: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Export workflows: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Wireframe conversion: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Reference reconstruction: chain-loads (evidence: `README.md`)
- Prompt orchestrator → Skill harmonizer: uses routing (evidence: `README.md`)
- Prompt orchestrator → Quality refinement: routes refinement (evidence: `README.md`)
- Export workflows → Collision preflight: includes preflight (evidence: `README.md`)
- Export workflows → Multires cage export: includes workflow (evidence: `README.md`)
- Reference reconstruction → Reference manifest: supports manifests (evidence: `README.md`)
- Reference reconstruction → Part segmentation: supports segmentation (evidence: `README.md`)
- Reference reconstruction → Contour mesh recipe: supports contour meshes (evidence: `README.md`)
- Reference reconstruction → Multiview fit: supports fit loops (evidence: `README.md`)
- Multiview fit → Fit repair queue: supports repair (evidence: `README.md`)
- Materials and UVs → UV coverage audit: supports coverage gate (evidence: `README.md`)
- Prompt orchestrator → Blender MCP backend: sends Python (evidence: `README.md`)
- Blender MCP backend → Blender: executes code (evidence: `README.md`)
- Blender → Scene or export: produces output (evidence: `README.md`)
