AirsupHQ/machine-skill
Describe any machine in one line. Claude builds a photoreal, physics based, interactive simulation of it in one HTML file, plus the film to post it. An open source Claude Code skill.
Machine Skill – Turning One‑Line Descriptions into Interactive 3D Simulations
What it is – An Agent Skill for Claude Code (and other Claude‑compatible agents) that turns a short textual prompt like
/machine a turbofan jet engine, the kind that pushes a wide‑body off the runway
into a fully‑featured, photoreal 3‑D web page. The page shows the machine at real‑world scale, built from procedurally generated geometry, rendered with three.js, and driven by a lightweight physics/thermodynamics solver that computes thrust, pressures, speeds, etc. The skill can also record a deterministic 30‑second film of the build‑up, operation, cut‑away, and “break it” sequence.
Quick‑start (for a non‑expert)
- Install the skill
This copies the repository intonpx skills add AirsupHQ/machine-skill -g -a claude-code~/.claude/skills/machinewhere Claude Code can load it. - Ask Claude
In Claude Code type a line starting with
/machinefollowed by a description, e.g.
Claude replies with a file like/machine a mechanical watch movement, the escapement tickingwatch.html. - View / interact Open the generated HTML in any modern browser. You can drag the view, explode the assembly, cut away sections, watch live labels, or let the solver “break” the machine (e.g., throw a fan blade and see the computed load).
- Record a film (optional)
The script steps the simulation frame‑by‑frame, guaranteeing identical output each run.node ~/.claude/skills/machine/scripts/record.mjs watch.html out/watch.mp4 \ --music freepd:Classical/Easy_Lemon
What you get out of the skill
| Feature | What it means for you |
|---|---|
| Real‑world proportions | Machines are modelled in metres, with 15‑40 named parts and thousands of solid pieces (blades, bolts, gears, etc.). A scale bar shows the actual size. |
| Physically based materials | Steel, titanium, Inconel, copper, brass, aluminium, polymers, glass, sapphire – each with measured reflectance and appropriate finish (brushed, polished, heat‑glow). |
| Studio‑quality lighting | Soft‑box key light, ambient occlusion, bloom, and optional night or paper‑backdrops give a product‑photo look before any motion starts. |
| Live physics solver | Each machine ships with a small, self‑contained solver (Brayton cycle for turbines, rocket chamber equations, pump affinity laws, etc.). Numbers shown on‑screen are computed on the fly and the page lists the governing equations. |
| Interaction modes | Explode, cut‑away (section faces with hatch), X‑ray, slow‑motion, pause, and a deterministic “break it” mode that applies a user‑specified failure (e.g., throw a blade, cavitate a pump). |
| One‑click film | Adding ?film=1 makes the simulation step in lock‑step with the recorder, producing a 28 s deterministic video. The record.mjs script adds music, magenta‑frame guards, and optional pink‑scan validation. |
How it works under the hood (high‑level)
SKILL.md– the manifest Claude reads; it defines the workflow (research → geometry → materials → solver → rendering → film) and the style of on‑screen text.kit/lab-kit.js– a single ES module (no build step) that is inlined into every generated HTML page. It pulls three.js 0.170 from a CDN and provides:- geometry builders for blades, gears, casings, etc.
- a material library with realistic PBR values
- cut‑away rendering (plane clipping with automatically generated section caps)
- UI helpers for explode, labels, and film timeline.
references/solvers.md– a collection of compact physics recipes (e.g., Brayton cycle, rocket nozzle expansion, pump curves) with real constants. The page displays the equations used for transparency.scripts/– utilities for screenshots (shot.mjs), deterministic video capture (record.mjs), pink‑frame detection (pinkscan.mjs), and inlining the kit (inline.mjs).examples/– ready‑made HTML files (turbofan, rocket engine, refinery pump, compressor, etc.) that you can open directly.
Who might use this?
- Educators & trainers – interactive, physics‑backed visualisations for aerospace, power‑plant, or mechanical‑engineering courses.
- Content creators – quick generation of high‑quality 3‑D explainer videos for social media or technical blogs.
- Engineers – rapid “what‑if” visual checks of a design’s basic performance without needing a full CAD/CFD pipeline.
- AI‑enthusiasts – a concrete example of an Agent Skill that bridges natural‑language prompts to physics‑driven graphics.
Limitations (as stated in the README)
- The physics are simplified models, not CFD or finite‑element analysis. Results are good for illustration but not for certification.
- Geometry is procedural three.js, accurate in proportion and part count but not suitable for manufacturing tolerances.
- Heavy scenes (~600 k triangles) need a decent GPU; mobile browsers can run lighter versions.
- The skill focuses on machines and mechanisms – it does not handle people, landscapes, or complex fluid‑structure interactions.
Getting help / contributing
- Open an issue or submit a pull request with a new machine description.
- The repository includes
V2-IDEAS.mdfor future ideas andevals/evals.jsonthat defines prompt‑response expectations for automated testing.
Bottom line: Machine Skill lets you type a single sentence describing a real‑world machine and instantly receive an interactive, physics‑based 3‑D web simulation plus a ready‑to‑publish video. It is a fully‑functional, open‑source Claude Code skill that requires only a browser and a modest Node environment for recording.
License: MIT © 2026 Airsup.
Live gallery: https://airsup.ai/lab/skill
Repository layout: see the README for the folder tree.
All details above are taken directly from the project's README; no external speculation added.
Related
- Project
- Project
- Project
- Project