← Streetlight back to all nodes
node · 2026-05-27 teach-me documentation

MIDI Harness

Active project · play a couple chords, have an interesting discussion about music. Code lives in its own repo: ~/Documents/midi-harness.

The MIDI harness is an example of what I want it to be: a really simple system prompt and a hook that captures MIDI events from a JSON-L and then an HTML, so that we're basically just trying to give Claude the power to let me play a couple chords and then have an interesting discussion about music.
Jake, the north star · 2026-06-09
MIDI keyboardWilliams Legato III
Go listenerforever-running
events.jsonlappend-only
conversationabout music
Claude46-word CLAUDE.md
hook on send<played> block → erase file
↻ play more chords — the emptied log IS the next turn's boundary
The one idea: the hook deletes events.jsonl after injecting it — so "since last message" needs no offsets, no time windows, no second clock, no audio.
Where~/Documents/midi-harness — separate repo, own .claude/, NOT this vault
What's builtcmd/listener + cmd/hook (Go, stdlib, ~0ms hook startup) + 46-word system prompt
Real use~10 practice sessions logged (2026-05-30 → 2026-06-01) in session-drain.md
Uncommitted driftCLAUDE.md edited; future-ideas.md + session-drain.md untracked; repo has 1 commit
Parked on purposetiming/rhythm capture (future-ideas.md) — harmony-read gets solid first
The one next thing

Commit the drift, then run a fresh practice session to keep calibrating the chord-read loop.

Why fresh: you can't tune a system prompt from inside the session it governs (see [[system-prompt-self-edit]]) — the edited CLAUDE.md only takes effect next session.

midi-coach
abandoned predecessor · ~/Documents/midi-coach · github.com/jakesimonds/MCP-Dash-Demo
midi-harness-rebuild
the 2026-05-29 strip-back
midi-harness
this node + the live repo

Both predecessor nodes archived 2026-06-09 (archive/midi-coach, archive/midi-harness-rebuild). This directory also still holds a dormant earlier experiment: a Rust synth + Python listener — see midi-harness.md.