Not in the top 1,000 by GitHub stars

mromidev/claude-blender-skills

Free Claude skills for realistic Blender animations: full workflows + the real scripts behind my YouTube videos

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/blender-car-film/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 567116bf3514

No earlier version was observed for comparison.

Compare on GitHub

skills/blender-film/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 567116bf3514

No earlier version was observed for comparison.

Compare on GitHub

skills/blender-forest/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 567116bf3514

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 567116bf3514ce0e469c2cb5cb04fa974fca217a

53GitHub stars
Not availablestars in 7 days
3skills in this repository
1commit in 30 days

Heat

Insufficient history

Not enough history yet to measure heat. It appears after a few days of data.

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Nov 2, 2026Nov 6, 202653

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

blender-car-film

When your agent uses it

Make a short cinematic story film in Blender with Claude (about 20 seconds, several shots, a car, night, snow, sound and voice) - storyboard first, a real downloaded car model, a set Claude builds in Python, a live bridge so Claude drives the open Blender, hand-held cameras, snow particles, a render that went from a 5-8 hour estimate to about 1 hour, and a resumable overnight render queue. Use when someone wants a short film / car story / night or snow scene in Blender with Claude, or asks for any single step (live bridge, snow particles, render speed-up, render queue, grade).

What it loads into context

Frontmatter

140 tokens

Always available to the agent

SKILL.md

1,564 tokens

When the skill is activated

Reference documents

674 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Rules for Claude
  2. 0. Setup and the live bridge
  3. 1. Storyboard (`notes/PLAN.md`)
  4. 2. Build: the 17 scripts
  5. 3. Render: 5-8 hour estimate -> about 1 hour
  6. 4. Sound
  7. Lessons
  8. Start prompt

Scripts executed separately

  • scripts/01_world.py
  • scripts/02_car.py
  • scripts/03_rig.py
  • scripts/04_set.py
  • scripts/05_house.py
  • scripts/06_light_viewport.py
  • scripts/07_anim.py
  • scripts/08_fx.py
  • scripts/09_cams.py
  • scripts/10_fix.py
  • scripts/11_fast_render.py
  • scripts/12_fixes.py
  • scripts/13_speed_cine.py
  • scripts/14_comp.py
  • scripts/15_grade_speed.py
  • scripts/16_grade_shot2.py
  • scripts/17_fps30.py
  • scripts/dl_ph.py
  • scripts/gen_sfx.py
  • scripts/render_clay.py
  • scripts/render_frames.py
  • scripts/render_stills.py
  • tools/bridge.py
  • tools/mix.sh
  • tools/preview.py
  • tools/progress.ps1
  • tools/render_all.sh
  • tools/send.py
  • tools/stay_awake.ps1

Files

  • SKILL.mdcore6,111 bytes
  • notes/CREDITS.mddoc202 bytes
  • notes/PLAN.mddoc1,845 bytes
  • scripts/01_world.pyruns4,422 bytes
  • scripts/02_car.pyruns808 bytes
  • scripts/03_rig.pyruns1,275 bytes
  • scripts/04_set.pyruns5,703 bytes
  • scripts/05_house.pyruns2,672 bytes
  • scripts/06_light_viewport.pyruns817 bytes
  • scripts/07_anim.pyruns3,775 bytes
  • scripts/08_fx.pyruns4,151 bytes
  • scripts/09_cams.pyruns3,389 bytes
  • scripts/10_fix.pyruns2,398 bytes
  • scripts/11_fast_render.pyruns2,069 bytes
  • scripts/12_fixes.pyruns2,710 bytes
  • scripts/13_speed_cine.pyruns2,621 bytes
  • scripts/14_comp.pyruns1,573 bytes
  • scripts/15_grade_speed.pyruns1,160 bytes
  • scripts/16_grade_shot2.pyruns1,187 bytes
  • scripts/17_fps30.pyruns505 bytes
  • scripts/dl_ph.pyruns1,518 bytes
  • scripts/gen_sfx.pyruns2,183 bytes
  • scripts/render_clay.pyruns2,249 bytes
  • scripts/render_frames.pyruns328 bytes
  • scripts/render_stills.pyruns536 bytes
  • tools/bridge.pyruns1,057 bytes
  • tools/mix.shruns1,571 bytes
  • tools/preview.pyruns1,087 bytes
  • tools/progress.ps1runs1,633 bytes
  • tools/render_all.shruns1,719 bytes
  • tools/send.pyruns432 bytes
  • tools/stay_awake.ps1runs535 bytes
