Tooluck logoTooluck
SKILL.md

blender-addon-development

Agent skill fromEL4CTEO/blender-skills

Write Blender 5.2 add-ons as extensions - blender_manifest.toml, operators/panels/menus/property groups/preferences, bpy.props rules after 5.0, undo/redo, modal and timer patterns, gpu drawing (no bgl), bundling Python wheels, CLI validate/build/install, testing headless, extensions platform publishing. Use when creating or fixing a Blender add-on, tool, or UI.

How to install blender-addon-development

install blender-addon-development
# install the blender-skills pack with the skills CLI
npx skills add EL4CTEO/blender-skills

# or add only this skill to Claude Code: copy the folder

skills/blender-addon-development/

# into

~/.claude/skills/blender-addon-development/ (all projects)

.claude/skills/blender-addon-development/ (one project)

skills/blender-addon-development/SKILL.md

MITFull file
1# Add-on (Extension) Development
2
3The execution model is in `blender-core`. Start from `assets/addon_template/` (validated, built, and registered in CI): `blender_manifest.toml`, `__init__.py`, `operators.py`, `ui.py`.
4
5## Procedure
61. Copy the template, then set `id` (lowercase_underscores, permanent), `name`, `tagline` (no trailing period, ≤ 64 chars), `maintainer`, `version` (semver), `license` (SPDX, GPL-3.0-or-later for code using bpy), and `blender_version_min = "4.2.0"` or higher if you use newer APIs (e.g. `"5.2.0"` for the GN `properties.inputs` API).
72. Write classes with the prefix convention `MYTOOL_OT_x` (operator), `_PT_` (panel), `_MT_` (menu), `_PG_` (property group), `_AP_` (preferences), `_UL_` (UI list). `bl_idname` for operators is `my_tool.verb_noun`.
83. Validate and build:
9 ```
10 blender --command extension validate ./my_tool
11 blender --command extension build --source-dir ./my_tool --output-dir ./dist
12 blender --command extension install-file -r user_default -e ./dist/my_tool-1.0.0.zip
13 ```
144. Test headless: register the package in-process, call operators with `temp_override`, and assert on data (see `tests/test_addon.py` in this repo).
15
16## Rules (extension-era, 5.x)
17- **Relative imports only** (`from . import ops`). The package name is decided by Blender, so preferences use `bl_idname = __package__`.
18- No `bl_info` (it's ignored for extensions). Everything goes in the manifest.
19…

Excerpt shown under the repository's MIT license.

More skills in blender-skills

Keep exploring

Similar skill repositories

thedotmack /

claude-mem
116k

Persistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More

CCCXGHGM+135 skills

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates