Install
openclaw skills install @voronindenis5/music-practice-buddyAnalyze instrumental practice recordings to detect timing accuracy, pitch stability, tempo consistency, and dynamic range. Generates practice reports with targeted exercise recommendations. Use when practicing an instrument and wanting objective feedback on performance.
openclaw skills install @voronindenis5/music-practice-buddyMusic Practice Buddy listens to your practice recordings and tells you what you can't hear yourself: timing inconsistencies, pitch drift, tempo fluctuations, and dynamic imbalances. It provides objective, measurable feedback that accelerates the practice loop — record, analyze, adjust, improve.
Most musicians practice for years without knowing exactly what to fix. They sound "off" but can't pinpoint why. This tool turns vague feelings into specific, actionable data: "Your tempo drifted 8% faster in measures 17–24" or "Your pitch dropped 15 cents on high notes."
# Analyze a practice recording
python scripts/practice_buddy.py analyze recording.wav
# Analyze with a target BPM for comparison
python scripts/practice_buddy.py analyze recording.wav --target-bpm 120
# Compare two recordings to track improvement
python scripts/practice_buddy.py compare week1.wav week2.wav
# Generate a practice plan based on analysis
python scripts/practice_buddy.py plan recording.wav --instrument guitar --minutes 30
# View practice history and improvement trends
python scripts/practice_buddy.py history
Measures how consistent your note timing is:
Measures how steady your pitch is:
Measures how steady your overall tempo is:
Measures the difference between loudest and quietest moments:
Record yourself practicing a piece, scale, or exercise (WAV format).
python scripts/practice_buddy.py analyze practice_session.wav
The report highlights your weakest area with specific data.
python scripts/practice_buddy.py plan practice_session.wav --instrument guitar --minutes 20
python scripts/practice_buddy.py compare before.wav after.wav
╔══════════════════════════════════════════════╗
║ 🎵 PRACTICE ANALYSIS REPORT ║
╠══════════════════════════════════════════════╣
║ Duration: 2:34 | Sample Rate: 44100 Hz ║
╠══════════════════════════════════════════════╣
║ 📊 SCORES ║
║ Timing: 72/100 ████░░░░░░ Developing ║
║ Pitch: 85/100 ████████░░ Solid ║
║ Tempo: 68/100 ████░░░░░░ Developing ║
║ Dynamics: 78/100 ██████░░░░ Solid ║
║ ──────────────────────────────────── ║
║ OVERALL: 76/100 Solid with gaps ║
╠══════════════════════════════════════════════╣
║ 📝 ANALYSIS ║
║ • Detected BPM: ~118 (target: 120) ║
║ • Tempo drifted +5% in the second half ║
║ • 3 timing gaps > 50ms detected ║
║ • Pitch stable with minor dips on high notes║
╠══════════════════════════════════════════════╣
║ 🎯 RECOMMENDED FOCUS: Timing ║
║ → Practice with a metronome at 60% speed ║
║ → Focus on transitions between sections ║
╚══════════════════════════════════════════════╝
practice_buddy.py analyze recording.wav produces a report with 4 scorespractice_buddy.py analyze recording.wav --target-bpm 120 compares to targetpractice_buddy.py compare before.wav after.wav shows score differencespractice_buddy.py plan recording.wav --instrument piano --minutes 30 generates exercisespractice_buddy.py history shows logged sessionsreferences/audio-concepts.md — how onset detection, pitch tracking, and tempo estimation workreferences/practice-methodology.md — evidence-based practice techniques for each weakness type