construct
Health Pass
- License — License: Apache-2.0
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 105 GitHub stars
Code Pass
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
Describe a thing, get a hologram, a 3D model and its parts: built by any AI agent, honestly.
Construct
Construct is a tool for AI agents that turns everything that can be found out about a thing into one exact,
checked description of it: its named parts at their real sizes, how they fit together, open and move, and how
each one is known, measured or guessed. An agent does the research and writes the description; Construct
checks it and builds from it, the same description always into the same result. Everything else comes from that
one description.
Describe a thing. Get a hologram, a 3D model, a print and a kit. You ask any AI agent for a thing
in plain words, and it builds an animated model of it in lines of light, the Measured Light style,
as one web page you can open anywhere, honest about what is known. The same construct becomes a 3D
model with named parts and working joints, a print, a model kit, a CAD file or a film.
Constructs. Sainte-Chapelle · Duomo di Milano · Toyota Land Cruiser FJ62 · Nissan Skyline GT-R R34 · Tompion's year-going clock · Volkswagen T1 Samba, each built in masterpiece mode, by Claude Opus 5.5 and the clock by DeepSeek V4.1 Flash. Open the gallery to orbit them, replay the assembly and read the labels.
- Any agent, any model. Claude Code, Hermes, any MCP client or any OpenAI-compatible endpoint, or by hand.
- Honest about what is known. Every part says how it is known, its size and its shape apart, every guess in a shade of how firmly it is held.
- One house style. Models never choose the colours, so every construct looks like it belongs with the rest.
- It repairs itself. Every problem comes back with where it is and how to fix it.
- Nothing to install. Python's standard library and a browser; no API keys or network service inside Construct.
Find your path
| You… | Construct gives you | Start here |
|---|---|---|
| Everyday | ||
| want a model of anything you can describe | A thing you describe, as a construct you can turn, replay and share | Make a construct |
| want a digital copy of something you own | Your chair, guitar, camera or heirloom in 3D from your photos and whatever its maker publishes, showing what was measured and what was guessed | Copy your thing |
| are planning a change to your home or garden | Your shed, room or garden as a model to try the change on first: a deck, shelves, an extension, a new layout. A planning model, not a survey | Try it on a copy |
| want to customise or restore a vehicle | Your car, bike or scooter from its published sizes and your photos, your parts told apart from the factory's: try wheels or a new colour, plan a restoration, make a model of it | Your vehicle |
| need a part that is missing or broken | A knob, bracket or cover drawn to the thing it fits, as a print or a CAD file someone can make | Make the part |
| want a model kit of your own thing | Your scooter, house or guitar as a kit to print, glue and paint, with a booklet (one to open) | A kit of your own |
| want to show someone what you mean | A model a builder, a fabricator or a friend can turn and measure, and a file for their own tools | Show what you mean |
| Professionals and creators | ||
| are a maker | A print at your printer's largest size, a model kit with plates and a booklet (four to try), true CAD shapes | Print, kit, CAD |
| are a game developer | Props with named parts, real sizes and working joints, for Godot, Unity or Unreal | Into a game engine |
| are a 3D artist | A construct in Blender with its build, joints and finish on sliders, ready to render or model over | Into Blender |
| work in film and motion | A construct that assembles across a piece of music, as a video | Film mode |
| are an educator or researcher | An agent-based model's run drawn as a construct, compared, printed, filmed | Models come alive |
| work in a museum or archive | Reconstructions that say how each part is known, so a visitor can tell evidence from design | Honest reconstructions |
| are a developer | A scene contract, a command line, an MCP server and skills to build on | Build on it |
New in 1.1
Every feature with pictures and the commands to try it: What's new in 1.1, a walkthrough.
And one construct taken through all of it, step by step: A longcase clock, end to end.
- Your own formats. Adapters: what a construct holds, where to read it and the rules that keep an adapter
honest, with a template that writes a parts sheet and an STL per part. Write your own → - Honest in finer shades. A part's size and its shape known apart, every guess in a shade of how firmly it is
held. Press P. - See it as a solid. Press S in any construct;
check --fitnames what pokes through or floats. - Contact you can trust.
checkfollows support through the solids, not their boxes: a part that only seems
to rest on another, or hangs on a wire-thin strut, is named with the gap and the part to rest it on. Found from a
desk fan two models built; it closed three gaps in the gallery. - Cleaner 3D. Smoother solids, OBJ that subdivides cleanly, triangle quality reports, for Blender and any
3D program. - Ready for game engines. Glued pieces with working hinges for Godot, pieces that break apart and settle,
colliders, seeded variants. - CAD. True CAD shapes in FreeCAD, with their joints, and STEP for any CAD program.
- Prints. One checked print at the largest size your printer takes, voxel or exact, with engraved line art.
- Model kits. A construct as a kit to print, glue and paint: numbered plates, a booklet drawn as a kit sheet,
the same steps in 3D, every piece printable on its own. A first version, not yet built by a person. - Models come alive. A NetLogo extension: one command in NetLogo turns a run into a construct, with a replay
bar, a legend and a How to read it panel, in views chosen for the data. Runs side by side for a lesson, a
printable worksheet, CSV and Cite this run; a run as a film or a 3D model in Blender, or as plates you can
stack. 388 of the Models Library's 445 models record with no edits.
Examples
Provenance and solids. The Duomo di Milano in provenance shades (P): verified sizes in cyan, traced shapes in blue,
every guess a deeper amber the more firmly it is held; and the same Duomo as a solid (S), as a modelling program shows it. Museums and archives →
Film mode. A construct assembling across a piece of music. Film and motion →
Game engines and Blender. The FJ62 in Godot, knocked apart into its pieces; and from light to a finished model. Game developers → · 3D artists →
Prints and CAD. An exact print of the FJ62 beside its voxel print; the Yamaha CFX and the Leica M3 in FreeCAD. Makers →
Model kits. Four constructs as kits to print, glue and paint: the Yamaha CFX piano (1:12, 54 pieces), Tompion's year-going clock (1:12, 34 pieces), the VW T1 Samba (1:16, 98 pieces) and an owner's Vespa GS 150 (1:12, 32 pieces), each with its steps in 3D and a booklet to print. Open them in your browser, or download their plates: the kits in the gallery. Makers →
NetLogo runs. A simulation's whole run as a construct, time as its height. Educators and researchers →
Beyond objects. The same visual language works for ideas and data. Here a classic NetLogo agent-based model, Uri
Wilensky's Simple Viral Marketing, was rebuilt to run live in the browser and drawn as a construct: five hundred
people, one product, word of mouth and a little advertising. The floor is the social network, and each person rises
to the moment they adopted, so you can watch an idea spread and see who it reaches last, and why.
Open the live model to build new networks, run them tick by tick and compare a hundred runs with NetLogo's own. The model is © 2012 Uri Wilensky; this example is under CC BY-NC-SA 3.0 (see License).
How it works
A scene is data, never code: the agent says what the thing is, and Construct decides how it
looks. That split is what keeps every construct honest and in one style. In masterpiece mode the
review becomes a loop, judged by a critic that never saw the authoring.
flowchart LR
A["you ask"] --> S["the agent writes<br/>a scene"]
S --> C["Construct<br/>checks it"]
C -- "problems, with fixes" --> S
C --> B["Construct builds<br/>construct.html"]
B --> R["the agent reviews<br/>its pictures"]
R -- "masterpiece: another round" --> K["the critic compares<br/>with the best so far"]
K -- "better: keep it" --> S
K -- "not better: keep the best" --> S
R --> D["you get the best version"]
- You can see how each part is known. Press P in any construct and every part is coloured
by whether it is verified, supplied by you, inferred or decorative. Press S to see it as a solid,
the way a modelling program or a print shows it. - The check runs to zero. Floating parts, claims without evidence and details too fine to see
are reported, with fixes, before anything is built. - The critic is independent. It is a fresh model that compares each new version with the best
so far without knowing which is which. Only a better version is kept. - Masterpiece stops when it stops improving: after two rounds without a better version, after
12 rounds, or after two hours. In the author's own blind comparisons, on two subjects, there was
no visible improvement after about round 12, so more rounds mostly cost time.

