Sno Station
Sno Station은 AI 에이전트를 하나의 팀으로 묶는 오픈소스 워크스테이션으로, 로컬 머신에서 에이전트 협업을 가능하게 함
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Turn any song into a two-hand piano arrangement, played as falling notes. A Claude Code plugin that runs on your machine.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Turn any song into a two-hand piano arrangement, played as falling notes.
pianoize is a Claude Code plugin and a Python CLI. Give it a YouTube link or an audio file: it transcribes the song on your own machine, Claude writes a piano arrangement for two hands bar by bar, and pianoize builds it into MIDI, checks it, and renders it as audio and as a Synthesia-style falling-notes video. The recording never leaves your computer.
Open the viewer · Watch on YouTube · Quick start · How it works · Docs
Add the plugin to Claude Code:
/plugin marketplace add zeikar/pianoize
/plugin install pianoize@pianoize
Then ask for each step in your own words:
Prepare the song. prepare this song: https://youtu.be/… The prepare-song skill downloads the audio, installs the models once (about 1.6 GB of weights, into ~/.cache), transcribes the song, takes its melody and generates its piano cover. On an Apple-silicon Mac the transcription takes about twice the song's length.
Arrange it. arrange this song for two hands For a sung song the arrange-vocal skill writes from the band's transcription and the melody, a full right hand over a pianist's left hand; for an instrumental, such as game or film music, arrange-transcription writes from the band's transcription alone; arrange-cover writes from the cover and the melody when you ask for it. Each one renders arranged.wav for you to listen to, then revises the bars you name until you approve.
Watch it. Drop arranged.json and arranged.wav from the song's folder on zeikar.dev/pianoize.
Render the video, if you want an MP4. From a clone of this repository, with a cards file for the title; the thumbnail lands beside the MP4. The make-video skill does this step for you and writes the upload's title, description and tags in English and Korean:
git clone https://github.com/zeikar/pianoize && cd pianoize
(cd viewer && npm ci)
uv run pianoize render-video <song>/arranged.mid --cards cards.txt -o video.mp4
brew install ffmpeg).PIANOIZE_SOUNDFONT, for the audio. pianoize uses Salamander Grand Piano V3.pianoize is developed on an Apple-silicon Mac.
prepare (transcription, melody, cover) → arrange (Claude writes the score) → build and check (two-hand MIDI) → play (audio, the viewer, an MP4)
work/. pianoize turns the score into MIDI on the song's tempo grid, every note at one velocity, and checks that it is playable, unless it is a full arrangement written for listening, and that it fits the harmony (decision).Every step runs, from a link to a video, and the first full-song arrangement and video are approved. The milestones the docs refer to:
| milestone | what it built | commands |
|---|---|---|
| M1 | a trial of the audio-to-piano models, scored against the original's harmony (scripts) | evaluate, render, melody-clashes |
| M2 | polishing the cover, with the polish-cover skill | harmony-evidence, refine-timeline, find-candidates, apply-corrections |
| M3 | an arrangement an agent writes, with the arranging skills | regrid, build-grid, dump-bars, build-arrangement, check-arrangement |
| M4 | the falling-notes viewer and video | export-arrangement, preview-video, render-video |
song preparation, with the prepare-song skill | setup, prepare |
prepare fits a steady tempo grid to the transcription, and prepares instrumentals, which have no melody unless --melody-track names one.
pianoize keeps to these, and so must every change to it. The reasons are in docs/decisions.md.
work/.~/.cache/pianoize, with Hugging Face weights in ~/.cache/huggingface) by pianoize setup, with their terms shown.| page | what is in it |
|---|---|
| docs/preparing.md | pianoize setup and prepare: what they install, where, and what they write |
| docs/arranging.md | the score format, the arranging commands and what the check covers |
| docs/rendering.md | the arrangement JSON, the cards file, the viewer and the video commands |
| docs/polishing.md | the polishing commands, the candidate and correction-spec formats, the refined timeline |
| docs/evaluation.md | scoring a result against checkpoints, its options and environment variables |
| docs/decisions.md | every design decision in force, with its reason, and the license records |
Requires uv. The viewer also needs Node.js; render-video needs Node, the installed Google Chrome, ffmpeg and FluidSynth. Scoring needs chordotomy, installed separately.
uv sync --extra dev
uv run pianoize --version
uv run pytest
uv run ruff check . && uv run ruff format --check .
(cd viewer && npm ci && npm test)
The CLI runs without the plugin too:
uv run pianoize prepare song.mp3 -o work/song
uv run pianoize render song.mid -o song.wav
uv run pianoize evaluate --original original.chords.json --checkpoints checkpoints.json \
--out-dir work/trial name=result.mid
uv run pianoize render-video arranged.mid --cards cards.txt -o video.mp4
src/pianoize/: the arrangement engine, in Pythonviewer/: the falling-notes page, its capture script and the script that draws its link preview, plain HTML, CSS and ES modules, with playwright-core installed by npm ci in viewer/; the page is also on GitHub Pages, where it plays an arrangement JSON with its audio, both read in the browser (docs/rendering.md)experiments/: M1 model trial scripts; the scripts and their environments lived in work/m1/; the tsumugi install moved to the pianoize homedocs/: the pages listed under Documentationskills/: the Claude Code skills; prepare-song makes a song's inputs, polish-cover drives the M2 polishing commands, arrange-vocal the M3 arranging commands from the transcription and the melody, the default for a sung song, arrange-transcription the same from the transcription alone, the default for an instrumental, arrange-cover the same from the cover, and make-video renders the video and writes its uploadarranging/: the rule files the arranging skills share: reading the dump, the common rules, a file per right and left hand, a front end per input, the arranger's workflow and the main session's stepsThe engine and the viewer meet at a documented arrangement JSON: the notes and the hand playing each (docs/rendering.md).
MIT. The models pianoize runs are installed separately and keep their own terms (docs/decisions.md). tsumugi's code and weights are MIT. tsumugi-piano-cover's weights are CC BY-NC 4.0, so a cover made with them, and an arrangement made from that cover, is treated as non-commercial; an arrangement from the transcription alone owes the cover nothing.
agents/: the Claude Code subagent arranger, which the arranging skills dispatch to write the score and loop its build and check.claude-plugin/: the manifests that make the repository a Claude Code plugin and its own marketplace.github/workflows/: pages.yml, which publishes the viewer to GitHub Pageswork/: recordings and everything made from them, gitignored