Music you can inspect, modify, and rebuild.
This repository is the public sample corpus for ScoreBench, the agent-native workbench for ScoreKit. It is three things at once:
- a gallery of finished, playable work;
- a set of real ScoreBench projects people can open and change;
- a reproducible capability corpus for catching rendering regressions.
Every directory under samples/ is self-contained. Open one as a
ScoreBench project, edit score.yaml, and rebuild it with ScoreKit.
| Project | Capability proof |
|---|---|
| Exile in the Dunes | Long-form narrative arc, motif dialogue, dynamic contour |
| Forest Runner | Seamless loop, rhythmic layering, seeded humanization |
| Quiet Interface | Restrained arrangement, low-distraction loop, sparse motif |
samples/<id>/
├── sample.json # editorial metadata and machine-checkable expectations
├── score.yaml # the real ScoreKit scene; ScoreBench opens this
├── bench.json # the renderer selection used by ScoreBench
├── README.md # creative and technical notes
├── cover.svg # source artwork
└── out/
├── score.ogg
├── score.meta.json
└── render.json # renderer/compiler/input/output provenance receipt
sample.json deliberately does not repeat tempo, key, duration, tracks, or
sample rate. Those values are generated into catalog.json
from score.yaml and ScoreKit's machine-readable meta.json. The display
schema lives at schemas/sample.schema.json.
render.json binds each checked-in audio file to the renderer, ScoreKit
version, score hash, and audio hash used to produce it; a render made outside
the repository pipeline is detected as stale rather than mislabelled.
The metadata file uses JSON rather than YAML because ScoreBench currently
discovers root and one-level *.yaml files as scenes. A display-only YAML file
would appear as a broken score in the app.
Requirements: Node.js 22+, ScoreKit 0.2.3+, and a working renderer reported by
scorekit doctor --json.
npm install
make validate
make render SAMPLE=forest-runner
make site
make preview
make allThe tooling invokes only ScoreKit's machine contract: exit codes, JSON errors,
and atomically written meta.json. It never parses human-oriented success
text and never renders or post-processes audio in-process.
The Astro site is completely static. Build preparation copies the selected source assets into ignored site directories, so audio and artwork have one checked-in source. Full-resolution masters and future spectrum videos belong in GitHub Releases or object storage; the repository keeps compact OGG gallery renders.
Spectrum video is intentionally phase two. Its catalog field is optional and will consume ScoreBench's existing WebAudio + MediaRecorder visualizer export, not a second visualization renderer.
Repository code and score sources are MIT licensed. Rendered audio is licensed
under CC BY 4.0. See AUDIO-LICENSE.md for attribution.
Brand assets belonging to ScoreBench or talkincode are not included.