The critic at work: the Sainte-Chapelle at rounds 1, 8 and 15 of a run by Claude Opus 5.5, made before masterpiece had its 12-round cap. The flèche gains its tiers, and the window tracery, buttresses and pinnacles fill in.
The whole process, with a construct improving round by round, is in
How a construct is made. What you see in a construct, and why
models never choose its colours, is in The Measured Light style.
Install
Construct runs from a copy of this repository; there is nothing to install system-wide. Clone it
and build the skills for your agent:
git clone https://github.com/rtmandreyev/construct.git
cd construct
python3 construct_hologram/package.py --out dist # builds the Claude Code and Hermes skills
Then add the skill to your agent, or use Construct directly:
| Host | How to add it |
|---|---|
| Claude Code | claude --plugin-dir dist/claude-code/construct for one session, or copy dist/claude-code/construct/skills/construct into .claude/skills/ |
| Hermes | hermes skills install rtmandreyev/construct/skills/construct, or copy dist/hermes/construct into ~/.hermes/skills/ |
| Any MCP client | Add {"mcpServers": {"construct": {"command": "python3", "args": ["/path/to/construct/construct_hologram/server.py"]}}} |
| Any OpenAI-compatible model | python3 construct_hologram/cli.py author "..." --base-url ... --model ... --key-env ... --out scene.json |
| By hand | The command line below; no model needed |
| Blender | python3 scripts/build_blender_extension.py, then Edit → Preferences → Get Extensions → Install from Disk with the zip in dist/ |
Quick start
In the Claude or ChatGPT app, no terminal. Download Construct, give the app its folder and your photos, and ask:
the Claude app's Cowork and the ChatGPT app's Codex both read the skill and build the construct for you.
Construct in the Claude or ChatGPT app →
In your agent, just ask in plain words: "a masterpiece of the Sydney Opera House", or "a masterpiece
construct of my guitar from these photos". The agent does the rest and tells you what it is doing. The
constructs at the top of this page were all made in masterpiece mode, rounds judged by a second, independent model:
ask for it for anything you care about.
To try Construct without a model, fill in a ready-made template by hand:
C=construct_hologram/cli.py
python3 $C params book --variant paperback --output book.json # fill in the facts you know
python3 $C check book.json # audit: PASS, or paths and fix hints
python3 $C build book.json --out out # out/construct.html: open it in any browser
python3 $C review book.json --out out # out/review/*.png: stills to judge it by
Once a construct is open, drag to orbit and scroll to zoom. R replays the assembly, L shows
the labels, T hides the text on its surfaces, P shows how each part is known, S shows it as a solid,
and 1–6 move between views.
Modes
A mode sets how much effort goes into a construct. Say one in your request, or say nothing and
the skill picks one and tells you why before it starts.
| Mode | What it does | When it stops | Rough cost | Use it for |
|---|---|---|---|---|
| fast | One pass with self-review | About 10 minutes (30 for a richer subject) | Cents with DeepSeek V4.1 Flash | Generic subjects, simple objects, quick requests |
| masterpiece | Rounds judged by an independent critic, each version compared with the best so far | Two rounds without a win, 12 rounds, or 2 hours of active work | Up to 2 hours of frontier-model tokens | A named car, landmark or building whose likeness matters |
| timeboxed | Masterpiece in 2 hours in all: the critic's time counts too | Two rounds without a win, 12 rounds, or 2 hours in all | Up to 2 hours, fewer rounds when the critic is slow | When you want masterpiece done within two hours |
| unbounded | The same rounds, with no cap and no time limit | Only after two rounds without a win | Many rounds and hours, a high token cost | Only when you ask for it by name |
Masterpiece's two hours count only the agent's own work; the critic's turns come on top, so a
run with a slow critic can take three hours or more. timeboxed stops at two hours in all. The
skill never picks timeboxed or unbounded on its own: the critic finds an improvement almost every round,
so it can run for hours. Every round is reported, so you can stop it whenever you like.
Models
Any capable model can make a construct, but some subjects need a stronger one. From the
evaluation runs:
- Named subjects in masterpiece mode (a car model, a landmark): a Sol or Opus class model
(tested: GPT-6.1 Sol, Claude Opus 5.5). A smaller model given such a subject says so and
recommends them. - Simpler objects in fast mode: DeepSeek V4.1 Flash does as well as those on objects such as a
tape deck, a watch or a camera. - Small models (tested: MiniMax M3.1 Flash, Thinking Machines Inkling, NVIDIA Nemotron 3.5
Super VL) are not recommended: in about half of their runs they did not save a scene, and they
made scale errors.
Requirements
Construct is deliberately small. You need:
- Python 3.10 or newer. Nothing else to install: no packages, no virtual environment.
- For review stills, a Chromium-family browser you already have (Chrome, Chromium, Edge, Brave).
- For video, ffmpeg.
- For the Blender add-on, Blender 4.2 or newer (the film of a run: checked in Blender 5.2); for the
NetLogo bridge, NetLogo 6 or 7 (the extension: NetLogo 7, and NetLogo 3D 7). - Tested on macOS; review capture on Linux and Windows is untested.
Documentation
| If you want to… | read |
|---|---|
| see everything new in 1.1, with examples | What's new in 1.1 |
| see how a construct is made, step by step | How a construct is made |
| know what you are looking at, and the keys | The Measured Light style |
| run it every way, from a first construct by hand to Claude Code and Hermes | Using Construct |
| fix something that went wrong | Troubleshooting |
| start from a ready-made template (a book, a CD, a guitar, a car) | Archetypes |
| make mountains, routes and planets from real elevation data | Terrain |
| turn a construct into a film with music | Film mode |
| export a 3D model, plain or finished | 3D export and the Blender add-on |
| print it, or make it a model kit | 3D printing and kits |
| open it in CAD | FreeCAD and STEP |
| put it in a game engine | Godot |
| draw a NetLogo model's run | The NetLogo bridge and the extension |
| teach with it, or show it in a museum | In a classroom and a museum |
| compare models, or score your own | Evaluation |
| build on it or test the code | Development and the scene contract |
| write your own adapter (a format, an engine, a machine) | Adapters |
| know where the method comes from | About |
| see what changed | CHANGELOG.md and the 1.1.0 and 1.0.0 release notes |
The full index is in docs/README.md.
Contributing
See CONTRIBUTING.md. Run the tests withpython3 -m unittest discover -s construct_hologram -t . -p 'test_*.py'. Security reports:
SECURITY.md.
License
Apache-2.0 — Copyright (c) 2026 Artyom Andreyev (see NOTICE); versions up to 0.3.0 were MIT. The NetLogo example folders
(examples/netlogo-*: viral marketing, flocking,
wolf sheep, fire, fireflies,
virus on a network and virus compare) derive from Uri
Wilensky's NetLogo models and are under CC BY-NC-SA 3.0 instead (see each LICENSE). The Blender
add-on is under GPL-3.0-or-later, as Blender's extensions platform requires; what
you make with it is yours.
Construct's working method is inspired by Anatomy's
truth-first construction (MIT); it shares the method, not code. Product, vehicle and place names
in the examples belong to their owners: each example is an independent reconstruction from
public references, not an official model. See NOTICE.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found

