Read SKILL.md

# Short story film with Claude

The workflow behind "The Last Drive Home": a 20-second film about an old family car on a snowy night. It starts, drives past a
school and a hospital, parks at the house, the engine turns off and the porch light comes on. No people on screen. 6 shots,
2.39:1 widescreen, 600 frames at 30 fps. Every script in `scripts/` was actually run for that film, in order.

## Rules for Claude

- Storyboard first. Every shot gets its camera move, timing and sound before anything is built.
- Find a real model, don't build one: the car is a free CC BY model, trees, lamp, hydrant, fence, textures and sky are Poly Haven (CC0).
  Claude builds the simple things in Python: road, snow banks, school, hospital, house.
- Write your own code, read anything you download, ask before any long render.
- Never render inside the live Blender window (it crashes). Render in background Blender from a saved .blend.
View the complete source on GitHub

Skills included

  • blender-car-film
  • blender-film
  • blender-forest

Repository facts

License
MIT
Created
Oct 25, 2026
Last pushed
Oct 25, 2026
Forks
14
Open issues
0
Project activity
Active

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 6, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 4 notes
  • skills/blender-film/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/blender-forest/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/blender-forest/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/blender-forest/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 141 signals by file

skills/blender-car-film/SKILL.md

  • Access to secretsline 71
    [Credential-related source omitted]

skills/blender-car-film/notes/CREDITS.md

  • Network accessline 3
    - "Peugeot 504" by 3d_engineer — https://sketchfab.com/3d-models/peugeot-504-2bf330a3c92c4b89959fe1fbb1b197d9 — licensed CC Attribution 4.0 (https://creativecommons.org/licenses/by/4.0/)

