blender-rules

Installation
SKILL.md

Blender Developer Tools rules (Claude Code)

Apply these when writing or reviewing Blender Python. Each rule links to the full version with Wrong/Right examples.

always-free-bmesh

Flag bmesh.new() calls without a paired bm.free() in a try/finally block. Blender frees an unreferenced BMesh only when its Python wrapper dies, which a traceback, global, closure or modal operator can delay for the whole session; an explicit free() in finally releases it deterministically.

Applies to: **/*.py. Full rule: rules/always-free-bmesh.mdc.

no-unapplied-modifiers-on-export

Flag an export call on objects that still carry unapplied modifiers when the export arguments do not request evaluated geometry. The engine then receives the authored cage, not the modifier result.

Applies to: **/*.py. Full rule: rules/no-unapplied-modifiers-on-export.mdc.

Installs
2
GitHub Stars
19
First Seen
Oct 7, 2026