Skip to content
Music · Desktop app

Piano

A desktop piano built to be driven from Claude Code. Its plugin brings an MCP server that writes, checks and keeps scores, then opens the app to play them: the notes fall onto the keyboard, and practice mode waits for you on MIDI or the computer keys, loops a bar and says how each one went.

Public numbers

GitHub stars
0
Latest release
v0.1.0
released 2026-09-23
Release downloads
0
v0.1.0

Public numbers from GitHub and PyPI, as of 2026-10-20. The site is rebuilt daily.

Install

Claude Code plugin
/plugin marketplace add alegauss/alegauss.github.io
/plugin install piano@alegauss
From source
git clone https://github.com/alegauss/piano.git
cd piano
npm ci
npm run dev

Download the latest release →

What comes next

From the product's own docs/ROADMAP.md at 51ba9d7.

Block A

Foundation: Electron, TypeScript, React and shadcn

  • DesignedAn unsigned build trips SmartScreen and Gatekeeper, so a new user meets a warning before the app

Recently shipped

All 110 entries →
  1. Piano has no public page, README or LICENSE, so nobody finds it and the MIT claim points at no file

    Piano has a public site at /piano/ on freewilly's model, its facts generated from the repo, deployed with the sample pack, plus LICENSE, README and CONTRIBUTING (design recorded in site/README.md).

    PI111 · 55a9c5c
  2. no installer survives the release workflow, so v0.1.0 cannot be published

    All three installers now package, install and pass the association check in CI: Linux names its executable, Windows lets go of .piano, macOS reads split claims.

    PI110 · 6e4672f
  3. A chosen option is told from the ones beside it by the weight of its text, which reads as no difference

    A chosen option carries the accent and is measured against its neighbours in both themes, which also caught the light accent failing its own text contrast.

    PI109 · 595940f
  4. Open recent still offers a deleted piece, and the system's own list still offers one at the path it has moved from

    A deleted piece leaves Open recent with it, and the system's own list is rebuilt from ours whenever ours changes, so neither offers a file that has gone.

    PI108 · dafae33
  5. Deleting or retitling from chat skips the bin and leaves the practice records behind, where the panel does neither

    With no window a delete says it cannot be undone before doing it, and a correction leaves a note the app applies to the records next launch.

    PI107 · 047a05c
  6. Open recent names a piece by the title it had when it was opened, so a corrected one is listed under its old name

    A corrected piece is offered from Open recent under what it is called now, at the path it moved to, without waiting to be opened again.

    PI106 · 4da6187
  7. Tidying a library that grew by the batch means opening, confirming and closing one row at a time

    Rows can be picked in the panel and then deleted or tagged together, with one question asked of the whole set and one sentence about how it went.

    PI105 · 27ca9bc
  8. Claude Code can write a score into the library but never remove one, nor correct what one says without rewriting it

    correct_score changes what a score says about itself and delete_score takes one out, both through the library module the window writes with.

    PI104 · a9dcd39