From prompt to product
Every new product in the Cockpit becomes a product/v1 YAML declaration.
There are three ways to get one — and no way to skip the validation gates.
Route 1 — Create from prompt (the wizard)
Section titled “Route 1 — Create from prompt (the wizard)”Five stages. Each is a gate: the next button unlocks only when the current stage holds.
1 · Intent
Section titled “1 · Intent”Describe the part in one sentence:
under-desk cable clip for a 20mm bundle, side entry, two M4 screws
Detect intent returns candidate archetypes with a confidence score and a source tag:
- LLM ON — the model picks archetype and parameters, but only from a catalog digest it is shown; a hallucinated archetype id falls back to the deterministic matcher. The LLM never emits geometry — only a pick plus parameter guesses.
- LLM OFF — deterministic token scoring against archetype ids, object classes, descriptions and features, with a bilingual RU/EN synonym table (клипса → clip, кабель → cable) and automatic extraction of millimeter dimensions and screw sizes from your text.
Pick a candidate (use 〈archetype_id〉) — parameters the intent guessed are pre-filled. Prompts are matched against real archetypes; you cannot prompt an archetype into existence — that is what packs are for.
2 · Contract
Section titled “2 · Contract”Before any numbers, the product family’s contract: must have, must not have, forbidden forms, invariants. This is what validation will hold the geometry to. Accept it to proceed.
3 · Capability — honesty before geometry
Section titled “3 · Capability — honesty before geometry”The wizard live-validates the draft and splits your requested features into supported (✓) and unsupported (✗ missing — not buildable in strict mode). An unsupported feature blocks the Parameters button — strict mode refuses to quietly build less than you asked for.
4 · Parameters — live validated, no CAD
Section titled “4 · Parameters — live validated, no CAD”Parameters are grouped by role — functional, assembly, structural, manufacturing, aesthetic, style — each with its resolved value, its resolved min…max bounds, a marker for exposed parameters and a lock on safety-locked ones.
Every keystroke re-validates the whole product (350 ms debounce) through the
same CAD-free pipeline as forge validate: units, expr(...) formulas,
clamps in declaration order. Bounds update live — widen bundle_d and watch
mouth_gap’s ceiling move, because the archetype declares
max: expr(bundle_d * 0.7).
5 · Validate Form → Forge
Section titled “5 · Validate Form → Forge”The exact section profile renders from the Form IR with every form check
listed. Only when the form is green does ⚒ Forge (build STL) hand it to
the CAD compiler (the button is honestly disabled when CAD OFF). The build
runs as a job with a live log and opens in the
Workspace.
Route 2 — Create from YAML
Section titled “Route 2 — Create from YAML”Paste any product or assembly declaration → Validate & open workspace. This is the only free-text YAML entry: inside the workspace parameters are read-only and change through patches, so every change replays the same validation gauntlet. The grammar itself: The declaration language.
Route 3 — From the catalog
Section titled “Route 3 — From the catalog”Catalog cards open an archetype straight into the wizard (skipping intent detection), and every shipped example opens into the workspace as a known-good declaration to study or edit. Browse the same data on this site: Registry → Archetypes — each page carries a minimal ready-to-paste declaration.
Multi-part products
Section titled “Multi-part products”Everything above builds a single part. For a product made of several parts that must fit — a box and its lid, a bracket and its cup — describe the whole thing in one prompt on the Assemble screen: Composing assemblies.