← 返回 Skills 市场
seekerzero

blender-add-on-development

作者 Seekerzero · GitHub ↗ · v1.0.0
cross-platform ⚠ suspicious
443
总下载
0
收藏
2
当前安装
1
版本数
在 OpenClaw 中安装
/install blender-plugin-dev
功能描述
Develop, debug, and upgrade Blender add-ons/plugins and `bpy` scripts with Blender 4.x and 5.x compatibility. Use when tasks involve generating new add-on co...
使用说明 (SKILL.md)

Blender Plugin Development

Quick Start

  1. Confirm target Blender versions (minimum and maximum expected).
  2. Read references/blender4_to_5_compat.md before writing or patching code.
  3. Scaffold a new add-on package with scripts/scaffold_addon.py when requested.
  4. Implement requested behavior with explicit compatibility guards for 4.x and 5.x.
  5. Validate syntax and registration flow before returning code.

Workflow

1) Scope the task

  • Extract target behavior, UI location, operator names, and data model.
  • Ask for Blender version range if unspecified; default to >= 4.0 with 5.x awareness.
  • Decide whether output should be:
    • A full add-on package.
    • A standalone bpy script.
    • A migration patch to existing code.

2) Generate a baseline when creating a new add-on

  • Run:
    • python3 scripts/scaffold_addon.py --name "\x3CAddon Name>" --output \x3Ctarget-dir>
  • Customize generated __init__.py, operators.py, ui.py, and compat.py for the feature request.
  • Keep bl_info["blender"] at the minimum supported version (for this skill, usually (4, 0, 0) or higher).

3) Implement compatibility-safe code

  • Use bpy.app.version gates only when behavior truly diverges.
  • Prefer compatibility wrappers in compat.py over scattered version checks.
  • Avoid APIs called out as removed/deprecated in references/blender4_to_5_compat.md.
  • For operator context overrides, use context.temp_override(...).
  • For assets, prefer context.asset and AssetRepresentation.
  • For GPU drawing in 5.x, avoid bgl and migrate to gpu.

4) Validate before returning code

  • Run python3 -m py_compile on changed Python files.
  • If Blender binaries are available, run headless smoke tests:
    • blender --background --factory-startup --python \x3Csmoke_test.py>
  • Check register/unregister order and operator bl_idname format.
  • Confirm no removed API names remain in generated output.

Script Generation Patterns

  • Generate small, composable files:
    • operators.py for operators.
    • ui.py for panels/menus.
    • compat.py for version shims.
    • __init__.py for bl_info and registration entrypoints.
  • Use idempotent register/unregister functions.
  • Keep class lists explicit (tuple of classes) and unregister in reverse order.
  • Report actionable failures with self.report({"ERROR"}, "...") inside operators.
  • Avoid hard-coded context assumptions in poll() and execute().

Required Compatibility Rules

  • Avoid dict-like access for runtime-defined RNA properties in 5.0 when accessing add-on-defined data; use supported property access patterns documented in Blender 5.0 release notes.
  • Never depend on bundled private modules listed in Blender 5.0 notes (for example, bl_ui_utils, rna_info).
  • Treat scene.use_nodes as deprecated and avoid using it for new code.
  • Avoid UILayout.template_asset_view() in new code; use asset-shelf-compatible APIs.
  • Keep code ready for Blender 6.0 removals by addressing documented 5.0 deprecations proactively.

Resources (optional)

scripts/

  • scripts/scaffold_addon.py: Generate a Blender 4/5-ready add-on package skeleton.

references/

  • references/blender4_to_5_compat.md: Blender 4.0 and 5.0 compatibility map with official sources.
  • references/script_generation_patterns.md: Reusable patterns for operators, panels, and background scripts.
安全使用建议
This skill appears coherent and safe for its purpose, but follow normal caution: review any generated add-on code before installing it into Blender, choose the output directory deliberately (the scaffold writes files there and may overwrite with --force), and only run Blender smoke tests using a Blender binary you control. The agent may invoke this skill autonomously (platform default) — that is expected, but if you want to restrict autonomous runs, disable model invocation in the agent settings. If you need higher assurance, run the scaffold script and any tests inside an isolated environment or temporary project folder first.
功能分析
Type: OpenClaw Skill Name: blender-plugin-dev Version: 1.0.0 The skill bundle is designed for Blender plugin development, which is a benign purpose. However, the `scripts/scaffold_addon.py` script contains a vulnerability where user-provided arguments (e.g., `addon_name`, `author`, `description`, `category`) are directly embedded into generated Python f-strings within `__init__.py` and `ui.py` without proper escaping. This could lead to malformed Python code, data injection into the `bl_info` dictionary, or potentially code injection if a sophisticated payload is crafted and the generated code is executed in an unsafe manner by the agent. There is no evidence of intentional malicious behavior like data exfiltration or backdoors.
能力评估
Purpose & Capability
Name/description (Blender add-on development) align with the included files and instructions: scaffolding script, compatibility references, and guidance for Blender 4.x/5.x. No unrelated credentials, binaries, or config paths are requested.
Instruction Scope
SKILL.md instructs the agent to read local references, generate code with scripts/scaffold_addon.py, run py_compile, and optionally run local Blender headless smoke tests if Blender is present. It does not instruct reading arbitrary system files, exfiltrating data, or calling external endpoints.
Install Mechanism
No install spec is present (instruction-only plus a local scaffold script). Nothing is downloaded or extracted from external URLs, so there is no install-time code injection risk.
Credentials
The skill requests no environment variables or credentials. The only runtime dependency it mentions is an optional local Blender binary (used only for optional smoke tests), which is appropriate for the stated purpose.
Persistence & Privilege
always is false and the skill does not request persistent system-wide changes or modify other skills. It only writes files to a user-specified output directory when the scaffold script is run.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install blender-plugin-dev
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /blender-plugin-dev 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release: Provides infrastructure and best practices for developing Blender add-ons/scripts compatible with Blender 4.x and 5.x. - Guides development, debugging, and upgrading of Blender plug-ins and `bpy` scripts. - Includes scaffolding script (`scaffold_addon.py`) for quick add-on creation. - Emphasizes explicit compatibility with Blender 4.x and 5.x Python API changes. - Details script structure, operator/UI conventions, and deprecation avoidance. - Supplies validation steps to ensure code quality and compatibility. https://github.com/Seekerzero/blender_plugin_develop
元数据
Slug blender-plugin-dev
版本 1.0.0
许可证
累计安装 2
当前安装数 2
历史版本数 1
常见问题

blender-add-on-development 是什么?

Develop, debug, and upgrade Blender add-ons/plugins and `bpy` scripts with Blender 4.x and 5.x compatibility. Use when tasks involve generating new add-on co... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 443 次。

如何安装 blender-add-on-development?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install blender-plugin-dev」即可一键安装,无需额外配置。

blender-add-on-development 是免费的吗?

是的,blender-add-on-development 完全免费(开源免费),可自由下载、安装和使用。

blender-add-on-development 支持哪些平台?

blender-add-on-development 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 blender-add-on-development?

由 Seekerzero(@seekerzero)开发并维护,当前版本 v1.0.0。

💬 留言讨论