Agent skill

Scenario Blender Geometry Nodes

by scenario-labs in scenario-labs/skills

A skill your agent uses when building or debugging Geometry Nodes, headless or live: procedural modeling, scattering objects on a surface, arrays along a curve, repeat or for-each loops, simulation…

MITAuto-check passedDevelopment

Install Scenario Blender Geometry Nodes

skills CLI
$ npx skills add scenario-labs/skills --skill scenario-blender-geometry-nodes -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install scenario-labs/skills scenario-blender-geometry-nodes --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/scenario-labs/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/dcc/blender/scenario-blender-geometry-nodes .claude/skills/scenario-blender-geometry-nodes && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
scenario-blender-geometry-nodes
GitHub stars
946
Token cost
~4.1k tokens
SKILL.md length
1,738 words
Files
6 (incl. scripts, references)
Skills in repo
146
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when building or debugging Geometry Nodes, headless or live: procedural modeling, scattering objects on a surface, arrays along a curve, repeat or for-each loops, simulation…

  • Works in 7 steps: Plan the data flow. Name the component… → Build with bx_gn.Builder (headless or… → Attach and set inputs with G.attach(obj,… → …
  • Debugging Geometry Nodes
  • SKILL.md covers Stance (the expert delta), Establish first, Workflow and Numbers, plus 4 more sections
  • Runs Python scripts from its folder; calls npx

What it does

Scenario Blender Geometry Nodes is an agent skill from scenario-labs/skills. Use when building or debugging Geometry Nodes, headless or live: procedural modeling, scattering objects on a surface, arrays along a curve, repeat or for-each loops, simulation zones, 5.2 physics (cloth, colliders, forces, effectors), closures, bundles, matrices, node-group assets with gizmos. Also when a GN script links nothing, shows red links, ignores modifier inputs, loses instances in a bounding box, or a simulation resets or jumps.

Its SKILL.md is about 4.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts and reference files (for example `references/critique.md`, `references/expert-notes.md` and `references/procedures.md`).

It sits in Development. It works with Blender. The repository describes itself as: Get production-ready images, video, audio, and 3D from any AI agent: skills that pick the right model, price before spending, and keep characters and brands consistent through… The licence is MIT.

When your agent uses it

  • Debugging Geometry Nodes
  • Live: procedural modeling
  • Scattering objects on a surface
  • Arrays along a curve

Example prompts

  • “/scenario-blender-geometry-nodes”

Requirements

  • Python 3
  • Node.js

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Plan the data flow. Name the component and domain each value lives on, where each field gets evaluated, and which primitive fits: plain…
  2. Build with bx_gn.Builder (headless or live, idempotent: a tree of the same name is rebuilt in place). b.node(kind, prop=..., ins={...})…
  3. Attach and set inputs with G.attach(obj, tree, inputs={...}) or G.set_inputs(md, {...}); "attr:NAME" switches a field input to an…
  4. Measure. G.stats(obj) (counts, attributes per domain, world bbox with instances), G.attribute, G.instance_transforms, G.positions. Then…
  5. Look. G.snapshot(objs, path, views=..., frames=...) renders the current scene state with material colors and shadows (floating instances…
  6. Simulations. Step every frame in order with G.step(range(...)), or G.bake(obj) for random access; assert bounds, monotonic states, counts…
  7. Package (assets): inputs grouped in panels with defaults, min/max and subtypes; tree.is_modifier = True; tree.asset_mark(); drop it on a…

What it can do on your machine

Read from SKILL.md and the folder at commit f6f8ab7. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Scenario Blender Geometry Nodes loads about 4.1k tokens when it runs, and up to ~27k if it reads all its reference files. Until then it costs about 119 tokens; SKILL.md has 1,738 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~119
When it runs · the whole SKILL.md, loaded when a task matches
~4.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~27k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from scenario-labs/skills at commit f6f8ab7, republished under its MIT licence (© scenario-labs). 1,738 words, ~4,093 tokens.

Download SKILL.mdSave it as .claude/skills/scenario-blender-geometry-nodes/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
scenario-blender-geometry-nodes
description
Use when building or debugging Geometry Nodes, headless or live: procedural modeling, scattering objects on a surface, arrays along a curve, repeat or for-each loops, simulation zones, 5.2 physics (cloth, colliders, forces, effectors), closures, bundles, matrices, node-group assets with gizmos. Also when a GN script links nothing, shows red links, ignores modifier inputs, loses instances in a bounding box, or a simulation resets or jumps.
license
MIT

Blender Geometry Nodes (procedural systems and simulations)

Expert Geometry Nodes work means thinking in fields evaluated on domains, keeping systems declarative (data and instructions come in from outside), and shipping tools that artists drive from modifier inputs without opening the tree. For an agent it also means proving every tree with numbers read from the evaluated geometry and a render, because the node editor's red links and warnings are invisible from Python unless you ask for them. If a sibling skill named here is missing from your available skills, ask the user to install it (npx skills add scenario-labs/skills --skill <name>); unattended, proceed from tool schemas and flag the gap.

REQUIRED BACKGROUND: scenario-blender-expert (execution channel, review loop, 5.2 API changes). Hair node groups (Interpolate, Clump, Curl, Hair Dynamics grooms): scenario-blender-hair.

Stance (the expert delta)

  • A field is a deferred question, not data. Thommes: it is evaluated by the node that consumes it, on that node's domain and geometry; values exist only once named or consumed. Consequence [added, verified]: two coupled updates (position and velocity) must be captured together in one Capture Attribute, or the second reads the first's new value.
  • Domain changes interpolate; everything becomes a Boolean by a rule. Erindale: float > 0 is true (vectors: any non-zero), so a subdivided vertex-group selection bleeds; decide with Float to Integer or Compare with epsilon. Prefer trait selections (position, normal, proximity, raycast) over index ones, unless you generated the geometry and its order is the design (the Blender Studio matrix video drives a stack from Index == 0).
  • Simulation only when history matters. Thommes: a simulation is rules applied to state; an animation is a function of time. If nothing depends on the previous frame, drive it from Scene Time and get scrubbing and sub-frames free.
  • Loops are a last resort. Thommes: built-in nodes working on all elements use acceleration structures, loops cannot. For-each is for black-box generators run once per element: field outside, single value inside.
  • Everything is object-local. Thommes: a (0, 0, -1) vector rotates with the object. World directions go through Self Object > Object Info > Invert Matrix > Transform Direction.
  • Tools, not trees. Thommes: expose every scene dependency and tweakable value as a group input, never hard-reference an object inside a reusable tree, and drive gizmos only from Group Input sockets, through invertible math, into the first input of each math node.
  • 5.2 physics is declarative. Thommes (BCON26): forces, colliders and constraints travel as bundles and closures into a black-box solver. Customize from outside first (inputs, bundles, Custom Effector closures); make the asset local only to edit a built-in constraint. Any per-step custom attribute must be listed in Extra Sim Attributes, and topology-changing sims must append new elements at the end.

Establish first

QuestionWhy it changes the planDefault when silent
What consumes the result: shader, another modifier, export, physics?Crossing a boundary needs a named attribute; export may need realized geometryNamed attributes for anything a shader reads; keep instances
Does it depend on the previous frame?Simulation zone and baking vs Scene Time functionFunction of time
One-off authoring step or reusable asset?One-off may be applied (Thommes' hair noise); assets never areReusable: expose inputs, panels, sensible min/max
Scale: element counts, viewport costRealize, loops and simulations cost; instances are cheapInstances, fields, no loops
World or object space for directions and groundObject-local trapWorld up, world gravity

Workflow

  1. Plan the data flow. Name the component and domain each value lives on, where each field gets evaluated, and which primitive fits: plain fields first, Accumulate Field for per-group sums, repeat zone for N dependent passes, for-each for a black-box generator per element, simulation zone for state, closure to inject behavior, bundle to pass many named values. GATE: you can say for every field which node evaluates it.
  2. Build with bx_gn.Builder (headless or live, idempotent: a tree of the same name is rebuilt in place). b.node(kind, prop=..., ins={...}) sets properties before inputs, links sources, assigns constants; b.zone(...) pairs zones and adds items; b.join([...]) keeps list order. GATE: b.done() returns (zones paired, every link created).
  3. Attach and set inputs with G.attach(obj, tree, inputs={...}) or G.set_inputs(md, {...}); "attr:NAME" switches a field input to an attribute or vertex group. GATE: G.check(md)["ok"], no hard_refs on an asset.
  4. Measure. G.stats(obj) (counts, attributes per domain, world bbox with instances), G.attribute, G.instance_transforms, G.positions. Then the two robustness probes: rotate the object 90 degrees (world-space effects keep direction) and double the input resolution (trait selections scale, index ones jump). GATE: numbers match the analytic expectation.
  5. Look. G.snapshot(objs, path, views=..., frames=...) renders the current scene state with material colors and shadows (floating instances show); bx_review.review for realized meshes. Open every sheet. GATE: references/critique.md visual items pass.
  6. Simulations. Step every frame in order with G.step(range(...)), or G.bake(obj) for random access; assert bounds, monotonic states, counts, no NaN. GATE: a direct jump to a late frame equals the stepped result only after a bake.
  7. Package (assets): inputs grouped in panels with defaults, min/max and subtypes; tree.is_modifier = True; tree.asset_mark(); drop it on a different object (Thommes' Suzanne test). GATE: works on the second object with no tree edit.

Recipes in scripts/bx_gn.py, tested and rendered: scatter_tree (density x mask, world-space slope limit, upright or aligned, pick from object and collection), curve_array_tree (tangent-aligned array, alternating twist makes a chain), growth_tree (repeat-zone extrusion), particle_drop_tree (simulation zone with emission, world gravity, ground bounce). Prefer the shipped Essentials assets (Scatter on Surface, Array, Instance on Elements, Randomize Transforms) when their inputs cover the brief; build your own when you need world-space rules, masks or custom attributes.

Numbers

ValueWhat it is relative toSource
Melt sim: 300 K ambient, 2000 K source, heating 0.05, cooling 0.01 per frameper-step Mix factors; small because they accumulateThommes BCON23
Blur Attribute weight 0.5; smooth 5 iterations; melt mask 500 to 2000 Kheat diffusion and softeningThommes BCON23
Drip 0.01 per frame along -Z; normal mix 0.1 (0.5 "looks like baking bread")per-step offsetThommes BCON23
Tearing threshold 1 = tears as soon as longer than rest (too sensitive); reinforce 10; base random 1 to 1.1; Voronoi modeedge length ratioThommes BCON26
Sewing ramp: rest length x factor 1 to 0 over 1 s of accumulated Delta Timeavoids snappingThommes BCON26
Threads on tears: about 2 cm, 3 points eachperformance capThommes BCON26
Cloth asset defaults: Substeps 5, Constraint Steps 15, Collision Radius 0.01, Tearing Threshold 1.2read from the 5.2.1 assetdigest [verified]
Gizmo position = size x 0.5 for a centered grid; random factor 0.2 to 1 on the SECOND inputkeeps drags gluedThommes BCON24
Stack: box origin at its bottom; random scale XY 1 to 1.5, Z 0.05 to 0.3Accumulate Field TrailingMatrix video
Flatten regions: island min 5 faces; proximity falloff 0 to 0.2 m, Smoother Step; Volume to Mesh threshold about 0.5Erindale exerciseErindale
Realize Instances: Realize All off, Depth 1flattens one hierarchy levelThommes BCON24
Show full SKILL.md (582 more words)Show less

Quality gates

Measurable (code):

  • G.check(md): ok (no invalid link, no ERROR warning, zones paired), hard_refs empty for assets, Warning nodes you added report as expected.
  • Counts match expectation: scatter count within about 12 percent of density x mask x eligible area [verified test]; curve array count = floor(length / spacing); repeat growth faces = F0 + sides x selected x iterations.
  • Attributes exist on the right domain and type, values in range (G.attribute).
  • Rotation probe and resolution probe (step 4).
  • Simulation: counts per frame, bounds (nothing below the ground), prefix-stable ids when appending, energy or state monotonic where it must be, baked jump equals stepped.
  • G.time_eval(obj) for hot trees; flag repeat or for-each zones in them.

Visual (G.snapshot, bx_review): scatter density reads natural and nothing floats or sinks; arrays follow the curve without flips; growth has no self-intersection at the base; simulation strip shows motion then rest; shader-driven attributes checked at render resolution. Gizmo feel is GUI only.

Common mistakes

MistakeWhat it looks likeFix
tree.links.new across treesreturns None, nothing links, no errorBuilder.link raises; never reuse a bound links.new after switching trees
Setting md.properties.inputs.<id>.value onlyresult unchangedobj.update_tag() (or G.set_inputs)
Random Value with its implicit ID inside a for-each zonered link, output silently wrong; md.node_warnings emptyzone Index into ID; G.check lists invalid_links
Same Seed on two Random Value nodesscale and rotation move together (correlation 1.0 [verified])offset seeds (seed + k)
State not wired Simulation Input to Outputvalue resets each framewire every state item through
Custom attribute inside Cloth or Hair Dynamicsresets every step, no warninglist it in Extra Sim Attributes
Hard-referenced controller object in an assetworks once, breaks on reuseObject socket on the Group Input
Coupled fields updated by two nodesvelocity computed from the already-moved positionone Capture Attribute for both
Join order assumed = link ordernew elements inserted first, solver or ids breakb.join([state, new])
Local direction used as worldeffect rotates with the objectSelf Object matrix conversion
Closure signature by auto-populationERROR "Closure does not have output"create both item lists, same names

Blender 5.2 notes

  • Modifier inputs: md.properties.inputs.<Socket_N>.value (old md["Socket_N"] raises TypeError), then obj.update_tag().
  • Menus are input sockets: Transform Geometry Mode = 'Matrix', Resample Curve Mode, Custom Force Mode, Custom Effector Stage (menu Socket_1; a string input is also named Stage, Socket_2).
  • node.inputs["A"] on a Mix returns the available socket in 5.2.1; duplicate enabled names (Cloth's two Gravity) still need identifiers. bx_gn.sock raises with the identifiers.
  • Join Geometry puts the last created link first [verified].
  • Evaluated obj.bound_box ignores instances; the instance point cloud's position attribute reads zeros, use instance_transform [verified]. md.execution_time stays 0.0 headless.
  • Simulation: the first frame already runs the zone body; a jump past the cache computes one step; simulation_nodes_cache_calculate_to_frame returns PASS_THROUGH headless and computes nothing; simulation_nodes_cache_bake works (packed) [verified].
  • Lists (Field to List, Get List Item), Bundles, Closures and GeometryNodeXPBDSolver exist; modal node tools do not (experimental builds only).
  • Shipped assets: <DATAFILES>/assets/nodes/geometry_nodes_essentials.blend, geometry_nodes_dynamics_assets.blend, procedural_hair_node_assets.blend (G.append_group(name, library)).

References

  • references/expert-notes.md: Thommes, Erindale and Johnny Matthews principles with timestamps; load when designing a system or an asset.
  • references/procedures.md: tested code: raw-bpy procedures A to H (attribute pipeline, float simulation, repeat expand, for-each, closures, matrix stacking, gizmos, cloth) and the bx_gn recipes and physics tests; load before writing any tree.
  • references/critique.md: the rubric to judge a tree, an asset and a simulation; load at every gate.
  • references/sources.md: the eight source videos, what each is best for, best timestamps.
  • scripts/bx_gn.py: builder, modifier, evaluation, simulation, snapshot helpers and recipes (docstrings list the traps).

© scenario-labs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 5 other files (scripts, references) in skills/dcc/blender/scenario-blender-geometry-nodes of scenario-labs/skills.

  • SKILL.md
  • references/critique.md
  • references/expert-notes.md
  • references/procedures.md
  • references/sources.md
  • scripts/bx_gn.py

Open the folder on GitHubat commit f6f8ab7

Compare with similar skills

Scenario Blender Geometry Nodes next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Scenario Blender Geometry Nodes compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Scenario Blender Geometry Nodes this skillscenario-labs/skills946—~4.1kAutomated safety check: PassMIT
Research Figurechingswy/Skill-Research-Figure179—~5kAutomated safety check: PassNone
Blender Python AddonMindrally/skills271—~2.2kAutomated safety check: PassApache-2.0
Game Art PipelinePersonalJarvis/PersonalJarvis159—~566Automated safety check: PassApache-2.0
Threejs World Generationcalesthio/OpenMontage66k—~2kAutomated safety check: PassAGPL-3.0
3Dviz Pro Max Scene Builderviettranx/3dviz-pro-max709—~2.8kAutomated safety check: PassMIT

Similar skills

  • Research Figure

    chingswy/Skill-Research-Figure

    Generate publication-quality figures for academic papers: LaTeX TikZ method pipelines and Blender 3D renders.

    179 GitHub stars~5k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Blender Python Addon

    Mindrally/skills

    Best practices for writing Blender Python add-ons using the bpy API, covering operators, panels, properties, registration, and API-safe scripting.

    271 GitHub stars~2.2k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Game Art Pipeline

    PersonalJarvis/PersonalJarvis

    Develop or redesign Personal Jarvis world art, buildings, characters and 3D assets through an authored Blender reference scene, runtime review and controlled asset rollout.

    159 GitHub stars~566 tokensUpdated yesterday
    Game DevelopmentAuto-check passed
  • Threejs World Generation

    calesthio/OpenMontage

    Build deterministic, editable, free-viewpoint Three.js worlds from text or structured briefs.

    66k GitHub stars~2k tokensUpdated 7 days ago
    Game DevelopmentAuto-check passed
  • 3Dviz Pro Max Scene Builder

    viettranx/3dviz-pro-max

    Guides building an expressive 3D scene in Three.js or Blender by reasoning through intent, object construction and scientific grounding before using a catalog of recipes and kits.

    709 GitHub stars~2.8k tokensUpdated 1 mo ago
    Game DevelopmentAuto-check passed
  • Text To 3D Asset

    LaurentiuGabriel/unreal-game-assets-creation-skill

    Generate a game-ready 3D asset by running the local AI pipeline sequentially: Fooocus (SDXL text-to-image) - Hunyuan3D-2 (image-to-textured-GLB) - optional Blender FBX convert + Unreal import.

    148 GitHub stars~2.1k tokensUpdated 2 mo ago
    Game DevelopmentAuto-check passed

More from scenario-labs/skills

All 146 skills in this repo
  • Scenario Blender Grease Pencil

    scenario-labs/skills

    A skill your agent uses when drawing or animating with Grease Pencil in Blender 5.x from Python: 2D or 2.5D illustration, frame-by-frame animation, a cutout or part-based 2D character, strokes with…

    946 GitHub stars~4.5k tokensUpdated yesterday
    Auto-check passed
  • Scenario Blender Hair

    scenario-labs/skills

    A skill your agent uses when grooming hair or fur in Blender with hair curves, such as a character hairstyle, animal fur, procedural fur in geometry nodes, or hair cards and mesh hair for games.

    946 GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed
  • A skill your agent uses when lighting, rendering or compositing in Blender: light a character, product or hero shot, interior at dusk or night, three-point or motivated lighting, sun and sky, HDRI…

    946 GitHub stars~5k tokensUpdated yesterday
    Auto-check passed
  • Scenario Chatgpt Pet Create

    scenario-labs/skills

    A skill your agent uses when creating a ChatGPT pet or Codex pet with Scenario: hatching an animated companion from a text idea, a character, mascot or brand cue, or reference photos and art; making…

    946 GitHub stars~3.6k tokensUpdated yesterday
    Auto-check passed
  • Scenario Godot Animation

    scenario-labs/skills

    A skill your agent uses when animating characters or scenes in Godot 4.7: AnimationPlayer clips and RESET, AnimationTree state machines and blend spaces built in code, Mixamo or glTF import, loop…

    946 GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed
  • Scenario Godot Audio

    scenario-labs/skills

    A skill your agent uses when adding or fixing sound in Godot 4.7: audio buses and effects, volume sliders, 'too many sounds', combat audio with hundreds of enemies, sounds clipping or distorting, 3D…

    946 GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about Scenario Blender Geometry Nodes

What does Scenario Blender Geometry Nodes do?

A skill your agent uses when building or debugging Geometry Nodes, headless or live: procedural modeling, scattering objects on a surface, arrays along a curve, repeat or for-each loops, simulation…. Scenario Blender Geometry Nodes is an agent skill from scenario-labs/skills.2 physics (cloth, colliders, forces, effectors), closures, bundles, matrices, node-group assets with gizmos.

When should I use Scenario Blender Geometry Nodes?

Scenario Blender Geometry Nodes fits situations like: debugging Geometry Nodes; live: procedural modeling; scattering objects on a surface; arrays along a curve.

How do I install Scenario Blender Geometry Nodes in Claude Code?

Run `npx skills add scenario-labs/skills --skill scenario-blender-geometry-nodes -a claude-code`. Or copy the skill folder (skills/dcc/blender/scenario-blender-geometry-nodes in scenario-labs/skills) into .claude/skills/scenario-blender-geometry-nodes in your project. Claude Code loads it when a task matches its description.

How do I install Scenario Blender Geometry Nodes in Codex?

Run `npx skills add scenario-labs/skills --skill scenario-blender-geometry-nodes -a codex`. Or copy the skill folder (skills/dcc/blender/scenario-blender-geometry-nodes in scenario-labs/skills) into .agents/skills/scenario-blender-geometry-nodes in your project. Codex loads it when a task matches its description.

Can I use Scenario Blender Geometry Nodes in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add scenario-labs/skills --skill scenario-blender-geometry-nodes -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/scenario-blender-geometry-nodes, .gemini/skills/scenario-blender-geometry-nodes, .github/skills/scenario-blender-geometry-nodes and .opencode/skills/scenario-blender-geometry-nodes in your project.

What does Scenario Blender Geometry Nodes need to run?

Going by SKILL.md and its folder, Scenario Blender Geometry Nodes needs Python for the scripts in its folder and the command-line tools its instructions call (npx). Our summary lists: Python 3; Node.js.

Does Scenario Blender Geometry Nodes access the network?

SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Scenario Blender Geometry Nodes safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Scenario Blender Geometry Nodes use?

Scenario Blender Geometry Nodes is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Scenario Blender Geometry Nodes use?

About 4.1k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 23k tokens, read only when the agent opens those files.

What are the alternatives to Scenario Blender Geometry Nodes?

Skills that share tags, products or a category with Scenario Blender Geometry Nodes: Research Figure (chingswy/Skill-Research-Figure, 179 stars), Blender Python Addon (Mindrally/skills, 271 stars), Game Art Pipeline (PersonalJarvis/PersonalJarvis, 159 stars) and Threejs World Generation (calesthio/OpenMontage, 66k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Scenario Blender Geometry Nodes?

scenario-labs (a GitHub organization) maintains it in scenario-labs/skills, which has 946 GitHub stars. The repository holds 146 skills in this directory. The repository was last updated on October 10, 2026.

Source: scenario-labs/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.