← all systems
beta 3/5 since Sep 2025

The Woodshed

An AI curriculum, coach, and practice log for jazz trumpet.

Current streak
Sessions logged
Total hours
Watch the walkthrough →
  • Claude API
  • single-file web app (index.html + charts.js)
  • ABCJS notation rendering
  • MIDI / Web-Audio backing-band engine
  • Supabase (heartbeat) [planned]
02

The Pitch

Problem. For me the skill is jazz trumpet. The hard part was never the horn; it’s the system around it: knowing what to work on today, structuring a session so it’s deliberate instead of noodling, and showing up tomorrow. Most people quit not because they can’t improve but because nothing tells them what to do next and nothing notices when they stop.

System. The Woodshed is that missing system. An AI curriculum-designer decides what to work on and why; a session-generator turns that into a concrete practice block — exercises, tunes, the backing band to play against; a coach layer frames each block; and an accountability layer logs what actually happened and reviews the day. The keystone currently being built is per-block logging plus a Day Review — the piece that captures real practice data and feeds the daily loop, so the system learns from what I actually did, not what it planned.

Payoff. Practice becomes a loop: show up, the session is already designed, play, log, get a review, and tomorrow’s session is shaped by today’s. The streak counter and session log make consistency visible.

03

The Loops

Cadence What happens Automation
daily Session generator builds today's practice block (exercises, tunes, backing band) full
daily Per-block logging + Day Review — what was practiced, how it went (in build — A1, the keystone) full
daily "Today's 6" — the day's priority items surfaced and grouped full
weekly Curriculum review — adjust focus from logged practice data human-approve
per session Streak / hours / sessions updated -> heartbeat (emitter planned) full
04

AI Architecture

Four named roles, layered from “what to work on” down to “did you actually do it”:

  • curriculum-designer
  • session-generator
  • coach
  • accountability
  • Curriculum-designer. The long-horizon planner. Decides what skills and concepts to develop and in what order.
  • Session-generator. Turns today’s curriculum target into a concrete, playable session: long tones, technical work, real licks over a ii-V-I backing loop, tunes to solo on with the band.
  • Coach. Frames each block — the intent behind it, what “good” sounds like — so a session is deliberate practice, not just reps.
  • Accountability. Logs what actually happened (per-block), runs the Day Review, and keeps the streak. This layer is currently being built out, because without logged actuals the curriculum-designer has nothing to adapt to.

Where the human gate sits. Session generation, logging, and the Day Review run automatically — the system can plan and record on its own. The weekly curriculum review is human-approve: the system proposes a shift in focus from the logged data, and I decide whether to take it. Day-to-day is automated; the direction of the training stays a human call.

05

The Flowchart

flowchart TD
  CUR["Curriculum-designer<br/>(what to work on)"] --> GEN["Session-generator<br/>(today's block)"]
  GEN --> COACH["Coach<br/>(frames the block)"]
  COACH --> PLAY["Practice session<br/>play against backing band"]
  PLAY --> LOG["Per-block logging<br/>(A1 — keystone)"]
  LOG --> REVIEW["Day Review"]
  REVIEW --> METRICS["Streak · sessions · hours"]
  METRICS --> HEART[("Heartbeat")]
  REVIEW --> WEEK["Weekly curriculum review"]
  WEEK --> GATE{"Human<br/>approve?"}
  GATE -->|approved| CUR
  GATE -->|rejected| WEEK
  REVIEW -.->|export bridge| MC["mission-control.json<br/>→ morning loop"]
Mermaid · system flowchart (interactive pan/zoom upgrade lands in v2)
06

Challenges & Lessons

  • The logging layer is the keystone, and I under-built it first. It’s tempting to build the fun parts (the session generator, the MIDI/Web-Audio backing band, the ABCJS notation) and treat logging as plumbing. But without per-block logging and a Day Review (the A1 work in progress), the curriculum-designer has no actuals to learn from and the system can’t adapt. The data-capture loop is the foundation, not a feature.
  • Generated content has to be musically real. A session generator that emits plausible-looking but musically wrong exercises teaches bad habits. The biggest content lift in the rebuild is real licks and a real ii-V-I backing loop, research-backed rather than synthesized filler.
  • One dependency was blocking several others. The export bridge that feeds the morning loop (mission-control.json → morning task) is blocked on the logging work: you can’t export practice data you aren’t capturing yet. Sequencing the keystone first unblocks the rest.
  • What I’d redo. Ship the logging + Day Review loop before the “solo with the band” polish. The polish is what brings people back; the logging loop is what makes the system work.
07

Live

video Watch the walkthrough

60–90s screen capture stands in until a live surface exists.

target: /projects/the-woodshed#live live surface wires up post-MVP (P2 / P4)

What you see: the actual app, running in demo mode — a read-only sample student with realistic practice history. A visitor can open a generated practice session, see the curriculum target and the coach’s framing, view the notation with a playable backing band, and browse the sample log: streak counter, sessions logged, hours, pieces and concepts worked.

What you do: click through a real session end to end — see what the system told the student to practice today, why, and what got logged. The demo is the read-only sample account; no real user data is exposed in the sandbox.

The app is mid-rebuild (logging keystone in progress), so demo mode reflects the current surface, not the roadmap. The gating task before this goes live is public hosting + demo mode; until then this section ships as a short walkthrough video.

08

Changelog & Metrics

Recent activity (newest first — final entries come from CHANGELOG.md)

  • 2026-06-13 — Fix plan + rebuild spec written (WOODSHED-FIX-PLAN, WOODSHED-REBUILD-SPEC).
  • 2026-06 — A1 in build: per-block logging + Day Review (the keystone that fuels the morning loop).
  • 2026-06 — Next up: “solo with the band” rebuild (A5) and real licks + ii-V-I backing loop (A4).
  • 2025-09 — Woodshed practice app online; first sessions logged.

Metrics this page surfaces

streak_days heartbeat
Current streak
sessions_total heartbeat
Sessions logged
hours_total heartbeat
Total hours

(Pieces / concepts mastered — surface once per-block logging is live.)

09

Roadmap

  • Public hosting + demo mode — the gating task that makes “Use it live” real (read-only sample student, no real data).
  • A1: per-block logging + Day Review — the keystone; everything adaptive depends on it.
  • A5: “solo with the band” rebuild — highest daily value.
  • A4: real licks + ii-V-I backing loop — biggest content lift, research-backed musical correctness.
  • Tone Analyzer — record long tones → AI scores pitch/tone stability over time → improvement charts.
  • Export bridge → morning loop — once logging lands, feed practice data into the Morning Chief of Staff brief.