aec-core-bim-workflows
Installation
SKILL.md
Cross-Technology BIM Workflows
Scope: End-to-end workflows combining IfcOpenShell, Bonsai, and Blender Dependencies:
ifcos-impl-creation,bonsai-core-architectureVersion coverage: Blender 3.x-5.x | IFC2X3/IFC4/IFC4X3 | Bonsai v0.8.x
Critical Warnings
- ALWAYS determine the execution context first: standalone Python (IfcOpenShell only) vs Blender Python (bpy available) vs Bonsai-loaded (IfcStore available). The API surface differs per context.
- ALWAYS use
ifcopenshell.api.run()for IFC mutations in ALL contexts. NEVER modify IFC entity attributes directly — this bypasses relationship management and breaks graph integrity. - ALWAYS call
bpy.ops.bim.edit_object_placement()after modifying a Blender object's location/rotation/scale when Bonsai is active. Blender transforms do NOT auto-sync to IFC. - NEVER mix
IfcStore.get_file()(Bonsai context) withifcopenshell.open()on the same file simultaneously. Bonsai owns the in-memory IFC graph — opening a second handle creates divergent state. - NEVER use
blenderbim.*imports. The package was renamed tobonsai.*in v0.8.0 (2024). - ALWAYS set up units (
unit.assign_unit) and geometric contexts (context.add_context) before creating any geometry. Geometry without context or units is ambiguous and may render incorrectly. - NEVER use
void.add_opening()in Bonsai v0.8.0+. Usefeature.add_feature()instead.
Decision Tree: Choose Your Execution Context
Related skills
More from openaec-foundation/blender-bonsai-ifcopenshell-sverchok-claude-skill-package
blender-syntax-materials
>
3blender-core-gpu
>
3blender-agents-code-validator
>
3blender-syntax-panels
>
3blender-errors-data
>
3blender-syntax-data
Covers Blender data management including collections, library overrides, asset system, linked libraries, BlendDataLibraries, data block creation and removal, fake users, and data transfer between files. Activates when managing Blender collections, linking/appending data, working with library overrides, or using the asset system.
3