Public-ready: JSON tune specs, first-class loop API, licence, AGENTS.md

- MidiFile.set_loop(): one call writes LOOP_START/END, RPR LOOP
  START/END (Reaper) and LoopBegin/End markers - every engine finds
  its dialect; reader now parses markers and the smoke test asserts
  the round-trip
- tools/make_tune.py: declarative JSON spec -> fully arranged MIDI
  with style presets (dos_adventure, n64_ambient, chiptune_racing);
  the agent-friendly front door, no Python required
- tunes/specs/: demo tune 04 'Tea Break at the Terminal' (Am/112,
  loop bars 4-20) generated entirely from JSON
- AGENTS.md: spec schema, score grammar, verification loop, looping
  conventions for game BGM
- MIT LICENSE; history audited clean of credentials
This commit is contained in:
Hermes Agent committed 2026-10-17 06:59:04 +00:00
1 parent c3cd91d04f
commit 633eb92352
15 files changed
+387 -9

No files matched your search

+1 -2
View File
@@ -104,8 +104,7 @@ def build():
harp.note(bar(23), N(p), TPQ * 6, 40)
mf.add_track(lead); mf.add_track(pad); mf.add_track(harp); mf.add_track(bass)
lead.marker(bar(4), "LOOP_START")
lead.marker(bar(20), "LOOP_END")
mf.set_loop(bar(4), bar(20))
return mf