laurentvv/agents-kit/blender-core

Claude Code and agent skill by laurentvv/agents-kit

Trust tier 3
  • community
  • ext:[{"type":"plugin","description":"Custom plugin integration"}]
Source check pending

Checking that the SKILL.md file is still in the repository.

Foundation for any Blender 5.2+ task an agent drives - running bpy via MCP (live) or headless CLI, context overrides, locale-safe node lookup, enum discovery, 5.x API changes, verification. Use first for any Blender, bpy, .blend or 3D-asset request; routes to the specialized blender-* skills.

Install

npx vskill@latest install laurentvv/agents-kit/blender-core

Semi-extensibleMentions customization, but needs skill-specific knowledge. Read the extensible skills standard

SKILL.md

The same SKILL.md was published earlier as el4cteo/blender-skills/blender-core.

Blender Core (5.2 LTS+)

Route to the specialized skill

TaskSkill
Units, collections, naming, linking, asset librariesblender-scene-setup
Hard-surface modeling, bevels, booleans, normalsblender-hardsurface-modeling
Sculpting, multires, remeshblender-sculpting
Retopology, UV unwrap, texel densityblender-retopology-uv
PBR materials, color spaces, texture setsblender-pbr-materials
Wear, grime, dust, decals, trim sheets, texture paintingblender-texturing
Baking high→low maps (normal, AO, curvature, ...)blender-texture-baking
Geometry Nodes, procedural modelingblender-geometry-nodes
Body rigging, Rigify, weight paintingblender-character-rigging
Face rig, shape keys, ARKit, visemesblender-facial-shapekeys
Keyframes, actions, NLA, mocap retarget, loops, root motionblender-animation
Garments, layered clothing, body poke-throughblender-clothing
Hair, fur, grooming, hair cardsblender-hair-grooming
Poly budgets, LODs, draw calls, cleanupblender-game-optimization
Export: glTF/FBX/USD to Roblox, Unity, Unreal, Godot, webblender-export-pipelines
Cycles/EEVEE settings, compositor, batch renderblender-rendering
Lighting, HDRI, camera, turntableblender-lighting-lookdev
Toon/cel/anime shading, outlines, Line Art, Grease Pencilblender-stylized-npr
Terrain, biome scatter, modular kitsblender-environment-kits
Video editing (VSE), motion tracking, camera solveblender-video-editing
Time of day, night, sunset, fog, mood (cyberpunk, horror...)blender-time-of-day
Rain, snow, wet surfaces, puddles, lightning, dust/embersblender-weather-fx
Cloth, rigid body, fluids, hair, GN physicsblender-simulation
Writing add-ons / extensionsblender-addon-development
Batch/headless pipelines, file conversionblender-pipeline-automation
Checking a mesh/asset before delivery (always)blender-asset-qa
End-to-end playbooks (prop, character, Roblox, product shot)blender-workflow-recipes

Execute

Live (blender-mcp `execute_blender_code`): work in small steps and print only what you need. To call a skill script, import it:

python
import sys, importlib; sys.path.insert(0, r"<skills_dir>/blender-asset-qa/scripts")
import qa_check; importlib.reload(qa_check); print(qa_check.run(objects=["Chair"]))

Each MCP call runs in a fresh namespace: re-import in every call. That's cheap because modules stay cached in sys.modules. reload only after editing a script. Headless (any agent with a shell): this prints only the script's JSON (@@JSON@@ lines):

python <skills_dir>/blender-core/scripts/run_in_blender.py --blend in.blend <script.py> -- --objects Chair --save out.blend
python <skills_dir>/blender-core/scripts/run_in_blender.py --expr "import bpy; print(len(bpy.data.objects))"

Raw form: blender -b in.blend --factory-startup --python-exit-code 1 -P x.py -- args. Every script here exposes run(**kw) -> dict and the same flags after --. First call in a session: scripts/env_report.py, which returns the version, engines, GPU, add-ons, units, color management and scene counts.

Rules

  • Data API over operators: use bpy.data, bmesh, mesh.attributes, and foreach_get/set with numpy. Operators depend on context and selection, and many need a 3D View, which background mode doesn't have.
  • If an operator is unavoidable: with bpy.context.temp_override(object=ob, active_object=ob, selected_objects=[ob], selected_editable_objects=[ob]): bpy.ops.... Check that the result is {'FINISHED'}.
  • Edit mode isolation: ob.data isn't updated while in Edit Mode. Use bmesh.from_edit_mesh + bmesh.update_edit_mesh, or switch to OBJECT mode before reading.
  • Nodes: find them by type (n.type == "BSDF_PRINCIPLED"), never by name, because names are localized. Sockets by English name or identifier are fine.
  • Enums: read the valid values with [i.identifier for i in T.bl_rna.properties[p].enum_items]. Dynamic enums (render.engine, view_transform, look) under-report, so assign them inside try/except TypeError (the message lists the valid values).
  • Engines: BLENDER_EEVEE, CYCLES, BLENDER_WORKBENCH. Cycles device: scene.cycles.device = "GPU" + preferences compute_device_type.
  • Evaluated data: use ob.evaluated_get(depsgraph), then .to_mesh(), then always .to_mesh_clear(). Call view_layer.update() before reading matrix_world after a change.
  • Freed data: applying or removing a modifier, or removing an object or ID, frees it. Collect names first ([m.name for m in ob.modifiers]) and never touch the old Python reference afterward, because it returns garbage or crashes.
  • Never trust default names ("Cube.001"). Keep object references, rename explicitly, and look objects up via bpy.data.objects[name].
  • Scale: 1 unit = 1 m. Apply rotation/scale (transform_apply) before bevels, modifiers with distances, rigging, physics, baking and export.
  • Paths: bpy.path.abspath("//textures/x.png") resolves relative to the .blend. Save explicitly; use save_as_mainfile(filepath=..., copy=True) for backups.
  • Live sessions are the user's work: never read_factory_settings, never delete data you didn't create, and save a backup copy before destructive batch edits.
  • GPU module in background: call gpu.init() first (5.2+). bgl no longer exists.
  • Big meshes: no per-vertex bpy.ops. Use numpy foreach_get (see references/bpy-patterns.md).

5.x API changes that break old tutorials/LLM memory

action.fcurves → channelbags · scene.node_tree → scene.compositing_node_group · material.use_nodes is deprecated (new materials already have nodes) · mod["Socket_2"] → mod.properties.inputs.Socket_2.value (5.2) · BLENDER_EEVEE_NEXT → BLENDER_EEVEE · Boolean FAST → FLOAT · bone layers → bone collections · bl_info add-ons → extensions (blender_manifest.toml) · bpy.props values are no longer dict-accessible (scene["cycles"]). Full table: references/api-changes-5x.md.

Verify (required before saying "done")

  1. Numbers, not adjectives: report tris, objects, materials, dimensions (ob.dimensions) and the output files written.
  2. Geometry changed → run blender-asset-qa qa_check.py (z-fighting, detached parts, non-manifold, flipped normals, scale).
  3. Look at it: MCP look (mode="angles", shading material/wireframe). Headless: blender-asset-qa/scripts/review_shots.py renders contact sheets.
  4. Re-read your own output: confirm that exported files exist and that their size is non-zero.

References

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Extension points

  • pluginCustom plugin integration

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/laurentvv/agents-kit/blender-core/badge)](https://verified-skill.com/skills/laurentvv/agents-kit/blender-core)

Something wrong with this skill or its page? Tell us.