blender-syntax-addons

Generate Blender addon code with correct registration and packaging syntax.

30|4|Updated Mar 5, 2026
One-click install
npx skills add https://github.com/Impertio-Studio/Blender-Bonsai-ifcOpenshell-Sverchok-Claude-Skill-Package --skill blender-syntax-addons-impertio-studio
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: blender-syntax-addons
Source: https://github.com/Impertio-Studio/Blender-Bonsai-ifcOpenshell-Sverchok-Claude-Skill-Package/tree/main/skills/blender/syntax/blender-syntax-addons
Command: npx skills add https://github.com/Impertio-Studio/Blender-Bonsai-ifcOpenshell-Sverchok-Claude-Skill-Package --skill blender-syntax-addons-impertio-studio

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill prevents common Blender addon syntax and packaging failures caused by mixing legacy and extension systems incorrectly, missing required lifecycle functions, or breaking Blender’s registration rules.

Core Features & Use Cases

  • Legacy vs extension correctness: Guides choosing between bl_info (Blender < 4.2) and blender_manifest.toml (Blender 4.2+ extensions).
  • Reliable register/unregister lifecycle: Ensures deterministic addon startup/shutdown and correct teardown order.
  • Safe multi-file structure & class naming: Enforces relative imports, reload-ready legacy patterns, and Blender’s {ADDON}_{TYPE}_{name} conventions.
  • AddonPreferences best practices: Uses bl_idname = __package__ to ensure preferences show up and can be accessed reliably.
  • Packaging & distribution checks: Covers extension validation/build steps and rules like bundling wheels instead of runtime pip installs.
  • Use Case: You want to migrate an existing Blender addon to a Blender 5.x extension without breaking registration, preferences, or dependencies across versions.

Quick Start

Tell the AI to generate a multi-file Blender addon skeleton that supports both Blender <4.2 (with bl_info) and Blender 4.2+ (with blender_manifest.toml), including correct register()/unregister() order, AddonPreferences using __package__, and safe relative imports.

Frequently Asked Questions about blender-syntax-addons

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I migrate a legacy Blender addon with bl_info to a blender_manifest.toml extension?

Migrating a legacy Blender addon to an extension requires replacing bl_info with a blender_manifest.toml file for Blender 4.2+. This enforces correct extension metadata, maintains register/unregister lifecycle functions, and uses relative imports to prevent packaging errors across versions.

Why does my Blender addon fail to register or unregister correctly during shutdown?

Addon registration failures usually stem from breaking Blender's registration rules or missing deterministic lifecycle functions. Enforcing a correct register/unregister teardown order and proper class naming conventions ensures reliable addon startup and shutdown behavior.

What is the correct way to structure a multi-file Blender addon with AddonPreferences?

Structuring a multi-file Blender addon requires safe relative imports and reload-ready legacy patterns. For AddonPreferences, use bl_idname = __package__ to ensure preferences show up correctly and can be accessed reliably across different Blender versions.

Can I build a Blender addon that supports both Blender 3.x legacy systems and 4.2+ extensions?

Yes, you can build a multi-file Blender addon skeleton supporting both. It uses bl_info for Blender <4.2 and blender_manifest.toml for Blender 4.2+ extensions, while maintaining correct register/unregister order and AddonPreferences using __package__ across versions.

What are the packaging and distribution requirements for Blender 4.2+ extensions?

Blender extension packaging requires passing validation and build steps, including bundling wheels instead of performing runtime pip installs. Following extension packaging guardrails ensures your addon meets the distribution rules introduced for Blender 4.2+.