kookaburra-export-presetslisted
Install: claude install-skill michael-palmes/kookaburra-cut
# kookaburra-export-presets
How Kookaburra Cut's export presets work and how to drive them from the terminal (v11 · M7–M8).
## The architecture in one paragraph
A preset is a **data-only JSON document**. The frontend resolves it into a fully-resolved
`EncodeSpec` and Rust builds the ffmpeg argv from that spec only. **THE FROZEN-PATH
RULE:** an export carrying NO spec runs today's byte-pinned legacy argv (`libx264
-preset medium -crf 18`, native res, 60 fps) — presets are a separate argv family that
the standing baselines and `Verify ×2` never see. The modal's "Kookaburra Cut Standard" row and
any `kookaburra:run` call without `--preset`/`--encode-json` take the frozen path.
- Bundled presets: `src/export/presets/*.json` + the lineup in `src/export/presetRegistry.ts`
(explicit imports; a structure pin asserts every doc parses — extend the test when adding one).
- User presets: `~/Kookaburra Cut/export-presets/<slug>.json`, listed as `ws:<slug>`
(`export-presets` is a reserved project slug). Write them directly as files or via the
app's Save-as-preset.
- Output naming: preset/custom exports write `<project>-<aspect>-<preset-id>.<ext>`
(`-custom` for ad-hoc specs); the frozen path keeps the plain `<project>-<aspect>.<ext>`.
## The preset document schema (version 1)
| Field | Type | Notes |
|---|---|---|
| `version` | `1` | required; newer versions are refused, never mangled |
| `id` / `name` / `description` | string | description = ONE Australian-English sentence f