skills/blender-car-film/scripts/01_world.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/02_car.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/03_rig.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/04_set.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/05_house.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/06_light_viewport.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/07_anim.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/08_fx.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/09_cams.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/10_fix.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/11_fast_render.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/12_fixes.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/13_speed_cine.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/14_comp.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/15_grade_speed.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/16_grade_shot2.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/17_fps30.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/dl_ph.py

  • Executable scriptline 1
    Executable file
  • Network accessline 6
    if os.path.exists(p): return     for i in range(4):         try: urllib.request.urlretrieve(u, p + ".part"); os.replace(p + ".part", p); return
  • Network accessline 7
    for i in range(4):         try: urllib.request.urlretrieve(u, p + ".part"); os.replace(p + ".part", p); return         except Exception as e: print("retry", os.path.basename(p), e)
  • Network accessline 8
    try: urllib.request.urlretrieve(u, p + ".part"); os.replace(p + ".part", p); return
  • Network accessline 9
    except Exception as e: print("retry", os.path.basename(p), e)     raise SystemExit("failed " + u) def files(a): return json.load(urllib.request.urlopen(f"https://api.polyhaven.com/files/{a}"))
  • Network accessline 10
    raise SystemExit("failed " + u) def files(a): return json.load(urllib.request.urlopen(f"https://api.polyhaven.com/files/{a}")) for m, res in [("street_lamp_01","2k"),("fire_hydrant","1k"),("modular_chainlink_fence","1k"),("utility_box_01","
  • Network accessline 11
    def files(a): return json.load(urllib.request.urlopen(f"https://api.polyhaven.com/files/{a}"))

skills/blender-car-film/scripts/gen_sfx.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 2
    [Credential-related source omitted]
  • Network accessline 17
    if os.path.exists(out): continue     body = json.dumps({"text": text, "duration_seconds": dur, "prompt_influence": 0.5}).encode()     req = urllib.request.Request("https://api.elevenlabs.io/v1/sound-generation", data=body, headers={"xi-api-
  • Network accessline 18
    [Credential-related source omitted]
  • Network accessline 19
    [Credential-related source omitted]
  • Network accessline 20
    try: open(out, "wb").write(urllib.request.urlopen(req, timeout=180).read()); print("ok", name)
  • Network accessline 23
    if not os.path.exists("../music.mp3"):     body = json.dumps({"prompt": "soft melancholic solo piano, sparse gentle notes, warm, cinematic, slow, nostalgic, no drums", "music_length_ms": 14000}).encode()     req = urllib.request.Request("ht
  • Network accessline 24
    body = json.dumps({"prompt": "soft melancholic solo piano, sparse gentle notes, warm, cinematic, slow, nostalgic, no drums", "music_length_ms": 14000}).encode()     req = urllib.request.Request("https://api.elevenlabs.io/v1/music", data=bod
  • Network accessline 25
    [Credential-related source omitted]
  • Network accessline 26
    try: open("../music.mp3", "wb").write(urllib.request.urlopen(req, timeout=300).read()); print("ok music")

skills/blender-car-film/scripts/render_clay.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/render_frames.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/scripts/render_stills.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/tools/bridge.py

  • Executable scriptline 1
    Executable file
  • Network accessline 2
    import bpy, socket, traceback, io, contextlib, json srv = socket.socket(); srv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
  • Network accessline 3
    srv = socket.socket(); srv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
  • Dangerous shell operationline 21
    exec(compile(code, "<live>", "exec"), NS)

skills/blender-car-film/tools/mix.sh

  • Executable scriptline 1
    Executable file

skills/blender-car-film/tools/preview.py

  • Executable scriptline 1
    Executable file

skills/blender-car-film/tools/progress.ps1

  • Executable scriptline 1
    Executable file

skills/blender-car-film/tools/render_all.sh

  • Executable scriptline 1
    #!/bin/bash

skills/blender-car-film/tools/send.py

  • Executable scriptline 1
    Executable file
  • Network accessline 2
    import socket, sys, json code = sys.argv[2] if sys.argv[1] == "-c" else open(sys.argv[1], encoding="utf-8").read() s = socket.create_connection(("127.0.0.1", 9876), timeout=1800)
  • Network accessline 3
    code = sys.argv[2] if sys.argv[1] == "-c" else open(sys.argv[1], encoding="utf-8").read() s = socket.create_connection(("127.0.0.1", 9876), timeout=1800) s.sendall(code.encode() + b"\0END\0")
  • Network accessline 4
    s = socket.create_connection(("127.0.0.1", 9876), timeout=1800)

skills/blender-car-film/tools/stay_awake.ps1

  • Executable scriptline 1
    Executable file

skills/blender-film/scripts/01_swing_sim.py

  • Executable scriptline 1
    Executable file

skills/blender-film/scripts/02_path_empty.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 8
    [Credential-related source omitted]
  • Access to secretsline 8
    [Credential-related source omitted]

skills/blender-film/scripts/03_camera.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 4
    [Credential-related source omitted]
  • Access to secretsline 4
    [Credential-related source omitted]

skills/blender-film/scripts/03b_camera_noise.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 3
    [Credential-related source omitted]
  • Access to secretsline 3
    [Credential-related source omitted]

skills/blender-film/scripts/04_drone_attitude.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 10
    [Credential-related source omitted]
  • Access to secretsline 10
    [Credential-related source omitted]

skills/blender-film/scripts/05_realism.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 7
    [Credential-related source omitted]
  • Access to secretsline 7
    [Credential-related source omitted]

skills/blender-film/scripts/06_night.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 6
    [Credential-related source omitted]
  • Access to secretsline 6
    [Credential-related source omitted]
  • Dangerous shell operationline 186
    rm = N("ShaderNodeMix", "rough", (200, -100)); rm.data_type = "FLOAT"; rm.inputs["B"].default_value = 0.02

skills/blender-film/scripts/07_shakify_cams.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 5
    [Credential-related source omitted]
  • Access to secretsline 5
    [Credential-related source omitted]

skills/blender-film/scripts/08_lens_look.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 4
    [Credential-related source omitted]
  • Access to secretsline 4
    [Credential-related source omitted]

skills/blender-film/scripts/09_render_opt.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 7
    [Credential-related source omitted]
  • Access to secretsline 7
    [Credential-related source omitted]

skills/blender-film/scripts/10_render_edit.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 7
    [Credential-related source omitted]

skills/blender-film/scripts/11_motion_data.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 4
    [Credential-related source omitted]
  • Access to secretsline 4
    [Credential-related source omitted]

skills/blender-film/scripts/12_build_sfx.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 19
    [Credential-related source omitted]

skills/blender-film/scripts/13_aerial_cam.py

  • Executable scriptline 1
    Executable file
  • Dangerous shell operationline 5
    [Credential-related source omitted]
  • Access to secretsline 5
    [Credential-related source omitted]

skills/blender-film/scripts/14_clay_build.py

  • Executable scriptline 1
    Executable file

skills/blender-film/tools/bridge.py

  • Executable scriptline 1
    Executable file
  • Network accessline 2
    import bpy, socket, traceback, io, contextlib, json srv = socket.socket(); srv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
  • Network accessline 3
    srv = socket.socket(); srv.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
  • Dangerous shell operationline 21
    exec(compile(code, "<live>", "exec"), NS)

skills/blender-film/tools/clay_assemble.sh

  • Executable scriptline 1
    #!/bin/bash

skills/blender-film/tools/lib.py

  • Dangerous shell operationline 1
    # Helpers loaded into the live bridge namespace: exec(open(LIB).read())
  • Executable scriptline 1
    Executable file
  • Access to secretsline 3
    [Credential-related source omitted]

skills/blender-film/tools/render_window.ps1

  • Executable scriptline 1
    Executable file

skills/blender-film/tools/send.py

  • Executable scriptline 1
    Executable file
  • Network accessline 2
    import socket, sys, json code = sys.argv[2] if sys.argv[1] == "-c" else open(sys.argv[1], encoding="utf-8").read() s = socket.create_connection(("127.0.0.1", 9876), timeout=1800)
  • Network accessline 3
    code = sys.argv[2] if sys.argv[1] == "-c" else open(sys.argv[1], encoding="utf-8").read() s = socket.create_connection(("127.0.0.1", 9876), timeout=1800) s.sendall(code.encode() + b"\0END\0")
  • Network accessline 4
    s = socket.create_connection(("127.0.0.1", 9876), timeout=1800)

skills/blender-forest/SKILL.md

  • Access to secretsline 105
    [Credential-related source omitted]

skills/blender-forest/scripts/audit_blend.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/bench.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 11
    [Credential-related source omitted]

skills/blender-forest/scripts/build_car.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/build_path.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/build_shots.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/build_world.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/camset.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 4
    [Credential-related source omitted]

skills/blender-forest/scripts/check_missing.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/gen_sfx.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 5
    [Credential-related source omitted]
  • Access to secretsline 15
    [Credential-related source omitted]
  • Network accessline 19
    if os.path.exists(path):         print("skip", name); continue     req = urllib.request.Request(
  • Network accessline 20
    print("skip", name); continue     req = urllib.request.Request(         "https://api.elevenlabs.io/v1/sound-generation",
  • Network accessline 21
    req = urllib.request.Request(
  • Network accessline 22
    "https://api.elevenlabs.io/v1/sound-generation",
  • Network accessline 23
    [Credential-related source omitted]
  • Network accessline 24
    [Credential-related source omitted]
  • Network accessline 25
    with urllib.request.urlopen(req, timeout=120) as r:

skills/blender-forest/scripts/inspect_assets.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/layout.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/look.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 176
    [Credential-related source omitted]

skills/blender-forest/scripts/preview.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/render_clay.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/render_final.cmd

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/render_final.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/render_frames.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 28
    [Credential-related source omitted]

skills/blender-forest/scripts/scatter.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/screen_guard.ps1

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/stay_awake_encode.ps1

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/test_still.py

  • Executable scriptline 1
    Executable file

skills/blender-forest/scripts/watch_render.ps1

  • Executable scriptline 1
    Executable file

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 3 facts
Signal confidence: 141 facts

and 91 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeCompatibleStandard SKILL.md skills/blender-car-film/SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md skills/blender-car-film/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/blender-car-film/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/blender-car-film/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/blender-car-film/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/blender-car-film/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.