Repository navigation
Construct v0.3.0
Film mode. A construct can now assemble across a whole track of music, and you can see the music
in it: the build nearly pauses in the quiet passages and surges in the loud ones, the light
swells and dims, the construct flares on the strong attacks, and each new section of the music
starts a new stage of the construct. You get a video with the track in it. Film mode is entirely
optional: without it, Construct makes exactly what 0.2.1 made.
What's new
- Film mode.
construct audio track.wavmeasures a track frame by frame: its loudness, its
brightness, its attacks and where it changes section.construct video scene.json --assembly <seconds> --audio features.json --sound track.wavrenders the construct assembling across it,
with the track in the MP4. See Film mode. - The music shows. On calm synth tracks, the build's pace over any four seconds now
ranges from under a tenth to over three times an even build, and the light from 60% to 140%. - A reactivity setting.
--reactivityfrom 0 (an even build, the music only as soundtrack) to 2;
the default, 1, makes the music clearly visible even on calm, ambient tracks. - Choose the camera.
--camera tourplays the scene's own camera flights, keeping each in its
place as the build lengthens;steadyis one long shot that drifts and breathes;stillholds
the view. - Agents know the workflow. Ask "make a construct of New Horizons that assembles across this
track", and the skill authors the construct, measures the track, renders the film and reviews
its frames. In testing, DeepSeek V4.1 Flash in Hermes did exactly that from that one sentence. - Three films in the gallery, made by DeepSeek V4.1 Flash in masterpiece mode, each with a
choice between watching the film and opening the live construct:
https://rtmandreyev.github.io/construct/#films - An optional three.js loader for filmmakers who want a construct inside their own 3-D scene.
- Docs for people new to Construct: how a construct is made, the Measured Light style,
troubleshooting, and a docs index with a short glossary.
Strictly optional
Film mode lives in its own script, which a page carries only when you build it for film
(build --film, or video with a film option). Without it, the viewer is the 0.2.1 viewer byte
for byte, and check, build, review and video write the same files as 0.2.1 did; the tests
check both. The contract stays construct/0.2: film mode adds to it and changes nothing in it.
Install
git clone https://github.com/rtmandreyev/construct.git
cd construct
python3 construct_hologram/package.py --out distThen add dist/claude-code/construct to Claude Code (claude --plugin-dir dist/claude-code/construct)
or copy dist/hermes/construct into ~/.hermes/skills/, and ask in plain words. See the
README and USING.md.
Requirements
Python 3.10 or newer, with no third-party packages. Review stills and films need a
Chromium-family browser you already have; videos and films need ffmpeg.
Known limitations
- Film mode follows the attacks it hears, not a beat grid: there is no tempo or bar detection.
- Sections come from changes in loudness and brightness, not harmony or melody.
- A film renders at about a frame or two a second on a laptop: a four-minute film takes about an
hour. - The voice shimmer needs a separate vocal stem.
- Glass is never tinted, and stills show the closed pose; open a construct in a browser to see it
open. - No imported meshes, CAD or photogrammetry; a construct is built from Construct's own shapes.
- One periodic motion per part.
- Masterpiece mode in Hermes needs a higher helper-agent limit; see
Troubleshooting. - Tested on macOS; review capture on Linux and Windows is untested.
License: MIT — Copyright (c) 2026 Artyom Andreyev.


